diff --git a/generation_config.yaml b/generation_config.yaml index 6263d50d5910..bd70f370b6b3 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,4 +1,4 @@ -googleapis_commitish: 0ff3c706a5e0964c6430529c406208f2ff57cf65 +googleapis_commitish: 0db4dc67dd805d20294c6dc34068c37f546d71da libraries_bom_version: 26.83.0 is_monorepo: true libraries: diff --git a/java-accessapproval/README.md b/java-accessapproval/README.md index eb58fe6f1660..5e24deb07ecb 100644 --- a/java-accessapproval/README.md +++ b/java-accessapproval/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-accessapproval - 2.93.0 + 2.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-accessapproval:2.93.0' +implementation 'com.google.cloud:google-cloud-accessapproval:2.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-accessapproval" % "2.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-accessapproval" % "2.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-accessapproval/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-accessapproval.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-accessapproval/2.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-accessapproval/2.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-accesscontextmanager/README.md b/java-accesscontextmanager/README.md index 38a11edacf4e..253b1dacae43 100644 --- a/java-accesscontextmanager/README.md +++ b/java-accesscontextmanager/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-identity-accesscontextmanager - 1.93.0 + 1.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-identity-accesscontextmanager:1.93.0' +implementation 'com.google.cloud:google-identity-accesscontextmanager:1.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-identity-accesscontextmanager" % "1.93.0" +libraryDependencies += "com.google.cloud" % "google-identity-accesscontextmanager" % "1.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-identity-accesscontextmanager/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-identity-accesscontextmanager.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-identity-accesscontextmanager/1.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-identity-accesscontextmanager/1.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-admanager/README.md b/java-admanager/README.md index 3b0cbec103e4..80b8ae960384 100644 --- a/java-admanager/README.md +++ b/java-admanager/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.api-ads ad-manager - 0.51.0 + 0.52.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.api-ads:ad-manager:0.51.0' +implementation 'com.google.api-ads:ad-manager:0.52.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.api-ads" % "ad-manager" % "0.51.0" +libraryDependencies += "com.google.api-ads" % "ad-manager" % "0.52.0" ``` ## Authentication @@ -158,7 +158,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/ad-manager/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.api-ads/ad-manager.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.api-ads/ad-manager/0.51.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.api-ads/ad-manager/0.52.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-advisorynotifications/README.md b/java-advisorynotifications/README.md index bf92fa50784d..ba8cd238a012 100644 --- a/java-advisorynotifications/README.md +++ b/java-advisorynotifications/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-advisorynotifications - 0.81.0 + 0.82.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-advisorynotifications:0.81.0' +implementation 'com.google.cloud:google-cloud-advisorynotifications:0.82.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-advisorynotifications" % "0.81.0" +libraryDependencies += "com.google.cloud" % "google-cloud-advisorynotifications" % "0.82.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-advisorynotifications/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-advisorynotifications.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-advisorynotifications/0.81.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-advisorynotifications/0.82.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-aiplatform/README.md b/java-aiplatform/README.md index dd371907d1dd..45b9dca8206b 100644 --- a/java-aiplatform/README.md +++ b/java-aiplatform/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-aiplatform - 3.93.0 + 3.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-aiplatform:3.93.0' +implementation 'com.google.cloud:google-cloud-aiplatform:3.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-aiplatform" % "3.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-aiplatform" % "3.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-aiplatform/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-aiplatform.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-aiplatform/3.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-aiplatform/3.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-alloydb-connectors/README.md b/java-alloydb-connectors/README.md index 74e1bbfd7221..a52d83bf2197 100644 --- a/java-alloydb-connectors/README.md +++ b/java-alloydb-connectors/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-alloydb-connectors - 0.70.0 + 0.71.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-alloydb-connectors:0.70.0' +implementation 'com.google.cloud:google-cloud-alloydb-connectors:0.71.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-alloydb-connectors" % "0.70.0" +libraryDependencies += "com.google.cloud" % "google-cloud-alloydb-connectors" % "0.71.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-alloydb-connectors/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-alloydb-connectors.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-alloydb-connectors/0.70.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-alloydb-connectors/0.71.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-alloydb/README.md b/java-alloydb/README.md index 17bfc6fe1cb2..58118ec11f10 100644 --- a/java-alloydb/README.md +++ b/java-alloydb/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-alloydb - 0.81.0 + 0.82.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-alloydb:0.81.0' +implementation 'com.google.cloud:google-cloud-alloydb:0.82.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-alloydb" % "0.81.0" +libraryDependencies += "com.google.cloud" % "google-cloud-alloydb" % "0.82.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-alloydb/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-alloydb.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-alloydb/0.81.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-alloydb/0.82.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-analytics-admin/README.md b/java-analytics-admin/README.md index ffa1619f33e7..19db8484ccb7 100644 --- a/java-analytics-admin/README.md +++ b/java-analytics-admin/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.analytics google-analytics-admin - 0.102.0 + 0.103.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.analytics:google-analytics-admin:0.102.0' +implementation 'com.google.analytics:google-analytics-admin:0.103.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.analytics" % "google-analytics-admin" % "0.102.0" +libraryDependencies += "com.google.analytics" % "google-analytics-admin" % "0.103.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-analytics-admin/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.analytics/google-analytics-admin.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.analytics/google-analytics-admin/0.102.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.analytics/google-analytics-admin/0.103.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-analytics-data/README.md b/java-analytics-data/README.md index 2b2c7be45c21..47b6c5ff61db 100644 --- a/java-analytics-data/README.md +++ b/java-analytics-data/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.analytics google-analytics-data - 0.103.0 + 0.104.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.analytics:google-analytics-data:0.103.0' +implementation 'com.google.analytics:google-analytics-data:0.104.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.analytics" % "google-analytics-data" % "0.103.0" +libraryDependencies += "com.google.analytics" % "google-analytics-data" % "0.104.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-analytics-data/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.analytics/google-analytics-data.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.analytics/google-analytics-data/0.103.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.analytics/google-analytics-data/0.104.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-analyticshub/README.md b/java-analyticshub/README.md index d4234d6dc9b4..a1dfcaa6837f 100644 --- a/java-analyticshub/README.md +++ b/java-analyticshub/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-analyticshub - 0.89.0 + 0.90.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-analyticshub:0.89.0' +implementation 'com.google.cloud:google-cloud-analyticshub:0.90.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-analyticshub" % "0.89.0" +libraryDependencies += "com.google.cloud" % "google-cloud-analyticshub" % "0.90.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-analyticshub/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-analyticshub.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-analyticshub/0.89.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-analyticshub/0.90.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-api-gateway/README.md b/java-api-gateway/README.md index 72f04d2e4ef7..309460d95f28 100644 --- a/java-api-gateway/README.md +++ b/java-api-gateway/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-api-gateway - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-api-gateway:2.92.0' +implementation 'com.google.cloud:google-cloud-api-gateway:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-api-gateway" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-api-gateway" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-api-gateway/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-api-gateway.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-api-gateway/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-api-gateway/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-apigee-connect/README.md b/java-apigee-connect/README.md index 3b06a5adf066..f2ffbf600613 100644 --- a/java-apigee-connect/README.md +++ b/java-apigee-connect/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-apigee-connect - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-apigee-connect:2.92.0' +implementation 'com.google.cloud:google-cloud-apigee-connect:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-apigee-connect" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-apigee-connect" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-apigee-connect/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-apigee-connect.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-apigee-connect/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-apigee-connect/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-apigee-registry/README.md b/java-apigee-registry/README.md index 5d6928542311..1fbc409f430b 100644 --- a/java-apigee-registry/README.md +++ b/java-apigee-registry/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-apigee-registry - 0.92.0 + 0.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-apigee-registry:0.92.0' +implementation 'com.google.cloud:google-cloud-apigee-registry:0.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-apigee-registry" % "0.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-apigee-registry" % "0.93.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-apigee-registry/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-apigee-registry.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-apigee-registry/0.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-apigee-registry/0.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-apihub/README.md b/java-apihub/README.md index 83130c8cd7b1..dba9a8c2d7bd 100644 --- a/java-apihub/README.md +++ b/java-apihub/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-apihub - 0.45.0 + 0.46.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-apihub:0.45.0' +implementation 'com.google.cloud:google-cloud-apihub:0.46.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-apihub" % "0.45.0" +libraryDependencies += "com.google.cloud" % "google-cloud-apihub" % "0.46.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-apihub/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-apihub.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-apihub/0.45.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-apihub/0.46.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-apikeys/README.md b/java-apikeys/README.md index 12a1162651ae..8ee14f2e59a6 100644 --- a/java-apikeys/README.md +++ b/java-apikeys/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-apikeys - 0.90.0 + 0.91.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-apikeys:0.90.0' +implementation 'com.google.cloud:google-cloud-apikeys:0.91.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-apikeys" % "0.90.0" +libraryDependencies += "com.google.cloud" % "google-cloud-apikeys" % "0.91.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-apikeys/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-apikeys.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-apikeys/0.90.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-apikeys/0.91.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-appengine-admin/README.md b/java-appengine-admin/README.md index 4a01a602373c..c9d68cff292e 100644 --- a/java-appengine-admin/README.md +++ b/java-appengine-admin/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-appengine-admin - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-appengine-admin:2.92.0' +implementation 'com.google.cloud:google-cloud-appengine-admin:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-appengine-admin" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-appengine-admin" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-appengine-admin/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-appengine-admin.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-appengine-admin/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-appengine-admin/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-apphub/README.md b/java-apphub/README.md index 3e4fd2605397..95349daaa1c5 100644 --- a/java-apphub/README.md +++ b/java-apphub/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-apphub - 0.56.0 + 0.57.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-apphub:0.56.0' +implementation 'com.google.cloud:google-cloud-apphub:0.57.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-apphub" % "0.56.0" +libraryDependencies += "com.google.cloud" % "google-cloud-apphub" % "0.57.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-apphub/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-apphub.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-apphub/0.56.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-apphub/0.57.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-appoptimize/README.md b/java-appoptimize/README.md index 395cc90697a2..608889e884a8 100644 --- a/java-appoptimize/README.md +++ b/java-appoptimize/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-appoptimize - 0.2.0 + 0.3.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-appoptimize:0.2.0' +implementation 'com.google.cloud:google-cloud-appoptimize:0.3.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-appoptimize" % "0.2.0" +libraryDependencies += "com.google.cloud" % "google-cloud-appoptimize" % "0.3.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-appoptimize/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-appoptimize.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-appoptimize/0.2.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-appoptimize/0.3.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-area120-tables/README.md b/java-area120-tables/README.md index 6b60d3dcc64f..f0a733131580 100644 --- a/java-area120-tables/README.md +++ b/java-area120-tables/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.area120 google-area120-tables - 0.96.0 + 0.97.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.area120:google-area120-tables:0.96.0' +implementation 'com.google.area120:google-area120-tables:0.97.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.area120" % "google-area120-tables" % "0.96.0" +libraryDependencies += "com.google.area120" % "google-area120-tables" % "0.97.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-area120-tables/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.area120/google-area120-tables.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.area120/google-area120-tables/0.96.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.area120/google-area120-tables/0.97.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-artifact-registry/README.md b/java-artifact-registry/README.md index 72d44485d43f..9a8cb8d81876 100644 --- a/java-artifact-registry/README.md +++ b/java-artifact-registry/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-artifact-registry - 1.91.0 + 1.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-artifact-registry:1.91.0' +implementation 'com.google.cloud:google-cloud-artifact-registry:1.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-artifact-registry" % "1.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-artifact-registry" % "1.92.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-artifact-registry/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-artifact-registry.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-artifact-registry/1.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-artifact-registry/1.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-asset/README.md b/java-asset/README.md index d2ae0325aa28..b6e6a399627d 100644 --- a/java-asset/README.md +++ b/java-asset/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-asset - 3.96.0 + 3.97.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-asset:3.96.0' +implementation 'com.google.cloud:google-cloud-asset:3.97.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-asset" % "3.96.0" +libraryDependencies += "com.google.cloud" % "google-cloud-asset" % "3.97.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-asset/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-asset.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-asset/3.96.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-asset/3.97.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-assured-workloads/README.md b/java-assured-workloads/README.md index 6045c109e862..f7396e9a7be6 100644 --- a/java-assured-workloads/README.md +++ b/java-assured-workloads/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-assured-workloads - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-assured-workloads:2.92.0' +implementation 'com.google.cloud:google-cloud-assured-workloads:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-assured-workloads" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-assured-workloads" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-assured-workloads/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-assured-workloads.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-assured-workloads/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-assured-workloads/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-auditmanager/README.md b/java-auditmanager/README.md index 3b923451d983..68d87a684792 100644 --- a/java-auditmanager/README.md +++ b/java-auditmanager/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-auditmanager - 0.10.0 + 0.11.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-auditmanager:0.10.0' +implementation 'com.google.cloud:google-cloud-auditmanager:0.11.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-auditmanager" % "0.10.0" +libraryDependencies += "com.google.cloud" % "google-cloud-auditmanager" % "0.11.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-auditmanager/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-auditmanager.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-auditmanager/0.10.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-auditmanager/0.11.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-automl/README.md b/java-automl/README.md index 6b78b3ff08aa..816ff2f70c3e 100644 --- a/java-automl/README.md +++ b/java-automl/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-automl - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-automl:2.92.0' +implementation 'com.google.cloud:google-cloud-automl:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-automl" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-automl" % "2.93.0" ``` ## Authentication @@ -186,7 +186,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-automl/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-automl.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-automl/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-automl/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-backupdr/README.md b/java-backupdr/README.md index 0efcb345bb4b..a6263f8293aa 100644 --- a/java-backupdr/README.md +++ b/java-backupdr/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-backupdr - 0.51.0 + 0.52.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-backupdr:0.51.0' +implementation 'com.google.cloud:google-cloud-backupdr:0.52.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-backupdr" % "0.51.0" +libraryDependencies += "com.google.cloud" % "google-cloud-backupdr" % "0.52.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-backupdr/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-backupdr.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-backupdr/0.51.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-backupdr/0.52.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-bare-metal-solution/README.md b/java-bare-metal-solution/README.md index ebc1d5de3a24..b3c7adba515b 100644 --- a/java-bare-metal-solution/README.md +++ b/java-bare-metal-solution/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-bare-metal-solution - 0.92.0 + 0.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-bare-metal-solution:0.92.0' +implementation 'com.google.cloud:google-cloud-bare-metal-solution:0.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-bare-metal-solution" % "0.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-bare-metal-solution" % "0.93.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-bare-metal-solution/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-bare-metal-solution.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bare-metal-solution/0.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bare-metal-solution/0.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-batch/README.md b/java-batch/README.md index 2002b8d842ad..5a3eed9916c0 100644 --- a/java-batch/README.md +++ b/java-batch/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-batch - 0.92.0 + 0.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-batch:0.92.0' +implementation 'com.google.cloud:google-cloud-batch:0.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-batch" % "0.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-batch" % "0.93.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-batch/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-batch.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-batch/0.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-batch/0.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-beyondcorp-appconnections/README.md b/java-beyondcorp-appconnections/README.md index a5b16bb136d5..0f08c67f669f 100644 --- a/java-beyondcorp-appconnections/README.md +++ b/java-beyondcorp-appconnections/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-beyondcorp-appconnections - 0.90.0 + 0.91.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-beyondcorp-appconnections:0.90.0' +implementation 'com.google.cloud:google-cloud-beyondcorp-appconnections:0.91.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-beyondcorp-appconnections" % "0.90.0" +libraryDependencies += "com.google.cloud" % "google-cloud-beyondcorp-appconnections" % "0.91.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-beyondcorp-appconnections/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-beyondcorp-appconnections.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-beyondcorp-appconnections/0.90.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-beyondcorp-appconnections/0.91.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-beyondcorp-appconnectors/README.md b/java-beyondcorp-appconnectors/README.md index b33e8bb8160e..a90a19f2a93b 100644 --- a/java-beyondcorp-appconnectors/README.md +++ b/java-beyondcorp-appconnectors/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-beyondcorp-appconnectors - 0.90.0 + 0.91.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-beyondcorp-appconnectors:0.90.0' +implementation 'com.google.cloud:google-cloud-beyondcorp-appconnectors:0.91.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-beyondcorp-appconnectors" % "0.90.0" +libraryDependencies += "com.google.cloud" % "google-cloud-beyondcorp-appconnectors" % "0.91.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-beyondcorp-appconnectors/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-beyondcorp-appconnectors.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-beyondcorp-appconnectors/0.90.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-beyondcorp-appconnectors/0.91.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-beyondcorp-appgateways/README.md b/java-beyondcorp-appgateways/README.md index dcc5b75042d2..85ba00d41978 100644 --- a/java-beyondcorp-appgateways/README.md +++ b/java-beyondcorp-appgateways/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-beyondcorp-appgateways - 0.90.0 + 0.91.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-beyondcorp-appgateways:0.90.0' +implementation 'com.google.cloud:google-cloud-beyondcorp-appgateways:0.91.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-beyondcorp-appgateways" % "0.90.0" +libraryDependencies += "com.google.cloud" % "google-cloud-beyondcorp-appgateways" % "0.91.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-beyondcorp-appgateways/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-beyondcorp-appgateways.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-beyondcorp-appgateways/0.90.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-beyondcorp-appgateways/0.91.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-beyondcorp-clientconnectorservices/README.md b/java-beyondcorp-clientconnectorservices/README.md index 265973685b84..d223e3df40a8 100644 --- a/java-beyondcorp-clientconnectorservices/README.md +++ b/java-beyondcorp-clientconnectorservices/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-beyondcorp-clientconnectorservices - 0.90.0 + 0.91.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-beyondcorp-clientconnectorservices:0.90.0' +implementation 'com.google.cloud:google-cloud-beyondcorp-clientconnectorservices:0.91.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-beyondcorp-clientconnectorservices" % "0.90.0" +libraryDependencies += "com.google.cloud" % "google-cloud-beyondcorp-clientconnectorservices" % "0.91.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-beyondcorp-clientconnectorservices/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-beyondcorp-clientconnectorservices.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-beyondcorp-clientconnectorservices/0.90.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-beyondcorp-clientconnectorservices/0.91.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-beyondcorp-clientgateways/README.md b/java-beyondcorp-clientgateways/README.md index 9384834332b4..353355dcbfbd 100644 --- a/java-beyondcorp-clientgateways/README.md +++ b/java-beyondcorp-clientgateways/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-beyondcorp-clientgateways - 0.90.0 + 0.91.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-beyondcorp-clientgateways:0.90.0' +implementation 'com.google.cloud:google-cloud-beyondcorp-clientgateways:0.91.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-beyondcorp-clientgateways" % "0.90.0" +libraryDependencies += "com.google.cloud" % "google-cloud-beyondcorp-clientgateways" % "0.91.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-beyondcorp-clientgateways/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-beyondcorp-clientgateways.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-beyondcorp-clientgateways/0.90.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-beyondcorp-clientgateways/0.91.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-biglake/README.md b/java-biglake/README.md index 8bf953f5bda4..d8b60c0c8ad0 100644 --- a/java-biglake/README.md +++ b/java-biglake/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-biglake - 0.80.0 + 0.81.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-biglake:0.80.0' +implementation 'com.google.cloud:google-cloud-biglake:0.81.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-biglake" % "0.80.0" +libraryDependencies += "com.google.cloud" % "google-cloud-biglake" % "0.81.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-biglake/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-biglake.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-biglake/0.80.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-biglake/0.81.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-bigquery-data-exchange/README.md b/java-bigquery-data-exchange/README.md index 67b15c0024d8..c234652bba6d 100644 --- a/java-bigquery-data-exchange/README.md +++ b/java-bigquery-data-exchange/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-bigquery-data-exchange - 2.87.0 + 2.88.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-bigquery-data-exchange:2.87.0' +implementation 'com.google.cloud:google-cloud-bigquery-data-exchange:2.88.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-bigquery-data-exchange" % "2.87.0" +libraryDependencies += "com.google.cloud" % "google-cloud-bigquery-data-exchange" % "2.88.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-bigquery-data-exchange/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-bigquery-data-exchange.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigquery-data-exchange/2.87.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigquery-data-exchange/2.88.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-bigqueryconnection/README.md b/java-bigqueryconnection/README.md index 26be22f4888f..ec89235c732f 100644 --- a/java-bigqueryconnection/README.md +++ b/java-bigqueryconnection/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-bigqueryconnection - 2.94.0 + 2.95.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-bigqueryconnection:2.94.0' +implementation 'com.google.cloud:google-cloud-bigqueryconnection:2.95.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-bigqueryconnection" % "2.94.0" +libraryDependencies += "com.google.cloud" % "google-cloud-bigqueryconnection" % "2.95.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/bigquery/docs/reference/reservations/rpc/google.cloud.bigquery.reservation.v1beta1 [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-bigqueryconnection.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigqueryconnection/2.94.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigqueryconnection/2.95.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-bigquerydatapolicy/README.md b/java-bigquerydatapolicy/README.md index 72609c26f7a1..6cb68cdf2f18 100644 --- a/java-bigquerydatapolicy/README.md +++ b/java-bigquerydatapolicy/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-bigquerydatapolicy - 0.89.0 + 0.90.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-bigquerydatapolicy:0.89.0' +implementation 'com.google.cloud:google-cloud-bigquerydatapolicy:0.90.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-bigquerydatapolicy" % "0.89.0" +libraryDependencies += "com.google.cloud" % "google-cloud-bigquerydatapolicy" % "0.90.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-bigquerydatapolicy/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-bigquerydatapolicy.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigquerydatapolicy/0.89.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigquerydatapolicy/0.90.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-bigquerydatatransfer/README.md b/java-bigquerydatatransfer/README.md index 5223f6eafa10..63a49b88f62d 100644 --- a/java-bigquerydatatransfer/README.md +++ b/java-bigquerydatatransfer/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-bigquerydatatransfer - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-bigquerydatatransfer:2.92.0' +implementation 'com.google.cloud:google-cloud-bigquerydatatransfer:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-bigquerydatatransfer" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-bigquerydatatransfer" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-bigquerydatatransfer/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-bigquerydatatransfer.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigquerydatatransfer/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigquerydatatransfer/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-bigquerymigration/README.md b/java-bigquerymigration/README.md index c2bf45d12812..21a24f77d36f 100644 --- a/java-bigquerymigration/README.md +++ b/java-bigquerymigration/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-bigquerymigration - 0.95.0 + 0.96.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-bigquerymigration:0.95.0' +implementation 'com.google.cloud:google-cloud-bigquerymigration:0.96.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-bigquerymigration" % "0.95.0" +libraryDependencies += "com.google.cloud" % "google-cloud-bigquerymigration" % "0.96.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-bigquerymigration/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-bigquerymigration.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigquerymigration/0.95.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigquerymigration/0.96.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-bigqueryreservation/README.md b/java-bigqueryreservation/README.md index 0117d8944be7..827c63f2e87d 100644 --- a/java-bigqueryreservation/README.md +++ b/java-bigqueryreservation/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-bigqueryreservation - 2.93.0 + 2.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-bigqueryreservation:2.93.0' +implementation 'com.google.cloud:google-cloud-bigqueryreservation:2.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-bigqueryreservation" % "2.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-bigqueryreservation" % "2.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-bigqueryreservation/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-bigqueryreservation.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigqueryreservation/2.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigqueryreservation/2.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-bigquerystorage/README.md b/java-bigquerystorage/README.md index f8388cceada3..8393c21a9b2d 100644 --- a/java-bigquerystorage/README.md +++ b/java-bigquerystorage/README.md @@ -63,13 +63,13 @@ implementation 'com.google.cloud:google-cloud-bigquerystorage' If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-bigquerystorage:3.28.0' +implementation 'com.google.cloud:google-cloud-bigquerystorage:3.29.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-bigquerystorage" % "3.28.0" +libraryDependencies += "com.google.cloud" % "google-cloud-bigquerystorage" % "3.29.0" ``` ## Authentication @@ -242,7 +242,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-bigquerystorage/latest/history [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-bigquerystorage.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigquerystorage/3.28.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigquerystorage/3.29.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-bigtable/README.md b/java-bigtable/README.md index 07882cc1fc06..5b2338f2a71b 100644 --- a/java-bigtable/README.md +++ b/java-bigtable/README.md @@ -56,13 +56,13 @@ implementation 'com.google.cloud:google-cloud-bigtable' If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-bigtable:2.78.1' +implementation 'com.google.cloud:google-cloud-bigtable:2.79.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-bigtable" % "2.78.1" +libraryDependencies += "com.google.cloud" % "google-cloud-bigtable" % "2.79.0" ``` ## Authentication @@ -452,7 +452,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-bigtable/latest/history [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-bigtable.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigtable/2.78.1 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigtable/2.79.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-bigtable/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/BigtableProto.java b/java-bigtable/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/BigtableProto.java index da1b7d619751..0082ca2058d9 100644 --- a/java-bigtable/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/BigtableProto.java +++ b/java-bigtable/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/BigtableProto.java @@ -156,6 +156,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_bigtable_v2_ExecuteQueryRequest_ParamsEntry_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_bigtable_v2_ExecuteQueryRequest_ParamsEntry_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_bigtable_v2_ExecuteQueryRequest_ViewParametersEntry_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_bigtable_v2_ExecuteQueryRequest_ViewParametersEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_bigtable_v2_ExecuteQueryResponse_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -357,7 +361,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\023continuation_tokens\030\002" + " \003(\0132+.google.bigtable.v2.StreamContinuationToken\022;\n" + "\016new_partitions\030\003 \003(\0132#.google.bigtable.v2.StreamPartitionB\017\n\r" - + "stream_record\"\241\003\n" + + "stream_record\"\316\004\n" + "\023ExecuteQueryRequest\022D\n\r" + "instance_name\030\001 \001(\tB-\340A\002\372A\'\n" + "%bigtableadmin.googleapis.com/Instance\022\033\n" @@ -368,10 +372,16 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + " \001(\0132\037.google.bigtable.v2.ProtoFormatB\002\030\001H\000\022\031\n" + "\014resume_token\030\010 \001(\014B\003\340A\001\022H\n" + "\006params\030\007" - + " \003(\01323.google.bigtable.v2.ExecuteQueryRequest.ParamsEntryB\003\340A\002\032H\n" + + " \003(\01323.google.bigtable.v2.ExecuteQueryRequest.ParamsEntryB\003\340A\002\022Y\n" + + "\017view_parameters\030\014 \003(\0132;.google.bigtable.v2.Ex" + + "ecuteQueryRequest.ViewParametersEntryB\003\340A\001\032H\n" + "\013ParamsEntry\022\013\n" + "\003key\030\001 \001(\t\022(\n" - + "\005value\030\002 \001(\0132\031.google.bigtable.v2.Value:\0028\001B\r\n" + + "\005value\030\002 \001(\0132\031.google.bigtable.v2.Value:\0028\001\032P\n" + + "\023ViewParametersEntry\022\013\n" + + "\003key\030\001 \001(\t\022(\n" + + "\005value\030\002 \001(\0132\031.google.bigtable.v2.Value:\0028\001B\r" + + "\n" + "\013data_format\"\226\001\n" + "\024ExecuteQueryResponse\0229\n" + "\010metadata\030\001 \001(\0132%.google.bigtable.v2.ResultSetMetadataH\000\0227\n" @@ -383,8 +393,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\016app_profile_id\030\002 \001(\tB\003\340A\001\022\022\n" + "\005query\030\003 \001(\tB\003\340A\002\0227\n" + "\014proto_format\030\004 \001(\0132\037.google.bigtable.v2.ProtoFormatH\000\022Q\n" - + "\013param_types\030\006" - + " \003(\01327.google.bigtable.v2.PrepareQueryRequest.ParamTypesEntryB\003\340A\002\032K\n" + + "\013param_types\030\006 \003(\01327.google.big" + + "table.v2.PrepareQueryRequest.ParamTypesEntryB\003\340A\002\032K\n" + "\017ParamTypesEntry\022\013\n" + "\003key\030\001 \001(\t\022\'\n" + "\005value\030\002 \001(\0132\030.google.bigtable.v2.Type:\0028\001B\r\n" @@ -394,127 +404,130 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\016prepared_query\030\002 \001(\014\022/\n" + "\013valid_until\030\003 \001(\0132\032.google.protobuf.Timestamp2\215+\n" + "\010Bigtable\022\325\004\n" - + "\010ReadRows\022#.google.b" - + "igtable.v2.ReadRowsRequest\032$.google.bigtable.v2.ReadRowsResponse\"\373\003\332A\n" - + "table_name\332A\031table_name,app_profile_id\202\323\344\223\002\361\001\"9/v2" - + "/{table_name=projects/*/instances/*/tables/*}:readRows:\001*ZZ\"U/v2/{authorized_vie" - + "w_name=projects/*/instances/*/tables/*/authorizedViews/*}:readRows:\001*ZU\"P/v2/{ma" - + "terialized_view_name=projects/*/instance" - + "s/*/materializedViews/*}:readRows:\001*\212\323\344\223\002\323\001\022:\n\n" + + "\010ReadRows\022#.google.bigtable.v2.ReadRowsRequest\032" + + "$.google.bigtable.v2.ReadRowsResponse\"\373\003\332A\n" + + "table_name\332A\031table_name,app_profile_i" + + "d\202\323\344\223\002\361\001\"9/v2/{table_name=projects/*/ins" + + "tances/*/tables/*}:readRows:\001*ZZ\"U/v2/{authorized_view_name=projects/*/instances" + + "/*/tables/*/authorizedViews/*}:readRows:\001*ZU\"P/v2/{materialized_view_name=projec" + + "ts/*/instances/*/materializedViews/*}:readRows:\001*\212\323\344\223\002\323\001\022:\n\n" + "table_name\022,{table_name=projects/*/instances/*/tables/*}\022\020\n" + "\016app_profile_id\022G\n" + "\024authorized_view_name\022/{table_name=projects/*/instances/*/tables/*}/**\022:\n" + "\026materialized_view_name\022 {name=projects/*/instances/*}/**0\001\022\352\004\n\r" - + "SampleRowKeys\022(.google.bigtable.v2.SampleRowKeysRequest\032).g" - + "oogle.bigtable.v2.SampleRowKeysResponse\"\201\004\332A\n" - + "table_name\332A\031table_name,app_profile" - + "_id\202\323\344\223\002\367\001\022>/v2/{table_name=projects/*/i" - + "nstances/*/tables/*}:sampleRowKeysZ\\\022Z/v2/{authorized_view_name=projects/*/insta" - + "nces/*/tables/*/authorizedViews/*}:sampleRowKeysZW\022U/v2/{materialized_view_name=" - + "projects/*/instances/*/materializedViews/*}:sampleRowKeys\212\323\344\223\002\323\001\022:\n\n" + + "SampleRowKeys\022(.google.bigtable.v2.SampleRowKe" + + "ysRequest\032).google.bigtable.v2.SampleRowKeysResponse\"\201\004\332A\n" + + "table_name\332A\031table_nam" + + "e,app_profile_id\202\323\344\223\002\367\001\022>/v2/{table_name" + + "=projects/*/instances/*/tables/*}:sampleRowKeysZ\\\022Z/v2/{authorized_view_name=pro" + + "jects/*/instances/*/tables/*/authorizedViews/*}:sampleRowKeysZW\022U/v2/{materializ" + + "ed_view_name=projects/*/instances/*/materializedViews/*}:sampleRowKeys\212\323\344\223\002\323\001\022:\n" + + "\n" + "table_name\022,{table_name=projects/*/instances/*/tables/*}\022\020\n" + "\016app_profile_id\022G\n" + "\024authorized_view_name\022/{table_name=projects/*/instances/*/tables/*}/**\022:\n" + "\026materialized_view_name\022 {name=projects/*/instances/*}/**0\001\022\351\003\n" - + "\tMutateRow\022$.google.bigtable.v2.MutateRowRequest\032%.google.bigtable.v2.MutateRow" - + "Response\"\216\003\332A\034table_name,row_key,mutatio" - + "ns\332A+table_name,row_key,mutations,app_pr" - + "ofile_id\202\323\344\223\002\234\001\":/v2/{table_name=project" - + "s/*/instances/*/tables/*}:mutateRow:\001*Z[\"V/v2/{authorized_view_name=projects/*/i" - + "nstances/*/tables/*/authorizedViews/*}:mutateRow:\001*\212\323\344\223\002\227\001\022:\n\n" + + "\tMutateRow\022$.google.bigtable.v2.MutateRowRequest\032%.google.bigtable" + + ".v2.MutateRowResponse\"\216\003\332A\034table_name,ro" + + "w_key,mutations\332A+table_name,row_key,mut" + + "ations,app_profile_id\202\323\344\223\002\234\001\":/v2/{table" + + "_name=projects/*/instances/*/tables/*}:mutateRow:\001*Z[\"V/v2/{authorized_view_name" + + "=projects/*/instances/*/tables/*/authorizedViews/*}:mutateRow:\001*\212\323\344\223\002\227\001\022:\n\n" + "table_name\022,{table_name=projects/*/instances/*/tables/*}\022\020\n" + "\016app_profile_id\022G\n" - + "\024authorized_view_name" - + "\022/{table_name=projects/*/instances/*/tables/*}/**\022\334\003\n\n" - + "MutateRows\022%.google.bigtable.v2.MutateRowsRequest\032&.google.bigtabl" - + "e.v2.MutateRowsResponse\"\374\002\332A\022table_name," - + "entries\332A!table_name,entries,app_profile" - + "_id\202\323\344\223\002\236\001\";/v2/{table_name=projects/*/i" - + "nstances/*/tables/*}:mutateRows:\001*Z\\\"W/v2/{authorized_view_name=projects/*/insta" - + "nces/*/tables/*/authorizedViews/*}:mutateRows:\001*\212\323\344\223\002\227\001\022:\n\n" + + "\024authori" + + "zed_view_name\022/{table_name=projects/*/instances/*/tables/*}/**\022\334\003\n\n" + + "MutateRows\022%.google.bigtable.v2.MutateRowsRequest\032&.g" + + "oogle.bigtable.v2.MutateRowsResponse\"\374\002\332" + + "A\022table_name,entries\332A!table_name,entrie" + + "s,app_profile_id\202\323\344\223\002\236\001\";/v2/{table_name" + + "=projects/*/instances/*/tables/*}:mutateRows:\001*Z\\\"W/v2/{authorized_view_name=pro" + + "jects/*/instances/*/tables/*/authorizedViews/*}:mutateRows:\001*\212\323\344\223\002\227\001\022:\n\n" + "table_name\022,{table_name=projects/*/instances/*/tables/*}\022\020\n" + "\016app_profile_id\022G\n" - + "\024authorized_view_name\022/{" - + "table_name=projects/*/instances/*/tables/*}/**0\001\022\335\004\n" - + "\021CheckAndMutateRow\022,.google.bigtable.v2.CheckAndMutateRowRequest\032-.g" - + "oogle.bigtable.v2.CheckAndMutateRowRespo" - + "nse\"\352\003\332ABtable_name,row_key,predicate_fi" - + "lter,true_mutations,false_mutations\332AQtable_name,row_key,predicate_filter,true_m" - + "utations,false_mutations,app_profile_id\202" - + "\323\344\223\002\254\001\"B/v2/{table_name=projects/*/insta" - + "nces/*/tables/*}:checkAndMutateRow:\001*Zc\"^/v2/{authorized_view_name=projects/*/in" - + "stances/*/tables/*/authorizedViews/*}:checkAndMutateRow:\001*\212\323\344\223\002\227\001\022:\n\n" + + "\024authorized" + + "_view_name\022/{table_name=projects/*/instances/*/tables/*}/**0\001\022\335\004\n" + + "\021CheckAndMutateRow\022,.google.bigtable.v2.CheckAndMutateR" + + "owRequest\032-.google.bigtable.v2.CheckAndM" + + "utateRowResponse\"\352\003\332ABtable_name,row_key" + + ",predicate_filter,true_mutations,false_mutations\332AQtable_name,row_key,predicate_" + + "filter,true_mutations,false_mutations,ap" + + "p_profile_id\202\323\344\223\002\254\001\"B/v2/{table_name=pro" + + "jects/*/instances/*/tables/*}:checkAndMutateRow:\001*Zc\"^/v2/{authorized_view_name=" + + "projects/*/instances/*/tables/*/authoriz" + + "edViews/*}:checkAndMutateRow:\001*\212\323\344\223\002\227\001\022:\n\n" + "table_name\022,{table_name=projects/*/instances/*/tables/*}\022\020\n" + "\016app_profile_id\022G\n" - + "\024authorized_vi" - + "ew_name\022/{table_name=projects/*/instances/*/tables/*}/**\022\356\001\n" - + "\013PingAndWarm\022&.google.bigtable.v2.PingAndWarmRequest\032\'.googl" - + "e.bigtable.v2.PingAndWarmResponse\"\215\001\332A\004n" - + "ame\332A\023name,app_profile_id\202\323\344\223\002+\"&/v2/{na" - + "me=projects/*/instances/*}:ping:\001*\212\323\344\223\0029\022%\n" + + "\024authorized_view_name\022/{table_name=projects/*/instances/*/tables/*}/**\022\356\001\n" + + "\013PingAndWarm\022&.google.bigtable.v2.PingAndWarmRe" + + "quest\032\'.google.bigtable.v2.PingAndWarmRe" + + "sponse\"\215\001\332A\004name\332A\023name,app_profile_id\202\323" + + "\344\223\002+\"&/v2/{name=projects/*/instances/*}:ping:\001*\212\323\344\223\0029\022%\n" + "\004name\022\035{name=projects/*/instances/*}\022\020\n" + "\016app_profile_id\022\216\004\n" - + "\022ReadModifyWriteRow\022-.google.bigtable.v2.ReadModifyWriteRow" - + "Request\032..google.bigtable.v2.ReadModifyW" - + "riteRowResponse\"\230\003\332A\030table_name,row_key," - + "rules\332A\'table_name,row_key,rules,app_pro" - + "file_id\202\323\344\223\002\256\001\"C/v2/{table_name=projects" - + "/*/instances/*/tables/*}:readModifyWriteRow:\001*Zd\"_/v2/{authorized_view_name=proj" - + "ects/*/instances/*/tables/*/authorizedViews/*}:readModifyWriteRow:\001*\212\323\344\223\002\227\001\022:\n\n" + + "\022ReadModifyWriteRow\022-.google.bigtable.v2.ReadM" + + "odifyWriteRowRequest\032..google.bigtable.v" + + "2.ReadModifyWriteRowResponse\"\230\003\332A\030table_" + + "name,row_key,rules\332A\'table_name,row_key," + + "rules,app_profile_id\202\323\344\223\002\256\001\"C/v2/{table_" + + "name=projects/*/instances/*/tables/*}:readModifyWriteRow:\001*Zd\"_/v2/{authorized_v" + + "iew_name=projects/*/instances/*/tables/*" + + "/authorizedViews/*}:readModifyWriteRow:\001*\212\323\344\223\002\227\001\022:\n\n" + "table_name\022,{table_name=projects/*/instances/*/tables/*}\022\020\n" + "\016app_profile_id\022G\n" - + "\024aut" - + "horized_view_name\022/{table_name=projects/*/instances/*/tables/*}/**\022\273\002\n" - + "%GenerateInitialChangeStreamPartitions\022@.google.bi" - + "gtable.v2.GenerateInitialChangeStreamPartitionsRequest\032A.google.bigtable.v2.Gene" - + "rateInitialChangeStreamPartitionsResponse\"\212\001\332A\n" - + "table_name\332A\031table_name,app_profi" - + "le_id\202\323\344\223\002[\"V/v2/{table_name=projects/*/" - + "instances/*/tables/*}:generateInitialChangeStreamPartitions:\001*0\001\022\346\001\n" - + "\020ReadChangeStream\022+.google.bigtable.v2.ReadChangeStr" - + "eamRequest\032,.google.bigtable.v2.ReadChangeStreamResponse\"u\332A\n" - + "table_name\332A\031table_name,app_profile_id\202\323\344\223\002F\"A/v2/{table_na" - + "me=projects/*/instances/*/tables/*}:readChangeStream:\001*0\001\022\251\002\n" - + "\014PrepareQuery\022\'.google.bigtable.v2.PrepareQueryRequest\032(.go" - + "ogle.bigtable.v2.PrepareQueryResponse\"\305\001" - + "\332A\023instance_name,query\332A\"instance_name,q" - + "uery,app_profile_id\202\323\344\223\002<\"7/v2/{instance" - + "_name=projects/*/instances/*}:prepareQuery:\001*\212\323\344\223\002B\022.\n\r" + + "\024authorized_view_name\022/{table_n" + + "ame=projects/*/instances/*/tables/*}/**\022\273\002\n" + + "%GenerateInitialChangeStreamPartitions\022@.google.bigtable.v2.GenerateInitialCh" + + "angeStreamPartitionsRequest\032A.google.big" + + "table.v2.GenerateInitialChangeStreamPartitionsResponse\"\212\001\332A\n" + + "table_name\332A\031table_name,app_profile_id\202\323\344\223\002[\"V/v2/{table_nam" + + "e=projects/*/instances/*/tables/*}:gener" + + "ateInitialChangeStreamPartitions:\001*0\001\022\346\001\n" + + "\020ReadChangeStream\022+.google.bigtable.v2." + + "ReadChangeStreamRequest\032,.google.bigtable.v2.ReadChangeStreamResponse\"u\332A\n" + + "table_name\332A\031table_name,app_profile_id\202\323\344\223\002F\"A" + + "/v2/{table_name=projects/*/instances/*/tables/*}:readChangeStream:\001*0\001\022\251\002\n" + + "\014PrepareQuery\022\'.google.bigtable.v2.PrepareQuer" + + "yRequest\032(.google.bigtable.v2.PrepareQue" + + "ryResponse\"\305\001\332A\023instance_name,query\332A\"in" + + "stance_name,query,app_profile_id\202\323\344\223\002<\"7" + + "/v2/{instance_name=projects/*/instances/*}:prepareQuery:\001*\212\323\344\223\002B\022.\n\r" + "instance_name\022\035{name=projects/*/instances/*}\022\020\n" + "\016app_profile_id\022\253\002\n" - + "\014ExecuteQuery\022\'.google.bigtable.v2.Exec" - + "uteQueryRequest\032(.google.bigtable.v2.Exe" - + "cuteQueryResponse\"\305\001\332A\023instance_name,que" - + "ry\332A\"instance_name,query,app_profile_id\202" - + "\323\344\223\002<\"7/v2/{instance_name=projects/*/instances/*}:executeQuery:\001*\212\323\344\223\002B\022.\n\r" + + "\014ExecuteQuery\022\'.google.bigtable.v2.ExecuteQueryRequest\032(.google.bi" + + "gtable.v2.ExecuteQueryResponse\"\305\001\332A\023inst" + + "ance_name,query\332A\"instance_name,query,ap" + + "p_profile_id\202\323\344\223\002<\"7/v2/{instance_name=p" + + "rojects/*/instances/*}:executeQuery:\001*\212\323\344\223\002B\022.\n\r" + "instance_name\022\035{name=projects/*/instances/*}\022\020\n" + "\016app_profile_id0\001\022v\n" - + "\026GetClientConfiguration\0221.google.bigtable.v2.GetClientConf" - + "igurationRequest\032\'.google.bigtable.v2.ClientConfiguration\"\000\022`\n" - + "\tOpenTable\022\".googl" - + "e.bigtable.v2.SessionRequest\032#.google.bigtable.v2.SessionResponse\"\006\240\320\245\216\004\001(\0010\001\022i\n" - + "\022OpenAuthorizedView\022\".google.bigtable.v2" - + ".SessionRequest\032#.google.bigtable.v2.SessionResponse\"\006\240\320\245\216\004\002(\0010\001\022k\n" - + "\024OpenMaterializedView\022\".google.bigtable.v2.SessionReq" - + "uest\032#.google.bigtable.v2.SessionRespons" - + "e\"\006\240\320\245\216\004\003(\0010\001\032\333\002\312A\027bigtable.googleapis.c" - + "om\322A\275\002https://www.googleapis.com/auth/bi" - + "gtable.data,https://www.googleapis.com/auth/bigtable.data.readonly,https://www.g" - + "oogleapis.com/auth/cloud-bigtable.data,https://www.googleapis.com/auth/cloud-big" - + "table.data.readonly,https://www.googleapis.com/auth/cloud-platform,https://www.g" - + "oogleapis.com/auth/cloud-platform.read-onlyB\365\004\n" + + "\026GetClientConfiguration\0221.google.bigtable.v2." + + "GetClientConfigurationRequest\032\'.google.bigtable.v2.ClientConfiguration\"\000\022`\n" + + "\tOpenTable\022\".google.bigtable.v2.SessionReques" + + "t\032#.google.bigtable.v2.SessionResponse\"\006\240\320\245\216\004\001(\0010\001\022i\n" + + "\022OpenAuthorizedView\022\".googl" + + "e.bigtable.v2.SessionRequest\032#.google.bigtable.v2.SessionResponse\"\006\240\320\245\216\004\002(\0010\001\022k\n" + + "\024OpenMaterializedView\022\".google.bigtable." + + "v2.SessionRequest\032#.google.bigtable.v2.S" + + "essionResponse\"\006\240\320\245\216\004\003(\0010\001\032\333\002\312A\027bigtable" + + ".googleapis.com\322A\275\002https://www.googleapi" + + "s.com/auth/bigtable.data,https://www.googleapis.com/auth/bigtable.data.readonly," + + "https://www.googleapis.com/auth/cloud-bigtable.data,https://www.googleapis.com/a" + + "uth/cloud-bigtable.data.readonly,https://www.googleapis.com/auth/cloud-platform," + + "https://www.googleapis.com/auth/cloud-platform.read-onlyB\365\004\n" + "\026com.google.bigtable.v2B\r" - + "BigtableProtoP\001Z8cloud.google.com/go/bigtable/ap" - + "iv2/bigtablepb;bigtablepb\252\002\030Google.Cloud" - + ".Bigtable.V2\312\002\030Google\\Cloud\\Bigtable\\V2\352\002\033Google::Cloud::Bigtable::V2\352AP\n" - + "%bigtab" - + "leadmin.googleapis.com/Instance\022\'projects/{project}/instances/{instance}\352A\\\n" - + "\"bigtableadmin.googleapis.com/Table\0226project" - + "s/{project}/instances/{instance}/tables/{table}\352A\207\001\n" - + "+bigtableadmin.googleapis.com/AuthorizedView\022Xprojects/{project}/ins" - + "tances/{instance}/tables/{table}/authorizedViews/{authorized_view}\352A~\n" - + "-bigtableadmin.googleapis.com/MaterializedView\022Mpr" - + "ojects/{project}/instances/{instance}/materializedViews/{materialized_view}b\006proto3" + + "BigtableProtoP\001Z8cloud.google.com/go/bigtable/apiv2/bigtablepb;bigtablepb\252\002" + + "\030Google.Cloud.Bigtable.V2\312\002\030Google\\Cloud" + + "\\Bigtable\\V2\352\002\033Google::Cloud::Bigtable::V2\352AP\n" + + "%bigtableadmin.googleapis.com/Inst" + + "ance\022\'projects/{project}/instances/{instance}\352A\\\n" + + "\"bigtableadmin.googleapis.com/T" + + "able\0226projects/{project}/instances/{instance}/tables/{table}\352A\207\001\n" + + "+bigtableadmin.googleapis.com/AuthorizedView\022Xprojects/" + + "{project}/instances/{instance}/tables/{t" + + "able}/authorizedViews/{authorized_view}\352A~\n" + + "-bigtableadmin.googleapis.com/MaterializedView\022Mprojects/{project}/instances/" + + "{instance}/materializedViews/{materialized_view}b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -802,6 +815,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ProtoFormat", "ResumeToken", "Params", + "ViewParameters", "DataFormat", }); internal_static_google_bigtable_v2_ExecuteQueryRequest_ParamsEntry_descriptor = @@ -812,6 +826,14 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "Key", "Value", }); + internal_static_google_bigtable_v2_ExecuteQueryRequest_ViewParametersEntry_descriptor = + internal_static_google_bigtable_v2_ExecuteQueryRequest_descriptor.getNestedType(1); + internal_static_google_bigtable_v2_ExecuteQueryRequest_ViewParametersEntry_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_bigtable_v2_ExecuteQueryRequest_ViewParametersEntry_descriptor, + new java.lang.String[] { + "Key", "Value", + }); internal_static_google_bigtable_v2_ExecuteQueryResponse_descriptor = getDescriptor().getMessageType(20); internal_static_google_bigtable_v2_ExecuteQueryResponse_fieldAccessorTable = diff --git a/java-bigtable/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ExecuteQueryRequest.java b/java-bigtable/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ExecuteQueryRequest.java index 65808fb8668f..952f8eee1344 100644 --- a/java-bigtable/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ExecuteQueryRequest.java +++ b/java-bigtable/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ExecuteQueryRequest.java @@ -71,6 +71,8 @@ protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldRefl switch (number) { case 7: return internalGetParams(); + case 12: + return internalGetViewParameters(); default: throw new RuntimeException("Invalid map field number: " + number); } @@ -639,6 +641,148 @@ public com.google.bigtable.v2.Value getParamsOrThrow(java.lang.String key) { return map.get(key); } + public static final int VIEW_PARAMETERS_FIELD_NUMBER = 12; + + private static final class ViewParametersDefaultEntryHolder { + static final com.google.protobuf.MapEntry + defaultEntry = + com.google.protobuf.MapEntry + .newDefaultInstance( + com.google.bigtable.v2.BigtableProto + .internal_static_google_bigtable_v2_ExecuteQueryRequest_ViewParametersEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.MESSAGE, + com.google.bigtable.v2.Value.getDefaultInstance()); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField + viewParameters_; + + private com.google.protobuf.MapField + internalGetViewParameters() { + if (viewParameters_ == null) { + return com.google.protobuf.MapField.emptyMapField( + ViewParametersDefaultEntryHolder.defaultEntry); + } + return viewParameters_; + } + + public int getViewParametersCount() { + return internalGetViewParameters().getMap().size(); + } + + /** + * + * + *
+   * Optional. This map provides the runtime values returned by the
+   * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+   * data based on identity.
+   *
+   * The key is the name of the view parameter e.g. `user_id`, and
+   * the value is the parameter value e.g. `alice@example.com`.
+   * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsViewParameters(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetViewParameters().getMap().containsKey(key); + } + + /** Use {@link #getViewParametersMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getViewParameters() { + return getViewParametersMap(); + } + + /** + * + * + *
+   * Optional. This map provides the runtime values returned by the
+   * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+   * data based on identity.
+   *
+   * The key is the name of the view parameter e.g. `user_id`, and
+   * the value is the parameter value e.g. `alice@example.com`.
+   * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getViewParametersMap() { + return internalGetViewParameters().getMap(); + } + + /** + * + * + *
+   * Optional. This map provides the runtime values returned by the
+   * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+   * data based on identity.
+   *
+   * The key is the name of the view parameter e.g. `user_id`, and
+   * the value is the parameter value e.g. `alice@example.com`.
+   * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ com.google.bigtable.v2.Value getViewParametersOrDefault( + java.lang.String key, + /* nullable */ + com.google.bigtable.v2.Value defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = + internalGetViewParameters().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
+   * Optional. This map provides the runtime values returned by the
+   * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+   * data based on identity.
+   *
+   * The key is the name of the view parameter e.g. `user_id`, and
+   * the value is the parameter value e.g. `alice@example.com`.
+   * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.bigtable.v2.Value getViewParametersOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = + internalGetViewParameters().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -673,6 +817,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!preparedQuery_.isEmpty()) { output.writeBytes(9, preparedQuery_); } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetViewParameters(), ViewParametersDefaultEntryHolder.defaultEntry, 12); getUnknownFields().writeTo(output); } @@ -712,6 +858,17 @@ public int getSerializedSize() { if (!preparedQuery_.isEmpty()) { size += com.google.protobuf.CodedOutputStream.computeBytesSize(9, preparedQuery_); } + for (java.util.Map.Entry entry : + internalGetViewParameters().getMap().entrySet()) { + com.google.protobuf.MapEntry + viewParameters__ = + ViewParametersDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, viewParameters__); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -734,6 +891,7 @@ public boolean equals(final java.lang.Object obj) { if (!getPreparedQuery().equals(other.getPreparedQuery())) return false; if (!getResumeToken().equals(other.getResumeToken())) return false; if (!internalGetParams().equals(other.internalGetParams())) return false; + if (!internalGetViewParameters().equals(other.internalGetViewParameters())) return false; if (!getDataFormatCase().equals(other.getDataFormatCase())) return false; switch (dataFormatCase_) { case 4: @@ -767,6 +925,10 @@ public int hashCode() { hash = (37 * hash) + PARAMS_FIELD_NUMBER; hash = (53 * hash) + internalGetParams().hashCode(); } + if (!internalGetViewParameters().getMap().isEmpty()) { + hash = (37 * hash) + VIEW_PARAMETERS_FIELD_NUMBER; + hash = (53 * hash) + internalGetViewParameters().hashCode(); + } switch (dataFormatCase_) { case 4: hash = (37 * hash) + PROTO_FORMAT_FIELD_NUMBER; @@ -900,6 +1062,8 @@ protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldRefl switch (number) { case 7: return internalGetParams(); + case 12: + return internalGetViewParameters(); default: throw new RuntimeException("Invalid map field number: " + number); } @@ -911,6 +1075,8 @@ protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFi switch (number) { case 7: return internalGetMutableParams(); + case 12: + return internalGetMutableViewParameters(); default: throw new RuntimeException("Invalid map field number: " + number); } @@ -946,6 +1112,7 @@ public Builder clear() { } resumeToken_ = com.google.protobuf.ByteString.EMPTY; internalGetMutableParams().clear(); + internalGetMutableViewParameters().clear(); dataFormatCase_ = 0; dataFormat_ = null; return this; @@ -1003,6 +1170,10 @@ private void buildPartial0(com.google.bigtable.v2.ExecuteQueryRequest result) { if (((from_bitField0_ & 0x00000040) != 0)) { result.params_ = internalGetParams().build(ParamsDefaultEntryHolder.defaultEntry); } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.viewParameters_ = + internalGetViewParameters().build(ViewParametersDefaultEntryHolder.defaultEntry); + } } private void buildPartialOneofs(com.google.bigtable.v2.ExecuteQueryRequest result) { @@ -1048,6 +1219,8 @@ public Builder mergeFrom(com.google.bigtable.v2.ExecuteQueryRequest other) { } internalGetMutableParams().mergeFrom(other.internalGetParams()); bitField0_ |= 0x00000040; + internalGetMutableViewParameters().mergeFrom(other.internalGetViewParameters()); + bitField0_ |= 0x00000080; switch (other.getDataFormatCase()) { case PROTO_FORMAT: { @@ -1135,6 +1308,19 @@ public Builder mergeFrom( bitField0_ |= 0x00000008; break; } // case 74 + case 98: + { + com.google.protobuf.MapEntry + viewParameters__ = + input.readMessage( + ViewParametersDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableViewParameters() + .ensureBuilderMap() + .put(viewParameters__.getKey(), viewParameters__.getValue()); + bitField0_ |= 0x00000080; + break; + } // case 98 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -2381,6 +2567,302 @@ public com.google.bigtable.v2.Value.Builder putParamsBuilderIfAbsent(java.lang.S return (com.google.bigtable.v2.Value.Builder) entry; } + private static final class ViewParametersConverter + implements com.google.protobuf.MapFieldBuilder.Converter< + java.lang.String, com.google.bigtable.v2.ValueOrBuilder, com.google.bigtable.v2.Value> { + @java.lang.Override + public com.google.bigtable.v2.Value build(com.google.bigtable.v2.ValueOrBuilder val) { + if (val instanceof com.google.bigtable.v2.Value) { + return (com.google.bigtable.v2.Value) val; + } + return ((com.google.bigtable.v2.Value.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry + defaultEntry() { + return ViewParametersDefaultEntryHolder.defaultEntry; + } + } + ; + + private static final ViewParametersConverter viewParametersConverter = + new ViewParametersConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, + com.google.bigtable.v2.ValueOrBuilder, + com.google.bigtable.v2.Value, + com.google.bigtable.v2.Value.Builder> + viewParameters_; + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, + com.google.bigtable.v2.ValueOrBuilder, + com.google.bigtable.v2.Value, + com.google.bigtable.v2.Value.Builder> + internalGetViewParameters() { + if (viewParameters_ == null) { + return new com.google.protobuf.MapFieldBuilder<>(viewParametersConverter); + } + return viewParameters_; + } + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, + com.google.bigtable.v2.ValueOrBuilder, + com.google.bigtable.v2.Value, + com.google.bigtable.v2.Value.Builder> + internalGetMutableViewParameters() { + if (viewParameters_ == null) { + viewParameters_ = new com.google.protobuf.MapFieldBuilder<>(viewParametersConverter); + } + bitField0_ |= 0x00000080; + onChanged(); + return viewParameters_; + } + + public int getViewParametersCount() { + return internalGetViewParameters().ensureBuilderMap().size(); + } + + /** + * + * + *
+     * Optional. This map provides the runtime values returned by the
+     * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+     * data based on identity.
+     *
+     * The key is the name of the view parameter e.g. `user_id`, and
+     * the value is the parameter value e.g. `alice@example.com`.
+     * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsViewParameters(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetViewParameters().ensureBuilderMap().containsKey(key); + } + + /** Use {@link #getViewParametersMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getViewParameters() { + return getViewParametersMap(); + } + + /** + * + * + *
+     * Optional. This map provides the runtime values returned by the
+     * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+     * data based on identity.
+     *
+     * The key is the name of the view parameter e.g. `user_id`, and
+     * the value is the parameter value e.g. `alice@example.com`.
+     * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getViewParametersMap() { + return internalGetViewParameters().getImmutableMap(); + } + + /** + * + * + *
+     * Optional. This map provides the runtime values returned by the
+     * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+     * data based on identity.
+     *
+     * The key is the name of the view parameter e.g. `user_id`, and
+     * the value is the parameter value e.g. `alice@example.com`.
+     * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ com.google.bigtable.v2.Value getViewParametersOrDefault( + java.lang.String key, + /* nullable */ + com.google.bigtable.v2.Value defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = + internalGetMutableViewParameters().ensureBuilderMap(); + return map.containsKey(key) ? viewParametersConverter.build(map.get(key)) : defaultValue; + } + + /** + * + * + *
+     * Optional. This map provides the runtime values returned by the
+     * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+     * data based on identity.
+     *
+     * The key is the name of the view parameter e.g. `user_id`, and
+     * the value is the parameter value e.g. `alice@example.com`.
+     * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.bigtable.v2.Value getViewParametersOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = + internalGetMutableViewParameters().ensureBuilderMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return viewParametersConverter.build(map.get(key)); + } + + public Builder clearViewParameters() { + bitField0_ = (bitField0_ & ~0x00000080); + internalGetMutableViewParameters().clear(); + return this; + } + + /** + * + * + *
+     * Optional. This map provides the runtime values returned by the
+     * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+     * data based on identity.
+     *
+     * The key is the name of the view parameter e.g. `user_id`, and
+     * the value is the parameter value e.g. `alice@example.com`.
+     * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeViewParameters(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableViewParameters().ensureBuilderMap().remove(key); + return this; + } + + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map + getMutableViewParameters() { + bitField0_ |= 0x00000080; + return internalGetMutableViewParameters().ensureMessageMap(); + } + + /** + * + * + *
+     * Optional. This map provides the runtime values returned by the
+     * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+     * data based on identity.
+     *
+     * The key is the name of the view parameter e.g. `user_id`, and
+     * the value is the parameter value e.g. `alice@example.com`.
+     * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putViewParameters(java.lang.String key, com.google.bigtable.v2.Value value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableViewParameters().ensureBuilderMap().put(key, value); + bitField0_ |= 0x00000080; + return this; + } + + /** + * + * + *
+     * Optional. This map provides the runtime values returned by the
+     * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+     * data based on identity.
+     *
+     * The key is the name of the view parameter e.g. `user_id`, and
+     * the value is the parameter value e.g. `alice@example.com`.
+     * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAllViewParameters( + java.util.Map values) { + for (java.util.Map.Entry e : + values.entrySet()) { + if (e.getKey() == null || e.getValue() == null) { + throw new NullPointerException(); + } + } + internalGetMutableViewParameters().ensureBuilderMap().putAll(values); + bitField0_ |= 0x00000080; + return this; + } + + /** + * + * + *
+     * Optional. This map provides the runtime values returned by the
+     * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+     * data based on identity.
+     *
+     * The key is the name of the view parameter e.g. `user_id`, and
+     * the value is the parameter value e.g. `alice@example.com`.
+     * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.bigtable.v2.Value.Builder putViewParametersBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = + internalGetMutableViewParameters().ensureBuilderMap(); + com.google.bigtable.v2.ValueOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = com.google.bigtable.v2.Value.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof com.google.bigtable.v2.Value) { + entry = ((com.google.bigtable.v2.Value) entry).toBuilder(); + builderMap.put(key, entry); + } + return (com.google.bigtable.v2.Value.Builder) entry; + } + // @@protoc_insertion_point(builder_scope:google.bigtable.v2.ExecuteQueryRequest) } diff --git a/java-bigtable/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ExecuteQueryRequestOrBuilder.java b/java-bigtable/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ExecuteQueryRequestOrBuilder.java index 262acc8a149a..b6ad4183e081 100644 --- a/java-bigtable/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ExecuteQueryRequestOrBuilder.java +++ b/java-bigtable/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ExecuteQueryRequestOrBuilder.java @@ -396,5 +396,103 @@ com.google.bigtable.v2.Value getParamsOrDefault( */ com.google.bigtable.v2.Value getParamsOrThrow(java.lang.String key); + /** + * + * + *
+   * Optional. This map provides the runtime values returned by the
+   * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+   * data based on identity.
+   *
+   * The key is the name of the view parameter e.g. `user_id`, and
+   * the value is the parameter value e.g. `alice@example.com`.
+   * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getViewParametersCount(); + + /** + * + * + *
+   * Optional. This map provides the runtime values returned by the
+   * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+   * data based on identity.
+   *
+   * The key is the name of the view parameter e.g. `user_id`, and
+   * the value is the parameter value e.g. `alice@example.com`.
+   * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + boolean containsViewParameters(java.lang.String key); + + /** Use {@link #getViewParametersMap()} instead. */ + @java.lang.Deprecated + java.util.Map getViewParameters(); + + /** + * + * + *
+   * Optional. This map provides the runtime values returned by the
+   * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+   * data based on identity.
+   *
+   * The key is the name of the view parameter e.g. `user_id`, and
+   * the value is the parameter value e.g. `alice@example.com`.
+   * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.Map getViewParametersMap(); + + /** + * + * + *
+   * Optional. This map provides the runtime values returned by the
+   * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+   * data based on identity.
+   *
+   * The key is the name of the view parameter e.g. `user_id`, and
+   * the value is the parameter value e.g. `alice@example.com`.
+   * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + /* nullable */ + com.google.bigtable.v2.Value getViewParametersOrDefault( + java.lang.String key, + /* nullable */ + com.google.bigtable.v2.Value defaultValue); + + /** + * + * + *
+   * Optional. This map provides the runtime values returned by the
+   * VIEW_PARAMETERS() function calls, typically used for user-level scoping of
+   * data based on identity.
+   *
+   * The key is the name of the view parameter e.g. `user_id`, and
+   * the value is the parameter value e.g. `alice@example.com`.
+   * 
+ * + * + * map<string, .google.bigtable.v2.Value> view_parameters = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.bigtable.v2.Value getViewParametersOrThrow(java.lang.String key); + com.google.bigtable.v2.ExecuteQueryRequest.DataFormatCase getDataFormatCase(); } diff --git a/java-bigtable/proto-google-cloud-bigtable-v2/src/main/proto/google/bigtable/v2/bigtable.proto b/java-bigtable/proto-google-cloud-bigtable-v2/src/main/proto/google/bigtable/v2/bigtable.proto index 1a2bb37cccc4..32c133bd9a04 100644 --- a/java-bigtable/proto-google-cloud-bigtable-v2/src/main/proto/google/bigtable/v2/bigtable.proto +++ b/java-bigtable/proto-google-cloud-bigtable-v2/src/main/proto/google/bigtable/v2/bigtable.proto @@ -1187,6 +1187,15 @@ message ExecuteQueryRequest { // `Value.type` must match the corresponding `param_types` entry, or be // rejected with `INVALID_ARGUMENT`. map params = 7 [(google.api.field_behavior) = REQUIRED]; + + // Optional. This map provides the runtime values returned by the + // VIEW_PARAMETERS() function calls, typically used for user-level scoping of + // data based on identity. + // + // The key is the name of the view parameter e.g. `user_id`, and + // the value is the parameter value e.g. `alice@example.com`. + map view_parameters = 12 + [(google.api.field_behavior) = OPTIONAL]; } // Response message for Bigtable.ExecuteQuery diff --git a/java-billing/README.md b/java-billing/README.md index cd2c6213b83d..af1ca4ef1cc6 100644 --- a/java-billing/README.md +++ b/java-billing/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-billing - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-billing:2.92.0' +implementation 'com.google.cloud:google-cloud-billing:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-billing" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-billing" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-billing/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-billing.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-billing/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-billing/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-billingbudgets/README.md b/java-billingbudgets/README.md index 222474796c41..cc11ca75e21b 100644 --- a/java-billingbudgets/README.md +++ b/java-billingbudgets/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-billingbudgets - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-billingbudgets:2.92.0' +implementation 'com.google.cloud:google-cloud-billingbudgets:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-billingbudgets" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-billingbudgets" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-billingbudgets/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-billingbudgets.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-billingbudgets/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-billingbudgets/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-binary-authorization/README.md b/java-binary-authorization/README.md index 9eafac0c0683..dcc8d9ad13be 100644 --- a/java-binary-authorization/README.md +++ b/java-binary-authorization/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-binary-authorization - 1.91.0 + 1.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-binary-authorization:1.91.0' +implementation 'com.google.cloud:google-cloud-binary-authorization:1.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-binary-authorization" % "1.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-binary-authorization" % "1.92.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-binary-authorization/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-binary-authorization.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-binary-authorization/1.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-binary-authorization/1.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-capacityplanner/README.md b/java-capacityplanner/README.md index 84754ce16b5e..fce68cc2dd8f 100644 --- a/java-capacityplanner/README.md +++ b/java-capacityplanner/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-capacityplanner - 0.15.0 + 0.16.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-capacityplanner:0.15.0' +implementation 'com.google.cloud:google-cloud-capacityplanner:0.16.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-capacityplanner" % "0.15.0" +libraryDependencies += "com.google.cloud" % "google-cloud-capacityplanner" % "0.16.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-capacityplanner/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-capacityplanner.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-capacityplanner/0.15.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-capacityplanner/0.16.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-certificate-manager/README.md b/java-certificate-manager/README.md index 74de64f9d7c6..2eb371bcf706 100644 --- a/java-certificate-manager/README.md +++ b/java-certificate-manager/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-certificate-manager - 0.95.0 + 0.96.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-certificate-manager:0.95.0' +implementation 'com.google.cloud:google-cloud-certificate-manager:0.96.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-certificate-manager" % "0.95.0" +libraryDependencies += "com.google.cloud" % "google-cloud-certificate-manager" % "0.96.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-certificate-manager/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-certificate-manager.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-certificate-manager/0.95.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-certificate-manager/0.96.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-ces/README.md b/java-ces/README.md index a7f8c77bbfc2..42c014aba07e 100644 --- a/java-ces/README.md +++ b/java-ces/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-ces - 0.8.0 + 0.9.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-ces:0.8.0' +implementation 'com.google.cloud:google-cloud-ces:0.9.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-ces" % "0.8.0" +libraryDependencies += "com.google.cloud" % "google-cloud-ces" % "0.9.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-ces/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-ces.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-ces/0.8.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-ces/0.9.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-channel/README.md b/java-channel/README.md index 99f2307259db..cc5e9819fc33 100644 --- a/java-channel/README.md +++ b/java-channel/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-channel - 3.96.0 + 3.97.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-channel:3.96.0' +implementation 'com.google.cloud:google-cloud-channel:3.97.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-channel" % "3.96.0" +libraryDependencies += "com.google.cloud" % "google-cloud-channel" % "3.97.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-channel/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-channel.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-channel/3.96.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-channel/3.97.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-chat/README.md b/java-chat/README.md index 2c9dead0a3b2..c196b8d86eec 100644 --- a/java-chat/README.md +++ b/java-chat/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-chat - 0.56.0 + 0.57.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-chat:0.56.0' +implementation 'com.google.cloud:google-cloud-chat:0.57.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-chat" % "0.56.0" +libraryDependencies += "com.google.cloud" % "google-cloud-chat" % "0.57.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-chat/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-chat.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-chat/0.56.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-chat/0.57.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-chronicle/README.md b/java-chronicle/README.md index bf8fb9b1d7d9..63bd11414498 100644 --- a/java-chronicle/README.md +++ b/java-chronicle/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-chronicle - 0.30.0 + 0.31.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-chronicle:0.30.0' +implementation 'com.google.cloud:google-cloud-chronicle:0.31.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-chronicle" % "0.30.0" +libraryDependencies += "com.google.cloud" % "google-cloud-chronicle" % "0.31.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-chronicle/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-chronicle.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-chronicle/0.30.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-chronicle/0.31.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-cloudapiregistry/README.md b/java-cloudapiregistry/README.md index d8bc78201e37..07cfa1e15994 100644 --- a/java-cloudapiregistry/README.md +++ b/java-cloudapiregistry/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-cloudapiregistry - 0.11.0 + 0.12.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-cloudapiregistry:0.11.0' +implementation 'com.google.cloud:google-cloud-cloudapiregistry:0.12.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-cloudapiregistry" % "0.11.0" +libraryDependencies += "com.google.cloud" % "google-cloud-cloudapiregistry" % "0.12.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-cloudapiregistry/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-cloudapiregistry.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-cloudapiregistry/0.11.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-cloudapiregistry/0.12.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-cloudbuild/README.md b/java-cloudbuild/README.md index 1b138dea6f09..cfb109d57bf1 100644 --- a/java-cloudbuild/README.md +++ b/java-cloudbuild/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-build - 3.94.0 + 3.95.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-build:3.94.0' +implementation 'com.google.cloud:google-cloud-build:3.95.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-build" % "3.94.0" +libraryDependencies += "com.google.cloud" % "google-cloud-build" % "3.95.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-build/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-build.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-build/3.94.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-build/3.95.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-cloudcommerceconsumerprocurement/README.md b/java-cloudcommerceconsumerprocurement/README.md index 9c13db20fdc9..52807ec4daf1 100644 --- a/java-cloudcommerceconsumerprocurement/README.md +++ b/java-cloudcommerceconsumerprocurement/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-cloudcommerceconsumerprocurement - 0.90.0 + 0.91.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-cloudcommerceconsumerprocurement:0.90.0' +implementation 'com.google.cloud:google-cloud-cloudcommerceconsumerprocurement:0.91.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-cloudcommerceconsumerprocurement" % "0.90.0" +libraryDependencies += "com.google.cloud" % "google-cloud-cloudcommerceconsumerprocurement" % "0.91.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-cloudcommerceconsumerprocurement/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-cloudcommerceconsumerprocurement.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-cloudcommerceconsumerprocurement/0.90.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-cloudcommerceconsumerprocurement/0.91.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-cloudcontrolspartner/README.md b/java-cloudcontrolspartner/README.md index 149072f4c287..a26e2d4fd83c 100644 --- a/java-cloudcontrolspartner/README.md +++ b/java-cloudcontrolspartner/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-cloudcontrolspartner - 0.56.0 + 0.57.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-cloudcontrolspartner:0.56.0' +implementation 'com.google.cloud:google-cloud-cloudcontrolspartner:0.57.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-cloudcontrolspartner" % "0.56.0" +libraryDependencies += "com.google.cloud" % "google-cloud-cloudcontrolspartner" % "0.57.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-cloudcontrolspartner/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-cloudcontrolspartner.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-cloudcontrolspartner/0.56.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-cloudcontrolspartner/0.57.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-cloudquotas/README.md b/java-cloudquotas/README.md index 9bbacd369741..a44918da972a 100644 --- a/java-cloudquotas/README.md +++ b/java-cloudquotas/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-cloudquotas - 0.60.0 + 0.61.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-cloudquotas:0.60.0' +implementation 'com.google.cloud:google-cloud-cloudquotas:0.61.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-cloudquotas" % "0.60.0" +libraryDependencies += "com.google.cloud" % "google-cloud-cloudquotas" % "0.61.0" ``` ## Authentication @@ -177,7 +177,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-cloudquotas/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-cloudquotas.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-cloudquotas/0.60.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-cloudquotas/0.61.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-cloudsecuritycompliance/README.md b/java-cloudsecuritycompliance/README.md index 9a0eb0b1dcfb..5ad8b9852a71 100644 --- a/java-cloudsecuritycompliance/README.md +++ b/java-cloudsecuritycompliance/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-cloudsecuritycompliance - 0.19.0 + 0.20.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-cloudsecuritycompliance:0.19.0' +implementation 'com.google.cloud:google-cloud-cloudsecuritycompliance:0.20.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-cloudsecuritycompliance" % "0.19.0" +libraryDependencies += "com.google.cloud" % "google-cloud-cloudsecuritycompliance" % "0.20.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-cloudsecuritycompliance/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-cloudsecuritycompliance.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-cloudsecuritycompliance/0.19.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-cloudsecuritycompliance/0.20.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-cloudsupport/README.md b/java-cloudsupport/README.md index ad0e7ce22893..b045b76795f6 100644 --- a/java-cloudsupport/README.md +++ b/java-cloudsupport/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-cloudsupport - 0.76.0 + 0.77.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-cloudsupport:0.76.0' +implementation 'com.google.cloud:google-cloud-cloudsupport:0.77.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-cloudsupport" % "0.76.0" +libraryDependencies += "com.google.cloud" % "google-cloud-cloudsupport" % "0.77.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-cloudsupport/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-cloudsupport.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-cloudsupport/0.76.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-cloudsupport/0.77.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-compute/README.md b/java-compute/README.md index f108ed3f91e4..8b8b131b6e18 100644 --- a/java-compute/README.md +++ b/java-compute/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-compute - 1.102.0 + 1.103.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-compute:1.102.0' +implementation 'com.google.cloud:google-cloud-compute:1.103.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-compute" % "1.102.0" +libraryDependencies += "com.google.cloud" % "google-cloud-compute" % "1.103.0" ``` ## Authentication @@ -238,7 +238,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-compute/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-compute.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-compute/1.102.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-compute/1.103.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-confidentialcomputing/README.md b/java-confidentialcomputing/README.md index b7cec726058f..13203fc42b68 100644 --- a/java-confidentialcomputing/README.md +++ b/java-confidentialcomputing/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-confidentialcomputing - 0.78.0 + 0.79.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-confidentialcomputing:0.78.0' +implementation 'com.google.cloud:google-cloud-confidentialcomputing:0.79.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-confidentialcomputing" % "0.78.0" +libraryDependencies += "com.google.cloud" % "google-cloud-confidentialcomputing" % "0.79.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-confidentialcomputing/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-confidentialcomputing.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-confidentialcomputing/0.78.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-confidentialcomputing/0.79.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-configdelivery/README.md b/java-configdelivery/README.md index 144c8add011e..8e1aa5a70c9a 100644 --- a/java-configdelivery/README.md +++ b/java-configdelivery/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-configdelivery - 0.26.0 + 0.27.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-configdelivery:0.26.0' +implementation 'com.google.cloud:google-cloud-configdelivery:0.27.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-configdelivery" % "0.26.0" +libraryDependencies += "com.google.cloud" % "google-cloud-configdelivery" % "0.27.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-configdelivery/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-configdelivery.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-configdelivery/0.26.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-configdelivery/0.27.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-connectgateway/README.md b/java-connectgateway/README.md index c591f7b2efbf..85c9e37e2cef 100644 --- a/java-connectgateway/README.md +++ b/java-connectgateway/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-connectgateway - 0.44.0 + 0.45.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-connectgateway:0.44.0' +implementation 'com.google.cloud:google-cloud-connectgateway:0.45.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-connectgateway" % "0.44.0" +libraryDependencies += "com.google.cloud" % "google-cloud-connectgateway" % "0.45.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-connectgateway/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-connectgateway.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-connectgateway/0.44.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-connectgateway/0.45.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-contact-center-insights/README.md b/java-contact-center-insights/README.md index da5dfd81059f..19dae4f4c892 100644 --- a/java-contact-center-insights/README.md +++ b/java-contact-center-insights/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-contact-center-insights - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-contact-center-insights:2.92.0' +implementation 'com.google.cloud:google-cloud-contact-center-insights:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-contact-center-insights" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-contact-center-insights" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-contact-center-insights/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-contact-center-insights.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-contact-center-insights/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-contact-center-insights/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-container/README.md b/java-container/README.md index d449db2187b4..cc2d6f615fa5 100644 --- a/java-container/README.md +++ b/java-container/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-container - 2.95.0 + 2.96.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-container:2.95.0' +implementation 'com.google.cloud:google-cloud-container:2.96.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-container" % "2.95.0" +libraryDependencies += "com.google.cloud" % "google-cloud-container" % "2.96.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-container/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-container.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-container/2.95.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-container/2.96.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-containeranalysis/README.md b/java-containeranalysis/README.md index 8c2440fc864f..594aa73db090 100644 --- a/java-containeranalysis/README.md +++ b/java-containeranalysis/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-containeranalysis - 2.93.0 + 2.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-containeranalysis:2.93.0' +implementation 'com.google.cloud:google-cloud-containeranalysis:2.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-containeranalysis" % "2.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-containeranalysis" % "2.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-containeranalysis/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-containeranalysis.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-containeranalysis/2.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-containeranalysis/2.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-contentwarehouse/README.md b/java-contentwarehouse/README.md index 8730a2db465b..eb79f7d273f0 100644 --- a/java-contentwarehouse/README.md +++ b/java-contentwarehouse/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-contentwarehouse - 0.88.0 + 0.89.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-contentwarehouse:0.88.0' +implementation 'com.google.cloud:google-cloud-contentwarehouse:0.89.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-contentwarehouse" % "0.88.0" +libraryDependencies += "com.google.cloud" % "google-cloud-contentwarehouse" % "0.89.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-contentwarehouse/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-contentwarehouse.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-contentwarehouse/0.88.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-contentwarehouse/0.89.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-data-fusion/README.md b/java-data-fusion/README.md index 8cc894ed527c..3903c315a2f3 100644 --- a/java-data-fusion/README.md +++ b/java-data-fusion/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-data-fusion - 1.92.0 + 1.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-data-fusion:1.92.0' +implementation 'com.google.cloud:google-cloud-data-fusion:1.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-data-fusion" % "1.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-data-fusion" % "1.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-data-fusion/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-data-fusion.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-data-fusion/1.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-data-fusion/1.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-databasecenter/README.md b/java-databasecenter/README.md index 3780cd9f652a..6c2036e18513 100644 --- a/java-databasecenter/README.md +++ b/java-databasecenter/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-databasecenter - 0.13.0 + 0.14.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-databasecenter:0.13.0' +implementation 'com.google.cloud:google-cloud-databasecenter:0.14.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-databasecenter" % "0.13.0" +libraryDependencies += "com.google.cloud" % "google-cloud-databasecenter" % "0.14.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-databasecenter/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-databasecenter.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-databasecenter/0.13.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-databasecenter/0.14.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-datacatalog/README.md b/java-datacatalog/README.md index f988112e492d..609ee2aaf4bb 100644 --- a/java-datacatalog/README.md +++ b/java-datacatalog/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-datacatalog - 1.98.0 + 1.99.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-datacatalog:1.98.0' +implementation 'com.google.cloud:google-cloud-datacatalog:1.99.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-datacatalog" % "1.98.0" +libraryDependencies += "com.google.cloud" % "google-cloud-datacatalog" % "1.99.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-datacatalog/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-datacatalog.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-datacatalog/1.98.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-datacatalog/1.99.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-dataflow/README.md b/java-dataflow/README.md index 74cb53305e40..b1e77d1035fd 100644 --- a/java-dataflow/README.md +++ b/java-dataflow/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-dataflow - 0.96.0 + 0.97.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-dataflow:0.96.0' +implementation 'com.google.cloud:google-cloud-dataflow:0.97.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-dataflow" % "0.96.0" +libraryDependencies += "com.google.cloud" % "google-cloud-dataflow" % "0.97.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-dataflow/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-dataflow.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dataflow/0.96.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dataflow/0.97.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-dataform/README.md b/java-dataform/README.md index 624f6f3fe565..3f507f10c1ad 100644 --- a/java-dataform/README.md +++ b/java-dataform/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-dataform - 0.91.0 + 0.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-dataform:0.91.0' +implementation 'com.google.cloud:google-cloud-dataform:0.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-dataform" % "0.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-dataform" % "0.92.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-dataform/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-dataform.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dataform/0.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dataform/0.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-datalabeling/README.md b/java-datalabeling/README.md index 6b12b34e88c6..2f588a214177 100644 --- a/java-datalabeling/README.md +++ b/java-datalabeling/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-datalabeling - 0.212.0 + 0.213.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-datalabeling:0.212.0' +implementation 'com.google.cloud:google-cloud-datalabeling:0.213.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-datalabeling" % "0.212.0" +libraryDependencies += "com.google.cloud" % "google-cloud-datalabeling" % "0.213.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-datalabeling/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-datalabeling.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-datalabeling/0.212.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-datalabeling/0.213.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-datalineage/README.md b/java-datalineage/README.md index 0c838857850c..07287a959f82 100644 --- a/java-datalineage/README.md +++ b/java-datalineage/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-datalineage - 0.84.0 + 0.85.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-datalineage:0.84.0' +implementation 'com.google.cloud:google-cloud-datalineage:0.85.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-datalineage" % "0.84.0" +libraryDependencies += "com.google.cloud" % "google-cloud-datalineage" % "0.85.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-datalineage/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-datalineage.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-datalineage/0.84.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-datalineage/0.85.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-datamanager/README.md b/java-datamanager/README.md index 278451f11aab..23e0641aa956 100644 --- a/java-datamanager/README.md +++ b/java-datamanager/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.api-ads data-manager - 0.13.0 + 0.14.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.api-ads:data-manager:0.13.0' +implementation 'com.google.api-ads:data-manager:0.14.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.api-ads" % "data-manager" % "0.13.0" +libraryDependencies += "com.google.api-ads" % "data-manager" % "0.14.0" ``` ## Authentication @@ -158,7 +158,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/data-manager/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.api-ads/data-manager.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.api-ads/data-manager/0.13.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.api-ads/data-manager/0.14.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-dataplex/README.md b/java-dataplex/README.md index 1a4320fae859..d39a3a4466df 100644 --- a/java-dataplex/README.md +++ b/java-dataplex/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-dataplex - 1.90.0 + 1.91.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-dataplex:1.90.0' +implementation 'com.google.cloud:google-cloud-dataplex:1.91.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-dataplex" % "1.90.0" +libraryDependencies += "com.google.cloud" % "google-cloud-dataplex" % "1.91.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-dataplex/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-dataplex.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dataplex/1.90.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dataplex/1.91.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-dataproc-metastore/README.md b/java-dataproc-metastore/README.md index 8ba34cc3e87c..6576be0b9baa 100644 --- a/java-dataproc-metastore/README.md +++ b/java-dataproc-metastore/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-dataproc-metastore - 2.93.0 + 2.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-dataproc-metastore:2.93.0' +implementation 'com.google.cloud:google-cloud-dataproc-metastore:2.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-dataproc-metastore" % "2.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-dataproc-metastore" % "2.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-dataproc-metastore/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-dataproc-metastore.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dataproc-metastore/2.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dataproc-metastore/2.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-dataproc/README.md b/java-dataproc/README.md index 9ec0d480de7e..712815366621 100644 --- a/java-dataproc/README.md +++ b/java-dataproc/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-dataproc - 4.89.0 + 4.90.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-dataproc:4.89.0' +implementation 'com.google.cloud:google-cloud-dataproc:4.90.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-dataproc" % "4.89.0" +libraryDependencies += "com.google.cloud" % "google-cloud-dataproc" % "4.90.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-dataproc/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-dataproc.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dataproc/4.89.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dataproc/4.90.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-datastore/README.md b/java-datastore/README.md index 8cc885c61a13..b5215680b423 100644 --- a/java-datastore/README.md +++ b/java-datastore/README.md @@ -57,13 +57,13 @@ implementation 'com.google.cloud:google-cloud-datastore' If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-datastore:3.0.0' +implementation 'com.google.cloud:google-cloud-datastore:3.1.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-datastore" % "3.0.0" +libraryDependencies += "com.google.cloud" % "google-cloud-datastore" % "3.1.0" ``` ## Authentication @@ -476,7 +476,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-datastore/latest/history [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-datastore.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-datastore/3.0.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-datastore/3.1.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-datastream/README.md b/java-datastream/README.md index e355cbf403bd..2fef74296533 100644 --- a/java-datastream/README.md +++ b/java-datastream/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-datastream - 1.91.0 + 1.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-datastream:1.91.0' +implementation 'com.google.cloud:google-cloud-datastream:1.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-datastream" % "1.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-datastream" % "1.92.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-datastream/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-datastream.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-datastream/1.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-datastream/1.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-deploy/README.md b/java-deploy/README.md index c0c1aa23e98a..cb0a67a92381 100644 --- a/java-deploy/README.md +++ b/java-deploy/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-deploy - 1.90.0 + 1.91.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-deploy:1.90.0' +implementation 'com.google.cloud:google-cloud-deploy:1.91.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-deploy" % "1.90.0" +libraryDependencies += "com.google.cloud" % "google-cloud-deploy" % "1.91.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-deploy/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-deploy.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-deploy/1.90.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-deploy/1.91.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-developerconnect/README.md b/java-developerconnect/README.md index b4b7031167dc..38ea28ef8320 100644 --- a/java-developerconnect/README.md +++ b/java-developerconnect/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-developerconnect - 0.49.0 + 0.50.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-developerconnect:0.49.0' +implementation 'com.google.cloud:google-cloud-developerconnect:0.50.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-developerconnect" % "0.49.0" +libraryDependencies += "com.google.cloud" % "google-cloud-developerconnect" % "0.50.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-developerconnect/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-developerconnect.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-developerconnect/0.49.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-developerconnect/0.50.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-developerknowledge/README.md b/java-developerknowledge/README.md index bfa520423fbf..8ce2a33166ff 100644 --- a/java-developerknowledge/README.md +++ b/java-developerknowledge/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-developer-knowledge - 0.0.0 + 0.1.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-developer-knowledge:0.0.0' +implementation 'com.google.cloud:google-cloud-developer-knowledge:0.1.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-developer-knowledge" % "0.0.0" +libraryDependencies += "com.google.cloud" % "google-cloud-developer-knowledge" % "0.1.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-developer-knowledge/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-developer-knowledge.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-developer-knowledge/0.0.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-developer-knowledge/0.1.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-devicestreaming/README.md b/java-devicestreaming/README.md index 9feb15794190..09e0287102fb 100644 --- a/java-devicestreaming/README.md +++ b/java-devicestreaming/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-devicestreaming - 0.32.0 + 0.33.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-devicestreaming:0.32.0' +implementation 'com.google.cloud:google-cloud-devicestreaming:0.33.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-devicestreaming" % "0.32.0" +libraryDependencies += "com.google.cloud" % "google-cloud-devicestreaming" % "0.33.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-devicestreaming/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-devicestreaming.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-devicestreaming/0.32.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-devicestreaming/0.33.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-dialogflow-cx/README.md b/java-dialogflow-cx/README.md index 271ddab981b6..5d0e0b38afa1 100644 --- a/java-dialogflow-cx/README.md +++ b/java-dialogflow-cx/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-dialogflow-cx - 0.103.0 + 0.104.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-dialogflow-cx:0.103.0' +implementation 'com.google.cloud:google-cloud-dialogflow-cx:0.104.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-dialogflow-cx" % "0.103.0" +libraryDependencies += "com.google.cloud" % "google-cloud-dialogflow-cx" % "0.104.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-dialogflow-cx/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-dialogflow-cx.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dialogflow-cx/0.103.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dialogflow-cx/0.104.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-dialogflow/README.md b/java-dialogflow/README.md index 95147b6fd844..d945630da800 100644 --- a/java-dialogflow/README.md +++ b/java-dialogflow/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-dialogflow - 4.98.0 + 4.99.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-dialogflow:4.98.0' +implementation 'com.google.cloud:google-cloud-dialogflow:4.99.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-dialogflow" % "4.98.0" +libraryDependencies += "com.google.cloud" % "google-cloud-dialogflow" % "4.99.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-dialogflow/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-dialogflow.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dialogflow/4.98.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dialogflow/4.99.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-discoveryengine/README.md b/java-discoveryengine/README.md index f9b2c45e19aa..9bb154d7a089 100644 --- a/java-discoveryengine/README.md +++ b/java-discoveryengine/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-discoveryengine - 0.88.0 + 0.89.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-discoveryengine:0.88.0' +implementation 'com.google.cloud:google-cloud-discoveryengine:0.89.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-discoveryengine" % "0.88.0" +libraryDependencies += "com.google.cloud" % "google-cloud-discoveryengine" % "0.89.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-discoveryengine/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-discoveryengine.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-discoveryengine/0.88.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-discoveryengine/0.89.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-distributedcloudedge/README.md b/java-distributedcloudedge/README.md index 557fa1f804f3..3a638c9aaa50 100644 --- a/java-distributedcloudedge/README.md +++ b/java-distributedcloudedge/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-distributedcloudedge - 0.89.0 + 0.90.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-distributedcloudedge:0.89.0' +implementation 'com.google.cloud:google-cloud-distributedcloudedge:0.90.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-distributedcloudedge" % "0.89.0" +libraryDependencies += "com.google.cloud" % "google-cloud-distributedcloudedge" % "0.90.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-distributedcloudedge/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-distributedcloudedge.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-distributedcloudedge/0.89.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-distributedcloudedge/0.90.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-dlp/README.md b/java-dlp/README.md index 65e71c88251a..b95a3770b154 100644 --- a/java-dlp/README.md +++ b/java-dlp/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-dlp - 3.96.0 + 3.97.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-dlp:3.96.0' +implementation 'com.google.cloud:google-cloud-dlp:3.97.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-dlp" % "3.96.0" +libraryDependencies += "com.google.cloud" % "google-cloud-dlp" % "3.97.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-dlp/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-dlp.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dlp/3.96.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dlp/3.97.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-dms/README.md b/java-dms/README.md index bcc6b3c0f42b..b08cad388ec0 100644 --- a/java-dms/README.md +++ b/java-dms/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-dms - 2.91.0 + 2.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-dms:2.91.0' +implementation 'com.google.cloud:google-cloud-dms:2.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-dms" % "2.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-dms" % "2.92.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-dms/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-dms.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dms/2.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-dms/2.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-document-ai/README.md b/java-document-ai/README.md index e159d8f28b92..e709d5f06fe5 100644 --- a/java-document-ai/README.md +++ b/java-document-ai/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-document-ai - 2.96.0 + 2.97.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-document-ai:2.96.0' +implementation 'com.google.cloud:google-cloud-document-ai:2.97.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-document-ai" % "2.96.0" +libraryDependencies += "com.google.cloud" % "google-cloud-document-ai" % "2.97.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-document-ai/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-document-ai.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-document-ai/2.96.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-document-ai/2.97.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-domains/README.md b/java-domains/README.md index ae3a39592d66..69dd13b4a37e 100644 --- a/java-domains/README.md +++ b/java-domains/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-domains - 1.89.0 + 1.90.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-domains:1.89.0' +implementation 'com.google.cloud:google-cloud-domains:1.90.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-domains" % "1.89.0" +libraryDependencies += "com.google.cloud" % "google-cloud-domains" % "1.90.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-domains/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-domains.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-domains/1.89.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-domains/1.90.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-edgenetwork/README.md b/java-edgenetwork/README.md index c7fd2c2f49e6..b79102c611f1 100644 --- a/java-edgenetwork/README.md +++ b/java-edgenetwork/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-edgenetwork - 0.60.0 + 0.61.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-edgenetwork:0.60.0' +implementation 'com.google.cloud:google-cloud-edgenetwork:0.61.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-edgenetwork" % "0.60.0" +libraryDependencies += "com.google.cloud" % "google-cloud-edgenetwork" % "0.61.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-edgenetwork/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-edgenetwork.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-edgenetwork/0.60.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-edgenetwork/0.61.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-enterpriseknowledgegraph/README.md b/java-enterpriseknowledgegraph/README.md index 90cc1f442a63..4662fc404e09 100644 --- a/java-enterpriseknowledgegraph/README.md +++ b/java-enterpriseknowledgegraph/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-enterpriseknowledgegraph - 0.88.0 + 0.89.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-enterpriseknowledgegraph:0.88.0' +implementation 'com.google.cloud:google-cloud-enterpriseknowledgegraph:0.89.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-enterpriseknowledgegraph" % "0.88.0" +libraryDependencies += "com.google.cloud" % "google-cloud-enterpriseknowledgegraph" % "0.89.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-enterpriseknowledgegraph/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-enterpriseknowledgegraph.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-enterpriseknowledgegraph/0.88.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-enterpriseknowledgegraph/0.89.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-errorreporting/README.md b/java-errorreporting/README.md index 75d6a2e83f47..5948d362c4fc 100644 --- a/java-errorreporting/README.md +++ b/java-errorreporting/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-errorreporting - 0.213.0-beta + 0.214.0-beta ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-errorreporting:0.213.0-beta' +implementation 'com.google.cloud:google-cloud-errorreporting:0.214.0-beta' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-errorreporting" % "0.213.0-beta" +libraryDependencies += "com.google.cloud" % "google-cloud-errorreporting" % "0.214.0-beta" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-errorreporting/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-errorreporting.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-errorreporting/0.213.0-beta +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-errorreporting/0.214.0-beta [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-essential-contacts/README.md b/java-essential-contacts/README.md index 450640eb5547..c1ac483e861e 100644 --- a/java-essential-contacts/README.md +++ b/java-essential-contacts/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-essential-contacts - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-essential-contacts:2.92.0' +implementation 'com.google.cloud:google-cloud-essential-contacts:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-essential-contacts" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-essential-contacts" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-essential-contacts/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-essential-contacts.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-essential-contacts/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-essential-contacts/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-eventarc-publishing/README.md b/java-eventarc-publishing/README.md index ea69e459011f..6120cdf060c0 100644 --- a/java-eventarc-publishing/README.md +++ b/java-eventarc-publishing/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-eventarc-publishing - 0.92.0 + 0.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-eventarc-publishing:0.92.0' +implementation 'com.google.cloud:google-cloud-eventarc-publishing:0.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-eventarc-publishing" % "0.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-eventarc-publishing" % "0.93.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-eventarc-publishing/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-eventarc-publishing.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-eventarc-publishing/0.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-eventarc-publishing/0.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-eventarc/README.md b/java-eventarc/README.md index cd5d8597a628..2191ff8f6550 100644 --- a/java-eventarc/README.md +++ b/java-eventarc/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-eventarc - 1.92.0 + 1.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-eventarc:1.92.0' +implementation 'com.google.cloud:google-cloud-eventarc:1.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-eventarc" % "1.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-eventarc" % "1.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-eventarc/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-eventarc.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-eventarc/1.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-eventarc/1.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-filestore/README.md b/java-filestore/README.md index fc58e36b8e62..59530021f3f9 100644 --- a/java-filestore/README.md +++ b/java-filestore/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-filestore - 1.93.0 + 1.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-filestore:1.93.0' +implementation 'com.google.cloud:google-cloud-filestore:1.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-filestore" % "1.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-filestore" % "1.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-filestore/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-filestore.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-filestore/1.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-filestore/1.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-financialservices/README.md b/java-financialservices/README.md index 8038b7e25902..1912f203a7a4 100644 --- a/java-financialservices/README.md +++ b/java-financialservices/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-financialservices - 0.33.0 + 0.34.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-financialservices:0.33.0' +implementation 'com.google.cloud:google-cloud-financialservices:0.34.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-financialservices" % "0.33.0" +libraryDependencies += "com.google.cloud" % "google-cloud-financialservices" % "0.34.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-financialservices/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-financialservices.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-financialservices/0.33.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-financialservices/0.34.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-firestore/README.md b/java-firestore/README.md index 75eac5f84200..72a38857574d 100644 --- a/java-firestore/README.md +++ b/java-firestore/README.md @@ -56,13 +56,13 @@ implementation 'com.google.cloud:google-cloud-firestore' If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-firestore:3.42.0' +implementation 'com.google.cloud:google-cloud-firestore:3.43.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-firestore" % "3.42.0" +libraryDependencies += "com.google.cloud" % "google-cloud-firestore" % "3.43.0" ``` ## Authentication @@ -201,7 +201,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-firestore/latest/history [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-firestore.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-firestore/3.42.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-firestore/3.43.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-functions/README.md b/java-functions/README.md index 943878b85664..0dd0f5d61220 100644 --- a/java-functions/README.md +++ b/java-functions/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-functions - 2.94.0 + 2.95.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-functions:2.94.0' +implementation 'com.google.cloud:google-cloud-functions:2.95.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-functions" % "2.94.0" +libraryDependencies += "com.google.cloud" % "google-cloud-functions" % "2.95.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-functions/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-functions.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-functions/2.94.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-functions/2.95.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-gdchardwaremanagement/README.md b/java-gdchardwaremanagement/README.md index b57938180c55..6fd06a96e807 100644 --- a/java-gdchardwaremanagement/README.md +++ b/java-gdchardwaremanagement/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-gdchardwaremanagement - 0.47.0 + 0.48.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-gdchardwaremanagement:0.47.0' +implementation 'com.google.cloud:google-cloud-gdchardwaremanagement:0.48.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-gdchardwaremanagement" % "0.47.0" +libraryDependencies += "com.google.cloud" % "google-cloud-gdchardwaremanagement" % "0.48.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-gdchardwaremanagement/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-gdchardwaremanagement.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-gdchardwaremanagement/0.47.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-gdchardwaremanagement/0.48.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-geminidataanalytics/README.md b/java-geminidataanalytics/README.md index 32396fb630b7..ec4f85556a11 100644 --- a/java-geminidataanalytics/README.md +++ b/java-geminidataanalytics/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-geminidataanalytics - 0.20.0 + 0.21.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-geminidataanalytics:0.20.0' +implementation 'com.google.cloud:google-cloud-geminidataanalytics:0.21.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-geminidataanalytics" % "0.20.0" +libraryDependencies += "com.google.cloud" % "google-cloud-geminidataanalytics" % "0.21.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-geminidataanalytics/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-geminidataanalytics.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-geminidataanalytics/0.20.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-geminidataanalytics/0.21.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-geminidataanalytics/google-cloud-geminidataanalytics/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentServiceClient.java b/java-geminidataanalytics/google-cloud-geminidataanalytics/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentServiceClient.java index fb82be065dc0..0fe4b8fb1105 100644 --- a/java-geminidataanalytics/google-cloud-geminidataanalytics/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentServiceClient.java +++ b/java-geminidataanalytics/google-cloud-geminidataanalytics/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentServiceClient.java @@ -291,8 +291,9 @@ * * *

ListLocations - *

Lists information about the supported locations for this service.This method can be called in two ways: - *

* **List all public locations:** Use the path `GET /v1/locations`.* **List project-visible locations:** Use the path`GET /v1/projects/{project_id}/locations`. This may include publiclocations as well as private or other locations specifically visibleto the project. + *

Lists information about the supported locations for this service. + *

This method lists locations based on the resource scope provided inthe [ListLocationsRequest.name][google.cloud.location.ListLocationsRequest.name] field: ***Global locations**: If `name` is empty, the method lists thepublic locations available to all projects. * **Project-specificlocations**: If `name` follows the format`projects/{project}`, the method lists locations visible to thatspecific project. This includes public, private, or otherproject-specific locations enabled for the project. + *

For gRPC and client library implementations, the resource name ispassed as the `name` field. For direct service calls, the resourcename isincorporated into the request path based on the specific serviceimplementation and version. * *

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    @@ -1938,13 +1939,19 @@ public final UnaryCallable setIamPolicyCallable() { // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Lists information about the supported locations for this service.This method can be called in - * two ways: + * Lists information about the supported locations for this service. * - *

    * **List all public locations:** Use the path `GET /v1/locations`.* - * **List project-visible locations:** Use the path`GET - * /v1/projects/{project_id}/locations`. This may include publiclocations as well as private or - * other locations specifically visibleto the project. + *

    This method lists locations based on the resource scope provided inthe + * [ListLocationsRequest.name][google.cloud.location.ListLocationsRequest.name] field: + * ***Global locations**: If `name` is empty, the method lists thepublic + * locations available to all projects. * **Project-specificlocations**: If + * `name` follows the format`projects/{project}`, the method lists locations visible to + * thatspecific project. This includes public, private, or otherproject-specific locations enabled + * for the project. + * + *

    For gRPC and client library implementations, the resource name ispassed as the `name` field. + * For direct service calls, the resourcename isincorporated into the request path based on the + * specific serviceimplementation and version. * *

    Sample code: * @@ -1977,13 +1984,19 @@ public final ListLocationsPagedResponse listLocations(ListLocationsRequest reque // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Lists information about the supported locations for this service.This method can be called in - * two ways: + * Lists information about the supported locations for this service. + * + *

    This method lists locations based on the resource scope provided inthe + * [ListLocationsRequest.name][google.cloud.location.ListLocationsRequest.name] field: + * ***Global locations**: If `name` is empty, the method lists thepublic + * locations available to all projects. * **Project-specificlocations**: If + * `name` follows the format`projects/{project}`, the method lists locations visible to + * thatspecific project. This includes public, private, or otherproject-specific locations enabled + * for the project. * - *

    * **List all public locations:** Use the path `GET /v1/locations`.* - * **List project-visible locations:** Use the path`GET - * /v1/projects/{project_id}/locations`. This may include publiclocations as well as private or - * other locations specifically visibleto the project. + *

    For gRPC and client library implementations, the resource name ispassed as the `name` field. + * For direct service calls, the resourcename isincorporated into the request path based on the + * specific serviceimplementation and version. * *

    Sample code: * @@ -2017,13 +2030,19 @@ public final ListLocationsPagedResponse listLocations(ListLocationsRequest reque // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Lists information about the supported locations for this service.This method can be called in - * two ways: - * - *

    * **List all public locations:** Use the path `GET /v1/locations`.* - * **List project-visible locations:** Use the path`GET - * /v1/projects/{project_id}/locations`. This may include publiclocations as well as private or - * other locations specifically visibleto the project. + * Lists information about the supported locations for this service. + * + *

    This method lists locations based on the resource scope provided inthe + * [ListLocationsRequest.name][google.cloud.location.ListLocationsRequest.name] field: + * ***Global locations**: If `name` is empty, the method lists thepublic + * locations available to all projects. * **Project-specificlocations**: If + * `name` follows the format`projects/{project}`, the method lists locations visible to + * thatspecific project. This includes public, private, or otherproject-specific locations enabled + * for the project. + * + *

    For gRPC and client library implementations, the resource name ispassed as the `name` field. + * For direct service calls, the resourcename isincorporated into the request path based on the + * specific serviceimplementation and version. * *

    Sample code: * diff --git a/java-geminidataanalytics/google-cloud-geminidataanalytics/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceClient.java b/java-geminidataanalytics/google-cloud-geminidataanalytics/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceClient.java index 78f44d77f4ef..f40c6cff7ffc 100644 --- a/java-geminidataanalytics/google-cloud-geminidataanalytics/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceClient.java +++ b/java-geminidataanalytics/google-cloud-geminidataanalytics/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceClient.java @@ -76,7 +76,7 @@ * * *

    Chat - *

    Answers a data question by generating a stream of [Message][google.cloud.geminidataanalytics.v1alpha.Message] objects. + *

    Answers a data question by generating a stream of [Message][google.cloud.geminidataanalytics.v1.Message] objects. * *

    Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

    *
      @@ -197,8 +197,9 @@ * * *

      ListLocations - *

      Lists information about the supported locations for this service.This method can be called in two ways: - *

      * **List all public locations:** Use the path `GET /v1/locations`.* **List project-visible locations:** Use the path`GET /v1/projects/{project_id}/locations`. This may include publiclocations as well as private or other locations specifically visibleto the project. + *

      Lists information about the supported locations for this service. + *

      This method lists locations based on the resource scope provided inthe [ListLocationsRequest.name][google.cloud.location.ListLocationsRequest.name] field: ***Global locations**: If `name` is empty, the method lists thepublic locations available to all projects. * **Project-specificlocations**: If `name` follows the format`projects/{project}`, the method lists locations visible to thatspecific project. This includes public, private, or otherproject-specific locations enabled for the project. + *

      For gRPC and client library implementations, the resource name ispassed as the `name` field. For direct service calls, the resourcename isincorporated into the request path based on the specific serviceimplementation and version. * *

      Request object method variants only take one parameter, a request object, which must be constructed before the call.

      *
        @@ -337,7 +338,7 @@ public DataChatServiceStub getStub() { // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Answers a data question by generating a stream of - * [Message][google.cloud.geminidataanalytics.v1alpha.Message] objects. + * [Message][google.cloud.geminidataanalytics.v1.Message] objects. * *

        Sample code: * @@ -353,6 +354,7 @@ public DataChatServiceStub getStub() { * .setProject(ProjectName.of("[PROJECT]").toString()) * .setParent("parent-995424086") * .addAllMessages(new ArrayList()) + * .setCredentials(Credentials.newBuilder().build()) * .build(); * ServerStream stream = dataChatServiceClient.chatCallable().call(request); * for (Message response : stream) { @@ -1140,13 +1142,19 @@ public final UnaryCallable queryDataCallabl // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Lists information about the supported locations for this service.This method can be called in - * two ways: + * Lists information about the supported locations for this service. * - *

        * **List all public locations:** Use the path `GET /v1/locations`.* - * **List project-visible locations:** Use the path`GET - * /v1/projects/{project_id}/locations`. This may include publiclocations as well as private or - * other locations specifically visibleto the project. + *

        This method lists locations based on the resource scope provided inthe + * [ListLocationsRequest.name][google.cloud.location.ListLocationsRequest.name] field: + * ***Global locations**: If `name` is empty, the method lists thepublic + * locations available to all projects. * **Project-specificlocations**: If + * `name` follows the format`projects/{project}`, the method lists locations visible to + * thatspecific project. This includes public, private, or otherproject-specific locations enabled + * for the project. + * + *

        For gRPC and client library implementations, the resource name ispassed as the `name` field. + * For direct service calls, the resourcename isincorporated into the request path based on the + * specific serviceimplementation and version. * *

        Sample code: * @@ -1179,13 +1187,19 @@ public final ListLocationsPagedResponse listLocations(ListLocationsRequest reque // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Lists information about the supported locations for this service.This method can be called in - * two ways: + * Lists information about the supported locations for this service. + * + *

        This method lists locations based on the resource scope provided inthe + * [ListLocationsRequest.name][google.cloud.location.ListLocationsRequest.name] field: + * ***Global locations**: If `name` is empty, the method lists thepublic + * locations available to all projects. * **Project-specificlocations**: If + * `name` follows the format`projects/{project}`, the method lists locations visible to + * thatspecific project. This includes public, private, or otherproject-specific locations enabled + * for the project. * - *

        * **List all public locations:** Use the path `GET /v1/locations`.* - * **List project-visible locations:** Use the path`GET - * /v1/projects/{project_id}/locations`. This may include publiclocations as well as private or - * other locations specifically visibleto the project. + *

        For gRPC and client library implementations, the resource name ispassed as the `name` field. + * For direct service calls, the resourcename isincorporated into the request path based on the + * specific serviceimplementation and version. * *

        Sample code: * @@ -1219,13 +1233,19 @@ public final ListLocationsPagedResponse listLocations(ListLocationsRequest reque // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Lists information about the supported locations for this service.This method can be called in - * two ways: - * - *

        * **List all public locations:** Use the path `GET /v1/locations`.* - * **List project-visible locations:** Use the path`GET - * /v1/projects/{project_id}/locations`. This may include publiclocations as well as private or - * other locations specifically visibleto the project. + * Lists information about the supported locations for this service. + * + *

        This method lists locations based on the resource scope provided inthe + * [ListLocationsRequest.name][google.cloud.location.ListLocationsRequest.name] field: + * ***Global locations**: If `name` is empty, the method lists thepublic + * locations available to all projects. * **Project-specificlocations**: If + * `name` follows the format`projects/{project}`, the method lists locations visible to + * thatspecific project. This includes public, private, or otherproject-specific locations enabled + * for the project. + * + *

        For gRPC and client library implementations, the resource name ispassed as the `name` field. + * For direct service calls, the resourcename isincorporated into the request path based on the + * specific serviceimplementation and version. * *

        Sample code: * diff --git a/java-geminidataanalytics/google-cloud-geminidataanalytics/src/main/resources/META-INF/native-image/com.google.cloud.geminidataanalytics.v1beta/reflect-config.json b/java-geminidataanalytics/google-cloud-geminidataanalytics/src/main/resources/META-INF/native-image/com.google.cloud.geminidataanalytics.v1beta/reflect-config.json index 7889c90b6a69..c93fba171856 100644 --- a/java-geminidataanalytics/google-cloud-geminidataanalytics/src/main/resources/META-INF/native-image/com.google.cloud.geminidataanalytics.v1beta/reflect-config.json +++ b/java-geminidataanalytics/google-cloud-geminidataanalytics/src/main/resources/META-INF/native-image/com.google.cloud.geminidataanalytics.v1beta/reflect-config.json @@ -683,6 +683,60 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.geminidataanalytics.v1beta.BigQueryTableReference", "queryAllDeclaredConstructors": true, @@ -881,6 +935,15 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.ChatRequest$Model", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.geminidataanalytics.v1beta.ChatRequest$ThinkingMode", "queryAllDeclaredConstructors": true, @@ -890,6 +953,78 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.Citation", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.Citation$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.CitationAnchor", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.CitationAnchor$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.CitationAnchor$TextMessageCitationAnchor", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.CitationAnchor$TextMessageCitationAnchor$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.CitationSource", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.CitationSource$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.geminidataanalytics.v1beta.ClarificationMessage", "queryAllDeclaredConstructors": true, @@ -1106,6 +1241,15 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.ConversationOptions$Model", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.geminidataanalytics.v1beta.ConversationReference", "queryAllDeclaredConstructors": true, @@ -1322,6 +1466,24 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.geminidataanalytics.v1beta.Datasource", "queryAllDeclaredConstructors": true, @@ -1871,6 +2033,42 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.LookerSettings", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.LookerSettings$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.MatchedQuery", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.MatchedQuery$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.geminidataanalytics.v1beta.Message", "queryAllDeclaredConstructors": true, @@ -1979,6 +2177,24 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters$Parameter", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters$Parameter$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.geminidataanalytics.v1beta.PrivateLookerInstanceInfo", "queryAllDeclaredConstructors": true, @@ -2051,6 +2267,42 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.QueryParameter", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.QueryParameter$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.geminidataanalytics.v1beta.Schema", "queryAllDeclaredConstructors": true, @@ -2285,6 +2537,24 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.UserFunctions", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.geminidataanalytics.v1beta.UserFunctions$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.geminidataanalytics.v1beta.UserMessage", "queryAllDeclaredConstructors": true, diff --git a/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentServiceClientHttpJsonTest.java b/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentServiceClientHttpJsonTest.java index 3d81cfa8befb..71d85abb66e5 100644 --- a/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentServiceClientHttpJsonTest.java +++ b/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentServiceClientHttpJsonTest.java @@ -308,6 +308,7 @@ public void getDataAgentTest() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); mockService.addResponse(expectedResponse); @@ -359,6 +360,7 @@ public void getDataAgentTest2() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); mockService.addResponse(expectedResponse); @@ -410,6 +412,7 @@ public void createDataAgentTest() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); Operation resultOperation = Operation.newBuilder() @@ -470,6 +473,7 @@ public void createDataAgentTest2() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); Operation resultOperation = Operation.newBuilder() @@ -530,6 +534,7 @@ public void createDataAgentSyncTest() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); mockService.addResponse(expectedResponse); @@ -585,6 +590,7 @@ public void createDataAgentSyncTest2() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); mockService.addResponse(expectedResponse); @@ -640,6 +646,7 @@ public void updateDataAgentTest() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); Operation resultOperation = Operation.newBuilder() @@ -659,6 +666,7 @@ public void updateDataAgentTest() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); FieldMask updateMask = FieldMask.newBuilder().build(); @@ -698,6 +706,7 @@ public void updateDataAgentExceptionTest() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); FieldMask updateMask = FieldMask.newBuilder().build(); client.updateDataAgentAsync(dataAgent, updateMask).get(); @@ -718,6 +727,7 @@ public void updateDataAgentSyncTest() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); mockService.addResponse(expectedResponse); @@ -731,6 +741,7 @@ public void updateDataAgentSyncTest() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); FieldMask updateMask = FieldMask.newBuilder().build(); @@ -770,6 +781,7 @@ public void updateDataAgentSyncExceptionTest() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); FieldMask updateMask = FieldMask.newBuilder().build(); client.updateDataAgentSync(dataAgent, updateMask); diff --git a/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentServiceClientTest.java b/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentServiceClientTest.java index 592ae0506e3e..114ca20b0519 100644 --- a/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentServiceClientTest.java +++ b/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentServiceClientTest.java @@ -295,6 +295,7 @@ public void getDataAgentTest() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); mockDataAgentService.addResponse(expectedResponse); @@ -340,6 +341,7 @@ public void getDataAgentTest2() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); mockDataAgentService.addResponse(expectedResponse); @@ -385,6 +387,7 @@ public void createDataAgentTest() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); Operation resultOperation = Operation.newBuilder() @@ -444,6 +447,7 @@ public void createDataAgentTest2() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); Operation resultOperation = Operation.newBuilder() @@ -503,6 +507,7 @@ public void createDataAgentSyncTest() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); mockDataAgentService.addResponse(expectedResponse); @@ -554,6 +559,7 @@ public void createDataAgentSyncTest2() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); mockDataAgentService.addResponse(expectedResponse); @@ -605,6 +611,7 @@ public void updateDataAgentTest() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); Operation resultOperation = Operation.newBuilder() @@ -661,6 +668,7 @@ public void updateDataAgentSyncTest() throws Exception { .setUpdateTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setPurgeTime(Timestamp.newBuilder().build()) + .setKmsKey("kmsKey-1127483058") .build(); mockDataAgentService.addResponse(expectedResponse); diff --git a/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceClientHttpJsonTest.java b/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceClientHttpJsonTest.java index 7aaf92df1cc7..4e1be811b91b 100644 --- a/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceClientHttpJsonTest.java +++ b/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceClientHttpJsonTest.java @@ -106,6 +106,8 @@ public void createConversationTest() throws Exception { .setCreateTime(Timestamp.newBuilder().build()) .setLastUsedTime(Timestamp.newBuilder().build()) .putAllLabels(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setMemoryPaused(true) .build(); mockService.addResponse(expectedResponse); @@ -158,6 +160,8 @@ public void createConversationTest2() throws Exception { .setCreateTime(Timestamp.newBuilder().build()) .setLastUsedTime(Timestamp.newBuilder().build()) .putAllLabels(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setMemoryPaused(true) .build(); mockService.addResponse(expectedResponse); @@ -290,6 +294,8 @@ public void getConversationTest() throws Exception { .setCreateTime(Timestamp.newBuilder().build()) .setLastUsedTime(Timestamp.newBuilder().build()) .putAllLabels(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setMemoryPaused(true) .build(); mockService.addResponse(expectedResponse); @@ -338,6 +344,8 @@ public void getConversationTest2() throws Exception { .setCreateTime(Timestamp.newBuilder().build()) .setLastUsedTime(Timestamp.newBuilder().build()) .putAllLabels(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setMemoryPaused(true) .build(); mockService.addResponse(expectedResponse); diff --git a/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceClientTest.java b/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceClientTest.java index a55658bef262..ade658255e6e 100644 --- a/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceClientTest.java +++ b/java-geminidataanalytics/google-cloud-geminidataanalytics/src/test/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceClientTest.java @@ -109,6 +109,7 @@ public void chatTest() throws Exception { .setProject(ProjectName.of("[PROJECT]").toString()) .setParent("parent-995424086") .addAllMessages(new ArrayList()) + .setCredentials(Credentials.newBuilder().build()) .build(); MockStreamObserver responseObserver = new MockStreamObserver<>(); @@ -130,6 +131,7 @@ public void chatExceptionTest() throws Exception { .setProject(ProjectName.of("[PROJECT]").toString()) .setParent("parent-995424086") .addAllMessages(new ArrayList()) + .setCredentials(Credentials.newBuilder().build()) .build(); MockStreamObserver responseObserver = new MockStreamObserver<>(); @@ -156,6 +158,8 @@ public void createConversationTest() throws Exception { .setCreateTime(Timestamp.newBuilder().build()) .setLastUsedTime(Timestamp.newBuilder().build()) .putAllLabels(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setMemoryPaused(true) .build(); mockDataChatService.addResponse(expectedResponse); @@ -204,6 +208,8 @@ public void createConversationTest2() throws Exception { .setCreateTime(Timestamp.newBuilder().build()) .setLastUsedTime(Timestamp.newBuilder().build()) .putAllLabels(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setMemoryPaused(true) .build(); mockDataChatService.addResponse(expectedResponse); @@ -320,6 +326,8 @@ public void getConversationTest() throws Exception { .setCreateTime(Timestamp.newBuilder().build()) .setLastUsedTime(Timestamp.newBuilder().build()) .putAllLabels(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setMemoryPaused(true) .build(); mockDataChatService.addResponse(expectedResponse); @@ -362,6 +370,8 @@ public void getConversationTest2() throws Exception { .setCreateTime(Timestamp.newBuilder().build()) .setLastUsedTime(Timestamp.newBuilder().build()) .putAllLabels(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setMemoryPaused(true) .build(); mockDataChatService.addResponse(expectedResponse); diff --git a/java-geminidataanalytics/grpc-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceGrpc.java b/java-geminidataanalytics/grpc-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceGrpc.java index 72da42840b7c..6211823fa5c2 100644 --- a/java-geminidataanalytics/grpc-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceGrpc.java +++ b/java-geminidataanalytics/grpc-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceGrpc.java @@ -433,7 +433,7 @@ public interface AsyncService { * *

              * Answers a data question by generating a stream of
        -     * [Message][google.cloud.geminidataanalytics.v1alpha.Message] objects.
        +     * [Message][google.cloud.geminidataanalytics.v1.Message] objects.
              * 
        */ default void chat( @@ -578,7 +578,7 @@ protected DataChatServiceStub build(io.grpc.Channel channel, io.grpc.CallOptions * *
              * Answers a data question by generating a stream of
        -     * [Message][google.cloud.geminidataanalytics.v1alpha.Message] objects.
        +     * [Message][google.cloud.geminidataanalytics.v1.Message] objects.
              * 
        */ public void chat( @@ -719,7 +719,7 @@ protected DataChatServiceBlockingV2Stub build( * *
              * Answers a data question by generating a stream of
        -     * [Message][google.cloud.geminidataanalytics.v1alpha.Message] objects.
        +     * [Message][google.cloud.geminidataanalytics.v1.Message] objects.
              * 
        */ @io.grpc.ExperimentalApi("https://github.com/grpc/grpc-java/issues/10918") @@ -841,7 +841,7 @@ protected DataChatServiceBlockingStub build( * *
              * Answers a data question by generating a stream of
        -     * [Message][google.cloud.geminidataanalytics.v1alpha.Message] objects.
        +     * [Message][google.cloud.geminidataanalytics.v1.Message] objects.
              * 
        */ public java.util.Iterator chat( diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/AlloyDbDatabaseReference.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/AlloyDbDatabaseReference.java index 13146accca8b..9c6901cd79d4 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/AlloyDbDatabaseReference.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/AlloyDbDatabaseReference.java @@ -58,6 +58,7 @@ private AlloyDbDatabaseReference() { instanceId_ = ""; databaseId_ = ""; tableIds_ = com.google.protobuf.LazyStringArrayList.emptyList(); + databaseTableReferences_ = java.util.Collections.emptyList(); } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -408,6 +409,107 @@ public com.google.protobuf.ByteString getTableIdsBytes(int index) { return tableIds_.getByteString(index); } + public static final int DATABASE_TABLE_REFERENCES_FIELD_NUMBER = 7; + + @SuppressWarnings("serial") + private java.util.List + databaseTableReferences_; + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getDatabaseTableReferencesList() { + return databaseTableReferences_; + } + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + getDatabaseTableReferencesOrBuilderList() { + return databaseTableReferences_; + } + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getDatabaseTableReferencesCount() { + return databaseTableReferences_.size(); + } + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + getDatabaseTableReferences(int index) { + return databaseTableReferences_.get(index); + } + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder + getDatabaseTableReferencesOrBuilder(int index) { + return databaseTableReferences_.get(index); + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -440,6 +542,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < tableIds_.size(); i++) { com.google.protobuf.GeneratedMessage.writeString(output, 6, tableIds_.getRaw(i)); } + for (int i = 0; i < databaseTableReferences_.size(); i++) { + output.writeMessage(7, databaseTableReferences_.get(i)); + } getUnknownFields().writeTo(output); } @@ -472,6 +577,11 @@ public int getSerializedSize() { size += dataSize; size += 1 * getTableIdsList().size(); } + for (int i = 0; i < databaseTableReferences_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 7, databaseTableReferences_.get(i)); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -494,6 +604,8 @@ public boolean equals(final java.lang.Object obj) { if (!getInstanceId().equals(other.getInstanceId())) return false; if (!getDatabaseId().equals(other.getDatabaseId())) return false; if (!getTableIdsList().equals(other.getTableIdsList())) return false; + if (!getDatabaseTableReferencesList().equals(other.getDatabaseTableReferencesList())) + return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -519,6 +631,10 @@ public int hashCode() { hash = (37 * hash) + TABLE_IDS_FIELD_NUMBER; hash = (53 * hash) + getTableIdsList().hashCode(); } + if (getDatabaseTableReferencesCount() > 0) { + hash = (37 * hash) + DATABASE_TABLE_REFERENCES_FIELD_NUMBER; + hash = (53 * hash) + getDatabaseTableReferencesList().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -668,6 +784,13 @@ public Builder clear() { instanceId_ = ""; databaseId_ = ""; tableIds_ = com.google.protobuf.LazyStringArrayList.emptyList(); + if (databaseTableReferencesBuilder_ == null) { + databaseTableReferences_ = java.util.Collections.emptyList(); + } else { + databaseTableReferences_ = null; + databaseTableReferencesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000040); return this; } @@ -697,6 +820,7 @@ public com.google.cloud.geminidataanalytics.v1beta.AlloyDbDatabaseReference buil public com.google.cloud.geminidataanalytics.v1beta.AlloyDbDatabaseReference buildPartial() { com.google.cloud.geminidataanalytics.v1beta.AlloyDbDatabaseReference result = new com.google.cloud.geminidataanalytics.v1beta.AlloyDbDatabaseReference(this); + buildPartialRepeatedFields(result); if (bitField0_ != 0) { buildPartial0(result); } @@ -704,6 +828,20 @@ public com.google.cloud.geminidataanalytics.v1beta.AlloyDbDatabaseReference buil return result; } + private void buildPartialRepeatedFields( + com.google.cloud.geminidataanalytics.v1beta.AlloyDbDatabaseReference result) { + if (databaseTableReferencesBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0)) { + databaseTableReferences_ = + java.util.Collections.unmodifiableList(databaseTableReferences_); + bitField0_ = (bitField0_ & ~0x00000040); + } + result.databaseTableReferences_ = databaseTableReferences_; + } else { + result.databaseTableReferences_ = databaseTableReferencesBuilder_.build(); + } + } + private void buildPartial0( com.google.cloud.geminidataanalytics.v1beta.AlloyDbDatabaseReference result) { int from_bitField0_ = bitField0_; @@ -779,6 +917,33 @@ public Builder mergeFrom( } onChanged(); } + if (databaseTableReferencesBuilder_ == null) { + if (!other.databaseTableReferences_.isEmpty()) { + if (databaseTableReferences_.isEmpty()) { + databaseTableReferences_ = other.databaseTableReferences_; + bitField0_ = (bitField0_ & ~0x00000040); + } else { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.addAll(other.databaseTableReferences_); + } + onChanged(); + } + } else { + if (!other.databaseTableReferences_.isEmpty()) { + if (databaseTableReferencesBuilder_.isEmpty()) { + databaseTableReferencesBuilder_.dispose(); + databaseTableReferencesBuilder_ = null; + databaseTableReferences_ = other.databaseTableReferences_; + bitField0_ = (bitField0_ & ~0x00000040); + databaseTableReferencesBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetDatabaseTableReferencesFieldBuilder() + : null; + } else { + databaseTableReferencesBuilder_.addAllMessages(other.databaseTableReferences_); + } + } + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -842,6 +1007,20 @@ public Builder mergeFrom( tableIds_.add(s); break; } // case 50 + case 58: + { + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference m = + input.readMessage( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.parser(), + extensionRegistry); + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(m); + } else { + databaseTableReferencesBuilder_.addMessage(m); + } + break; + } // case 58 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -1599,6 +1778,474 @@ public Builder addTableIdsBytes(com.google.protobuf.ByteString value) { return this; } + private java.util.List + databaseTableReferences_ = java.util.Collections.emptyList(); + + private void ensureDatabaseTableReferencesIsMutable() { + if (!((bitField0_ & 0x00000040) != 0)) { + databaseTableReferences_ = + new java.util.ArrayList< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference>( + databaseTableReferences_); + bitField0_ |= 0x00000040; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + databaseTableReferencesBuilder_; + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List + getDatabaseTableReferencesList() { + if (databaseTableReferencesBuilder_ == null) { + return java.util.Collections.unmodifiableList(databaseTableReferences_); + } else { + return databaseTableReferencesBuilder_.getMessageList(); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public int getDatabaseTableReferencesCount() { + if (databaseTableReferencesBuilder_ == null) { + return databaseTableReferences_.size(); + } else { + return databaseTableReferencesBuilder_.getCount(); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + getDatabaseTableReferences(int index) { + if (databaseTableReferencesBuilder_ == null) { + return databaseTableReferences_.get(index); + } else { + return databaseTableReferencesBuilder_.getMessage(index); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setDatabaseTableReferences( + int index, com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference value) { + if (databaseTableReferencesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.set(index, value); + onChanged(); + } else { + databaseTableReferencesBuilder_.setMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setDatabaseTableReferences( + int index, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + builderForValue) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.set(index, builderForValue.build()); + onChanged(); + } else { + databaseTableReferencesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addDatabaseTableReferences( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference value) { + if (databaseTableReferencesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(value); + onChanged(); + } else { + databaseTableReferencesBuilder_.addMessage(value); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addDatabaseTableReferences( + int index, com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference value) { + if (databaseTableReferencesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(index, value); + onChanged(); + } else { + databaseTableReferencesBuilder_.addMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addDatabaseTableReferences( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + builderForValue) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(builderForValue.build()); + onChanged(); + } else { + databaseTableReferencesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addDatabaseTableReferences( + int index, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + builderForValue) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(index, builderForValue.build()); + onChanged(); + } else { + databaseTableReferencesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllDatabaseTableReferences( + java.lang.Iterable< + ? extends com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference> + values) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, databaseTableReferences_); + onChanged(); + } else { + databaseTableReferencesBuilder_.addAllMessages(values); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearDatabaseTableReferences() { + if (databaseTableReferencesBuilder_ == null) { + databaseTableReferences_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000040); + onChanged(); + } else { + databaseTableReferencesBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeDatabaseTableReferences(int index) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.remove(index); + onChanged(); + } else { + databaseTableReferencesBuilder_.remove(index); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + getDatabaseTableReferencesBuilder(int index) { + return internalGetDatabaseTableReferencesFieldBuilder().getBuilder(index); + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder + getDatabaseTableReferencesOrBuilder(int index) { + if (databaseTableReferencesBuilder_ == null) { + return databaseTableReferences_.get(index); + } else { + return databaseTableReferencesBuilder_.getMessageOrBuilder(index); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + getDatabaseTableReferencesOrBuilderList() { + if (databaseTableReferencesBuilder_ != null) { + return databaseTableReferencesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(databaseTableReferences_); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + addDatabaseTableReferencesBuilder() { + return internalGetDatabaseTableReferencesFieldBuilder() + .addBuilder( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + .getDefaultInstance()); + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + addDatabaseTableReferencesBuilder(int index) { + return internalGetDatabaseTableReferencesFieldBuilder() + .addBuilder( + index, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + .getDefaultInstance()); + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder> + getDatabaseTableReferencesBuilderList() { + return internalGetDatabaseTableReferencesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + internalGetDatabaseTableReferencesFieldBuilder() { + if (databaseTableReferencesBuilder_ == null) { + databaseTableReferencesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder>( + databaseTableReferences_, + ((bitField0_ & 0x00000040) != 0), + getParentForChildren(), + isClean()); + databaseTableReferences_ = null; + } + return databaseTableReferencesBuilder_; + } + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.AlloyDbDatabaseReference) } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/AlloyDbDatabaseReferenceOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/AlloyDbDatabaseReferenceOrBuilder.java index e41d258fa26d..d58220f94eb8 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/AlloyDbDatabaseReferenceOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/AlloyDbDatabaseReferenceOrBuilder.java @@ -209,4 +209,84 @@ public interface AlloyDbDatabaseReferenceOrBuilder * @return The bytes of the tableIds at the given index. */ com.google.protobuf.ByteString getTableIdsBytes(int index); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List + getDatabaseTableReferencesList(); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference getDatabaseTableReferences( + int index); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getDatabaseTableReferencesCount(); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + getDatabaseTableReferencesOrBuilderList(); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder + getDatabaseTableReferencesOrBuilder(int index); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryPropertyGraphReference.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryPropertyGraphReference.java new file mode 100644 index 000000000000..4bd7d859f9b2 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryPropertyGraphReference.java @@ -0,0 +1,998 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/datasource.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +/** + * + * + *
        + * Message representing a reference to a single BigQuery property graph.
        + * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference} + */ +@com.google.protobuf.Generated +public final class BigQueryPropertyGraphReference extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) + BigQueryPropertyGraphReferenceOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "BigQueryPropertyGraphReference"); + } + + // Use BigQueryPropertyGraphReference.newBuilder() to construct. + private BigQueryPropertyGraphReference(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private BigQueryPropertyGraphReference() { + projectId_ = ""; + datasetId_ = ""; + propertyGraphId_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.DatasourceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryPropertyGraphReference_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.DatasourceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryPropertyGraphReference_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.class, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder + .class); + } + + public static final int PROJECT_ID_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object projectId_ = ""; + + /** + * + * + *
        +   * Required. The project that the property graph belongs to.
        +   * 
        + * + * string project_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The projectId. + */ + @java.lang.Override + public java.lang.String getProjectId() { + java.lang.Object ref = projectId_; + 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(); + projectId_ = s; + return s; + } + } + + /** + * + * + *
        +   * Required. The project that the property graph belongs to.
        +   * 
        + * + * string project_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for projectId. + */ + @java.lang.Override + public com.google.protobuf.ByteString getProjectIdBytes() { + java.lang.Object ref = projectId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + projectId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int DATASET_ID_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object datasetId_ = ""; + + /** + * + * + *
        +   * Required. The dataset that the property graph belongs to.
        +   * 
        + * + * string dataset_id = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The datasetId. + */ + @java.lang.Override + public java.lang.String getDatasetId() { + java.lang.Object ref = datasetId_; + 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(); + datasetId_ = s; + return s; + } + } + + /** + * + * + *
        +   * Required. The dataset that the property graph belongs to.
        +   * 
        + * + * string dataset_id = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for datasetId. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDatasetIdBytes() { + java.lang.Object ref = datasetId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + datasetId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PROPERTY_GRAPH_ID_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object propertyGraphId_ = ""; + + /** + * + * + *
        +   * Required. The property graph id.
        +   * 
        + * + * string property_graph_id = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The propertyGraphId. + */ + @java.lang.Override + public java.lang.String getPropertyGraphId() { + java.lang.Object ref = propertyGraphId_; + 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(); + propertyGraphId_ = s; + return s; + } + } + + /** + * + * + *
        +   * Required. The property graph id.
        +   * 
        + * + * string property_graph_id = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for propertyGraphId. + */ + @java.lang.Override + public com.google.protobuf.ByteString getPropertyGraphIdBytes() { + java.lang.Object ref = propertyGraphId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + propertyGraphId_ = 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(projectId_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, projectId_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(datasetId_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, datasetId_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(propertyGraphId_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, propertyGraphId_); + } + 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(projectId_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, projectId_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(datasetId_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, datasetId_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(propertyGraphId_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, propertyGraphId_); + } + 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.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference)) { + return super.equals(obj); + } + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference other = + (com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) obj; + + if (!getProjectId().equals(other.getProjectId())) return false; + if (!getDatasetId().equals(other.getDatasetId())) return false; + if (!getPropertyGraphId().equals(other.getPropertyGraphId())) 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) + PROJECT_ID_FIELD_NUMBER; + hash = (53 * hash) + getProjectId().hashCode(); + hash = (37 * hash) + DATASET_ID_FIELD_NUMBER; + hash = (53 * hash) + getDatasetId().hashCode(); + hash = (37 * hash) + PROPERTY_GRAPH_ID_FIELD_NUMBER; + hash = (53 * hash) + getPropertyGraphId().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + 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.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + 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.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + 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.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + 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.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference 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; + } + + /** + * + * + *
        +   * Message representing a reference to a single BigQuery property graph.
        +   * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.DatasourceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryPropertyGraphReference_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.DatasourceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryPropertyGraphReference_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.class, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder + .class); + } + + // Construct using + // com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + projectId_ = ""; + datasetId_ = ""; + propertyGraphId_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.geminidataanalytics.v1beta.DatasourceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryPropertyGraphReference_descriptor; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + getDefaultInstanceForType() { + return com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference build() { + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + buildPartial() { + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference result = + new com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.projectId_ = projectId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.datasetId_ = datasetId_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.propertyGraphId_ = propertyGraphId_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) { + return mergeFrom( + (com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference other) { + if (other + == com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + .getDefaultInstance()) return this; + if (!other.getProjectId().isEmpty()) { + projectId_ = other.projectId_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getDatasetId().isEmpty()) { + datasetId_ = other.datasetId_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getPropertyGraphId().isEmpty()) { + propertyGraphId_ = other.propertyGraphId_; + bitField0_ |= 0x00000004; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + projectId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + datasetId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + propertyGraphId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object projectId_ = ""; + + /** + * + * + *
        +     * Required. The project that the property graph belongs to.
        +     * 
        + * + * string project_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The projectId. + */ + public java.lang.String getProjectId() { + java.lang.Object ref = projectId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + projectId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * Required. The project that the property graph belongs to.
        +     * 
        + * + * string project_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for projectId. + */ + public com.google.protobuf.ByteString getProjectIdBytes() { + java.lang.Object ref = projectId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + projectId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * Required. The project that the property graph belongs to.
        +     * 
        + * + * string project_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The projectId to set. + * @return This builder for chaining. + */ + public Builder setProjectId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + projectId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Required. The project that the property graph belongs to.
        +     * 
        + * + * string project_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearProjectId() { + projectId_ = getDefaultInstance().getProjectId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Required. The project that the property graph belongs to.
        +     * 
        + * + * string project_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The bytes for projectId to set. + * @return This builder for chaining. + */ + public Builder setProjectIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + projectId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object datasetId_ = ""; + + /** + * + * + *
        +     * Required. The dataset that the property graph belongs to.
        +     * 
        + * + * string dataset_id = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The datasetId. + */ + public java.lang.String getDatasetId() { + java.lang.Object ref = datasetId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + datasetId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * Required. The dataset that the property graph belongs to.
        +     * 
        + * + * string dataset_id = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for datasetId. + */ + public com.google.protobuf.ByteString getDatasetIdBytes() { + java.lang.Object ref = datasetId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + datasetId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * Required. The dataset that the property graph belongs to.
        +     * 
        + * + * string dataset_id = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The datasetId to set. + * @return This builder for chaining. + */ + public Builder setDatasetId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + datasetId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Required. The dataset that the property graph belongs to.
        +     * 
        + * + * string dataset_id = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearDatasetId() { + datasetId_ = getDefaultInstance().getDatasetId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Required. The dataset that the property graph belongs to.
        +     * 
        + * + * string dataset_id = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The bytes for datasetId to set. + * @return This builder for chaining. + */ + public Builder setDatasetIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + datasetId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object propertyGraphId_ = ""; + + /** + * + * + *
        +     * Required. The property graph id.
        +     * 
        + * + * string property_graph_id = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The propertyGraphId. + */ + public java.lang.String getPropertyGraphId() { + java.lang.Object ref = propertyGraphId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + propertyGraphId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * Required. The property graph id.
        +     * 
        + * + * string property_graph_id = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for propertyGraphId. + */ + public com.google.protobuf.ByteString getPropertyGraphIdBytes() { + java.lang.Object ref = propertyGraphId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + propertyGraphId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * Required. The property graph id.
        +     * 
        + * + * string property_graph_id = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The propertyGraphId to set. + * @return This builder for chaining. + */ + public Builder setPropertyGraphId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + propertyGraphId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Required. The property graph id.
        +     * 
        + * + * string property_graph_id = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearPropertyGraphId() { + propertyGraphId_ = getDefaultInstance().getPropertyGraphId(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Required. The property graph id.
        +     * 
        + * + * string property_graph_id = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The bytes for propertyGraphId to set. + * @return This builder for chaining. + */ + public Builder setPropertyGraphIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + propertyGraphId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) + } + + // @@protoc_insertion_point(class_scope:google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) + private static final com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference(); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public BigQueryPropertyGraphReference parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryPropertyGraphReferenceOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryPropertyGraphReferenceOrBuilder.java new file mode 100644 index 000000000000..acbabc7ae2b1 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryPropertyGraphReferenceOrBuilder.java @@ -0,0 +1,106 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/datasource.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +@com.google.protobuf.Generated +public interface BigQueryPropertyGraphReferenceOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
        +   * Required. The project that the property graph belongs to.
        +   * 
        + * + * string project_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The projectId. + */ + java.lang.String getProjectId(); + + /** + * + * + *
        +   * Required. The project that the property graph belongs to.
        +   * 
        + * + * string project_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for projectId. + */ + com.google.protobuf.ByteString getProjectIdBytes(); + + /** + * + * + *
        +   * Required. The dataset that the property graph belongs to.
        +   * 
        + * + * string dataset_id = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The datasetId. + */ + java.lang.String getDatasetId(); + + /** + * + * + *
        +   * Required. The dataset that the property graph belongs to.
        +   * 
        + * + * string dataset_id = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for datasetId. + */ + com.google.protobuf.ByteString getDatasetIdBytes(); + + /** + * + * + *
        +   * Required. The property graph id.
        +   * 
        + * + * string property_graph_id = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The propertyGraphId. + */ + java.lang.String getPropertyGraphId(); + + /** + * + * + *
        +   * Required. The property graph id.
        +   * 
        + * + * string property_graph_id = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for propertyGraphId. + */ + com.google.protobuf.ByteString getPropertyGraphIdBytes(); +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryRoutine.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryRoutine.java new file mode 100644 index 000000000000..9777c877ddf7 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryRoutine.java @@ -0,0 +1,931 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +/** + * + * + *
        + * A reference to a BigQuery routine.
        + * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.BigQueryRoutine} + */ +@com.google.protobuf.Generated +public final class BigQueryRoutine extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.BigQueryRoutine) + BigQueryRoutineOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "BigQueryRoutine"); + } + + // Use BigQueryRoutine.newBuilder() to construct. + private BigQueryRoutine(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private BigQueryRoutine() { + description_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutine_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutine_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.class, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.Builder.class); + } + + private int bitField0_; + public static final int ROUTINE_REFERENCE_FIELD_NUMBER = 1; + private com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routineReference_; + + /** + * + * + *
        +   * The reference to the BigQuery routine.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + * + * @return Whether the routineReference field is set. + */ + @java.lang.Override + public boolean hasRoutineReference() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
        +   * The reference to the BigQuery routine.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + * + * @return The routineReference. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference + getRoutineReference() { + return routineReference_ == null + ? com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference.getDefaultInstance() + : routineReference_; + } + + /** + * + * + *
        +   * The reference to the BigQuery routine.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReferenceOrBuilder + getRoutineReferenceOrBuilder() { + return routineReference_ == null + ? com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference.getDefaultInstance() + : routineReference_; + } + + public static final int DESCRIPTION_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object description_ = ""; + + /** + * + * + *
        +   * User override or addition to description, to tell the agent when to use the
        +   * UDF.
        +   * 
        + * + * string description = 2; + * + * @return The description. + */ + @java.lang.Override + public java.lang.String getDescription() { + java.lang.Object ref = description_; + 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(); + description_ = s; + return s; + } + } + + /** + * + * + *
        +   * User override or addition to description, to tell the agent when to use the
        +   * UDF.
        +   * 
        + * + * string description = 2; + * + * @return The bytes for description. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDescriptionBytes() { + java.lang.Object ref = description_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + description_ = 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)) { + output.writeMessage(1, getRoutineReference()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, description_); + } + 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, getRoutineReference()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, description_); + } + 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.cloud.geminidataanalytics.v1beta.BigQueryRoutine)) { + return super.equals(obj); + } + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine other = + (com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine) obj; + + if (hasRoutineReference() != other.hasRoutineReference()) return false; + if (hasRoutineReference()) { + if (!getRoutineReference().equals(other.getRoutineReference())) return false; + } + if (!getDescription().equals(other.getDescription())) 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 (hasRoutineReference()) { + hash = (37 * hash) + ROUTINE_REFERENCE_FIELD_NUMBER; + hash = (53 * hash) + getRoutineReference().hashCode(); + } + hash = (37 * hash) + DESCRIPTION_FIELD_NUMBER; + hash = (53 * hash) + getDescription().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine 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.cloud.geminidataanalytics.v1beta.BigQueryRoutine parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine 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.cloud.geminidataanalytics.v1beta.BigQueryRoutine parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine 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.cloud.geminidataanalytics.v1beta.BigQueryRoutine parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine 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.cloud.geminidataanalytics.v1beta.BigQueryRoutine 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 reference to a BigQuery routine.
        +   * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.BigQueryRoutine} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.geminidataanalytics.v1beta.BigQueryRoutine) + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutine_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutine_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.class, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.Builder.class); + } + + // Construct using com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetRoutineReferenceFieldBuilder(); + } + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + routineReference_ = null; + if (routineReferenceBuilder_ != null) { + routineReferenceBuilder_.dispose(); + routineReferenceBuilder_ = null; + } + description_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutine_descriptor; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine getDefaultInstanceForType() { + return com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine build() { + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine buildPartial() { + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine result = + new com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.routineReference_ = + routineReferenceBuilder_ == null ? routineReference_ : routineReferenceBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.description_ = description_; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine) { + return mergeFrom((com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine other) { + if (other == com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.getDefaultInstance()) + return this; + if (other.hasRoutineReference()) { + mergeRoutineReference(other.getRoutineReference()); + } + if (!other.getDescription().isEmpty()) { + description_ = other.description_; + bitField0_ |= 0x00000002; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + input.readMessage( + internalGetRoutineReferenceFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + description_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routineReference_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReferenceOrBuilder> + routineReferenceBuilder_; + + /** + * + * + *
        +     * The reference to the BigQuery routine.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + * + * @return Whether the routineReference field is set. + */ + public boolean hasRoutineReference() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
        +     * The reference to the BigQuery routine.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + * + * @return The routineReference. + */ + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference + getRoutineReference() { + if (routineReferenceBuilder_ == null) { + return routineReference_ == null + ? com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference + .getDefaultInstance() + : routineReference_; + } else { + return routineReferenceBuilder_.getMessage(); + } + } + + /** + * + * + *
        +     * The reference to the BigQuery routine.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + */ + public Builder setRoutineReference( + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference value) { + if (routineReferenceBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + routineReference_ = value; + } else { + routineReferenceBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
        +     * The reference to the BigQuery routine.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + */ + public Builder setRoutineReference( + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference.Builder + builderForValue) { + if (routineReferenceBuilder_ == null) { + routineReference_ = builderForValue.build(); + } else { + routineReferenceBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
        +     * The reference to the BigQuery routine.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + */ + public Builder mergeRoutineReference( + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference value) { + if (routineReferenceBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0) + && routineReference_ != null + && routineReference_ + != com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference + .getDefaultInstance()) { + getRoutineReferenceBuilder().mergeFrom(value); + } else { + routineReference_ = value; + } + } else { + routineReferenceBuilder_.mergeFrom(value); + } + if (routineReference_ != null) { + bitField0_ |= 0x00000001; + onChanged(); + } + return this; + } + + /** + * + * + *
        +     * The reference to the BigQuery routine.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + */ + public Builder clearRoutineReference() { + bitField0_ = (bitField0_ & ~0x00000001); + routineReference_ = null; + if (routineReferenceBuilder_ != null) { + routineReferenceBuilder_.dispose(); + routineReferenceBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
        +     * The reference to the BigQuery routine.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference.Builder + getRoutineReferenceBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return internalGetRoutineReferenceFieldBuilder().getBuilder(); + } + + /** + * + * + *
        +     * The reference to the BigQuery routine.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReferenceOrBuilder + getRoutineReferenceOrBuilder() { + if (routineReferenceBuilder_ != null) { + return routineReferenceBuilder_.getMessageOrBuilder(); + } else { + return routineReference_ == null + ? com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference + .getDefaultInstance() + : routineReference_; + } + } + + /** + * + * + *
        +     * The reference to the BigQuery routine.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReferenceOrBuilder> + internalGetRoutineReferenceFieldBuilder() { + if (routineReferenceBuilder_ == null) { + routineReferenceBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReferenceOrBuilder>( + getRoutineReference(), getParentForChildren(), isClean()); + routineReference_ = null; + } + return routineReferenceBuilder_; + } + + private java.lang.Object description_ = ""; + + /** + * + * + *
        +     * User override or addition to description, to tell the agent when to use the
        +     * UDF.
        +     * 
        + * + * string description = 2; + * + * @return The description. + */ + public java.lang.String getDescription() { + java.lang.Object ref = description_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + description_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * User override or addition to description, to tell the agent when to use the
        +     * UDF.
        +     * 
        + * + * string description = 2; + * + * @return The bytes for description. + */ + public com.google.protobuf.ByteString getDescriptionBytes() { + java.lang.Object ref = description_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + description_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * User override or addition to description, to tell the agent when to use the
        +     * UDF.
        +     * 
        + * + * string description = 2; + * + * @param value The description to set. + * @return This builder for chaining. + */ + public Builder setDescription(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + description_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
        +     * User override or addition to description, to tell the agent when to use the
        +     * UDF.
        +     * 
        + * + * string description = 2; + * + * @return This builder for chaining. + */ + public Builder clearDescription() { + description_ = getDefaultInstance().getDescription(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
        +     * User override or addition to description, to tell the agent when to use the
        +     * UDF.
        +     * 
        + * + * string description = 2; + * + * @param value The bytes for description to set. + * @return This builder for chaining. + */ + public Builder setDescriptionBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + description_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.BigQueryRoutine) + } + + // @@protoc_insertion_point(class_scope:google.cloud.geminidataanalytics.v1beta.BigQueryRoutine) + private static final com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine(); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public BigQueryRoutine parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryRoutineOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryRoutineOrBuilder.java new file mode 100644 index 000000000000..e869d9a37c15 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryRoutineOrBuilder.java @@ -0,0 +1,97 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +@com.google.protobuf.Generated +public interface BigQueryRoutineOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.BigQueryRoutine) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
        +   * The reference to the BigQuery routine.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + * + * @return Whether the routineReference field is set. + */ + boolean hasRoutineReference(); + + /** + * + * + *
        +   * The reference to the BigQuery routine.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + * + * @return The routineReference. + */ + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference getRoutineReference(); + + /** + * + * + *
        +   * The reference to the BigQuery routine.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference routine_reference = 1; + * + */ + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReferenceOrBuilder + getRoutineReferenceOrBuilder(); + + /** + * + * + *
        +   * User override or addition to description, to tell the agent when to use the
        +   * UDF.
        +   * 
        + * + * string description = 2; + * + * @return The description. + */ + java.lang.String getDescription(); + + /** + * + * + *
        +   * User override or addition to description, to tell the agent when to use the
        +   * UDF.
        +   * 
        + * + * string description = 2; + * + * @return The bytes for description. + */ + com.google.protobuf.ByteString getDescriptionBytes(); +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryRoutineReference.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryRoutineReference.java new file mode 100644 index 000000000000..ccde9195dafd --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryRoutineReference.java @@ -0,0 +1,986 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +/** + * + * + *
        + * A reference to a BigQuery routine.
        + * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference} + */ +@com.google.protobuf.Generated +public final class BigQueryRoutineReference extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference) + BigQueryRoutineReferenceOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "BigQueryRoutineReference"); + } + + // Use BigQueryRoutineReference.newBuilder() to construct. + private BigQueryRoutineReference(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private BigQueryRoutineReference() { + projectId_ = ""; + datasetId_ = ""; + routineId_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutineReference_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutineReference_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference.class, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference.Builder.class); + } + + public static final int PROJECT_ID_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object projectId_ = ""; + + /** + * + * + *
        +   * The project ID of the routine.
        +   * 
        + * + * string project_id = 1; + * + * @return The projectId. + */ + @java.lang.Override + public java.lang.String getProjectId() { + java.lang.Object ref = projectId_; + 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(); + projectId_ = s; + return s; + } + } + + /** + * + * + *
        +   * The project ID of the routine.
        +   * 
        + * + * string project_id = 1; + * + * @return The bytes for projectId. + */ + @java.lang.Override + public com.google.protobuf.ByteString getProjectIdBytes() { + java.lang.Object ref = projectId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + projectId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int DATASET_ID_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object datasetId_ = ""; + + /** + * + * + *
        +   * The dataset ID of the routine.
        +   * 
        + * + * string dataset_id = 2; + * + * @return The datasetId. + */ + @java.lang.Override + public java.lang.String getDatasetId() { + java.lang.Object ref = datasetId_; + 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(); + datasetId_ = s; + return s; + } + } + + /** + * + * + *
        +   * The dataset ID of the routine.
        +   * 
        + * + * string dataset_id = 2; + * + * @return The bytes for datasetId. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDatasetIdBytes() { + java.lang.Object ref = datasetId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + datasetId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ROUTINE_ID_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object routineId_ = ""; + + /** + * + * + *
        +   * The routine ID of the routine.
        +   * 
        + * + * string routine_id = 3; + * + * @return The routineId. + */ + @java.lang.Override + public java.lang.String getRoutineId() { + java.lang.Object ref = routineId_; + 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(); + routineId_ = s; + return s; + } + } + + /** + * + * + *
        +   * The routine ID of the routine.
        +   * 
        + * + * string routine_id = 3; + * + * @return The bytes for routineId. + */ + @java.lang.Override + public com.google.protobuf.ByteString getRoutineIdBytes() { + java.lang.Object ref = routineId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + routineId_ = 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(projectId_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, projectId_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(datasetId_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, datasetId_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(routineId_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, routineId_); + } + 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(projectId_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, projectId_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(datasetId_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, datasetId_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(routineId_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, routineId_); + } + 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.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference)) { + return super.equals(obj); + } + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference other = + (com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference) obj; + + if (!getProjectId().equals(other.getProjectId())) return false; + if (!getDatasetId().equals(other.getDatasetId())) return false; + if (!getRoutineId().equals(other.getRoutineId())) 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) + PROJECT_ID_FIELD_NUMBER; + hash = (53 * hash) + getProjectId().hashCode(); + hash = (37 * hash) + DATASET_ID_FIELD_NUMBER; + hash = (53 * hash) + getDatasetId().hashCode(); + hash = (37 * hash) + ROUTINE_ID_FIELD_NUMBER; + hash = (53 * hash) + getRoutineId().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference 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.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference 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.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference + 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.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference 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.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference 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 reference to a BigQuery routine.
        +   * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference) + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReferenceOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutineReference_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutineReference_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference.class, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference.Builder.class); + } + + // Construct using + // com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + projectId_ = ""; + datasetId_ = ""; + routineId_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutineReference_descriptor; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference + getDefaultInstanceForType() { + return com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference build() { + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference buildPartial() { + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference result = + new com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.projectId_ = projectId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.datasetId_ = datasetId_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.routineId_ = routineId_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference) { + return mergeFrom( + (com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference other) { + if (other + == com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference + .getDefaultInstance()) return this; + if (!other.getProjectId().isEmpty()) { + projectId_ = other.projectId_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getDatasetId().isEmpty()) { + datasetId_ = other.datasetId_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getRoutineId().isEmpty()) { + routineId_ = other.routineId_; + bitField0_ |= 0x00000004; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + projectId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + datasetId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + routineId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object projectId_ = ""; + + /** + * + * + *
        +     * The project ID of the routine.
        +     * 
        + * + * string project_id = 1; + * + * @return The projectId. + */ + public java.lang.String getProjectId() { + java.lang.Object ref = projectId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + projectId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * The project ID of the routine.
        +     * 
        + * + * string project_id = 1; + * + * @return The bytes for projectId. + */ + public com.google.protobuf.ByteString getProjectIdBytes() { + java.lang.Object ref = projectId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + projectId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * The project ID of the routine.
        +     * 
        + * + * string project_id = 1; + * + * @param value The projectId to set. + * @return This builder for chaining. + */ + public Builder setProjectId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + projectId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
        +     * The project ID of the routine.
        +     * 
        + * + * string project_id = 1; + * + * @return This builder for chaining. + */ + public Builder clearProjectId() { + projectId_ = getDefaultInstance().getProjectId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
        +     * The project ID of the routine.
        +     * 
        + * + * string project_id = 1; + * + * @param value The bytes for projectId to set. + * @return This builder for chaining. + */ + public Builder setProjectIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + projectId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object datasetId_ = ""; + + /** + * + * + *
        +     * The dataset ID of the routine.
        +     * 
        + * + * string dataset_id = 2; + * + * @return The datasetId. + */ + public java.lang.String getDatasetId() { + java.lang.Object ref = datasetId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + datasetId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * The dataset ID of the routine.
        +     * 
        + * + * string dataset_id = 2; + * + * @return The bytes for datasetId. + */ + public com.google.protobuf.ByteString getDatasetIdBytes() { + java.lang.Object ref = datasetId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + datasetId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * The dataset ID of the routine.
        +     * 
        + * + * string dataset_id = 2; + * + * @param value The datasetId to set. + * @return This builder for chaining. + */ + public Builder setDatasetId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + datasetId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
        +     * The dataset ID of the routine.
        +     * 
        + * + * string dataset_id = 2; + * + * @return This builder for chaining. + */ + public Builder clearDatasetId() { + datasetId_ = getDefaultInstance().getDatasetId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
        +     * The dataset ID of the routine.
        +     * 
        + * + * string dataset_id = 2; + * + * @param value The bytes for datasetId to set. + * @return This builder for chaining. + */ + public Builder setDatasetIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + datasetId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object routineId_ = ""; + + /** + * + * + *
        +     * The routine ID of the routine.
        +     * 
        + * + * string routine_id = 3; + * + * @return The routineId. + */ + public java.lang.String getRoutineId() { + java.lang.Object ref = routineId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + routineId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * The routine ID of the routine.
        +     * 
        + * + * string routine_id = 3; + * + * @return The bytes for routineId. + */ + public com.google.protobuf.ByteString getRoutineIdBytes() { + java.lang.Object ref = routineId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + routineId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * The routine ID of the routine.
        +     * 
        + * + * string routine_id = 3; + * + * @param value The routineId to set. + * @return This builder for chaining. + */ + public Builder setRoutineId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + routineId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
        +     * The routine ID of the routine.
        +     * 
        + * + * string routine_id = 3; + * + * @return This builder for chaining. + */ + public Builder clearRoutineId() { + routineId_ = getDefaultInstance().getRoutineId(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
        +     * The routine ID of the routine.
        +     * 
        + * + * string routine_id = 3; + * + * @param value The bytes for routineId to set. + * @return This builder for chaining. + */ + public Builder setRoutineIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + routineId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference) + } + + // @@protoc_insertion_point(class_scope:google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference) + private static final com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference(); + } + + public static com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public BigQueryRoutineReference parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryRoutineReferenceOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryRoutineReferenceOrBuilder.java new file mode 100644 index 000000000000..4e310cdc4027 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryRoutineReferenceOrBuilder.java @@ -0,0 +1,106 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +@com.google.protobuf.Generated +public interface BigQueryRoutineReferenceOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
        +   * The project ID of the routine.
        +   * 
        + * + * string project_id = 1; + * + * @return The projectId. + */ + java.lang.String getProjectId(); + + /** + * + * + *
        +   * The project ID of the routine.
        +   * 
        + * + * string project_id = 1; + * + * @return The bytes for projectId. + */ + com.google.protobuf.ByteString getProjectIdBytes(); + + /** + * + * + *
        +   * The dataset ID of the routine.
        +   * 
        + * + * string dataset_id = 2; + * + * @return The datasetId. + */ + java.lang.String getDatasetId(); + + /** + * + * + *
        +   * The dataset ID of the routine.
        +   * 
        + * + * string dataset_id = 2; + * + * @return The bytes for datasetId. + */ + com.google.protobuf.ByteString getDatasetIdBytes(); + + /** + * + * + *
        +   * The routine ID of the routine.
        +   * 
        + * + * string routine_id = 3; + * + * @return The routineId. + */ + java.lang.String getRoutineId(); + + /** + * + * + *
        +   * The routine ID of the routine.
        +   * 
        + * + * string routine_id = 3; + * + * @return The bytes for routineId. + */ + com.google.protobuf.ByteString getRoutineIdBytes(); +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryTableReferences.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryTableReferences.java index ebea848cdb69..d4f8d1090b40 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryTableReferences.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryTableReferences.java @@ -25,8 +25,8 @@ * *
          * Message representing references to BigQuery tables and property graphs.
        - * At least one of `table_references` or `property_graph_references` must be
        - * populated.
        + * At least one of `table_references`, `property_graph_references`, or
        + * `search_scope` must be populated.
          * 
        * * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.BigQueryTableReferences} @@ -55,6 +55,7 @@ private BigQueryTableReferences(com.google.protobuf.GeneratedMessage.Builder private BigQueryTableReferences() { tableReferences_ = java.util.Collections.emptyList(); + propertyGraphReferences_ = java.util.Collections.emptyList(); } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -163,6 +164,113 @@ public com.google.cloud.geminidataanalytics.v1beta.BigQueryTableReference getTab return tableReferences_.get(index); } + public static final int PROPERTY_GRAPH_REFERENCES_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private java.util.List + propertyGraphReferences_; + + /** + * + * + *
        +   * Optional. Preview feature. References to BigQuery property graphs.
        +   * Note: Data sources must exclusively use either tables or property graphs,
        +   * not both. When using property graphs, a maximum of one graph reference is
        +   * supported.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getPropertyGraphReferencesList() { + return propertyGraphReferences_; + } + + /** + * + * + *
        +   * Optional. Preview feature. References to BigQuery property graphs.
        +   * Note: Data sources must exclusively use either tables or property graphs,
        +   * not both. When using property graphs, a maximum of one graph reference is
        +   * supported.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceOrBuilder> + getPropertyGraphReferencesOrBuilderList() { + return propertyGraphReferences_; + } + + /** + * + * + *
        +   * Optional. Preview feature. References to BigQuery property graphs.
        +   * Note: Data sources must exclusively use either tables or property graphs,
        +   * not both. When using property graphs, a maximum of one graph reference is
        +   * supported.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getPropertyGraphReferencesCount() { + return propertyGraphReferences_.size(); + } + + /** + * + * + *
        +   * Optional. Preview feature. References to BigQuery property graphs.
        +   * Note: Data sources must exclusively use either tables or property graphs,
        +   * not both. When using property graphs, a maximum of one graph reference is
        +   * supported.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + getPropertyGraphReferences(int index) { + return propertyGraphReferences_.get(index); + } + + /** + * + * + *
        +   * Optional. Preview feature. References to BigQuery property graphs.
        +   * Note: Data sources must exclusively use either tables or property graphs,
        +   * not both. When using property graphs, a maximum of one graph reference is
        +   * supported.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceOrBuilder + getPropertyGraphReferencesOrBuilder(int index) { + return propertyGraphReferences_.get(index); + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -180,6 +288,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < tableReferences_.size(); i++) { output.writeMessage(1, tableReferences_.get(i)); } + for (int i = 0; i < propertyGraphReferences_.size(); i++) { + output.writeMessage(2, propertyGraphReferences_.get(i)); + } getUnknownFields().writeTo(output); } @@ -192,6 +303,11 @@ public int getSerializedSize() { for (int i = 0; i < tableReferences_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, tableReferences_.get(i)); } + for (int i = 0; i < propertyGraphReferences_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 2, propertyGraphReferences_.get(i)); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -209,6 +325,8 @@ public boolean equals(final java.lang.Object obj) { (com.google.cloud.geminidataanalytics.v1beta.BigQueryTableReferences) obj; if (!getTableReferencesList().equals(other.getTableReferencesList())) return false; + if (!getPropertyGraphReferencesList().equals(other.getPropertyGraphReferencesList())) + return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -224,6 +342,10 @@ public int hashCode() { hash = (37 * hash) + TABLE_REFERENCES_FIELD_NUMBER; hash = (53 * hash) + getTableReferencesList().hashCode(); } + if (getPropertyGraphReferencesCount() > 0) { + hash = (37 * hash) + PROPERTY_GRAPH_REFERENCES_FIELD_NUMBER; + hash = (53 * hash) + getPropertyGraphReferencesList().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -332,8 +454,8 @@ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.Builder * *
            * Message representing references to BigQuery tables and property graphs.
        -   * At least one of `table_references` or `property_graph_references` must be
        -   * populated.
        +   * At least one of `table_references`, `property_graph_references`, or
        +   * `search_scope` must be populated.
            * 
        * * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.BigQueryTableReferences} @@ -376,6 +498,13 @@ public Builder clear() { tableReferencesBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000001); + if (propertyGraphReferencesBuilder_ == null) { + propertyGraphReferences_ = java.util.Collections.emptyList(); + } else { + propertyGraphReferences_ = null; + propertyGraphReferencesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000002); return this; } @@ -424,6 +553,16 @@ private void buildPartialRepeatedFields( } else { result.tableReferences_ = tableReferencesBuilder_.build(); } + if (propertyGraphReferencesBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + propertyGraphReferences_ = + java.util.Collections.unmodifiableList(propertyGraphReferences_); + bitField0_ = (bitField0_ & ~0x00000002); + } + result.propertyGraphReferences_ = propertyGraphReferences_; + } else { + result.propertyGraphReferences_ = propertyGraphReferencesBuilder_.build(); + } } private void buildPartial0( @@ -474,6 +613,33 @@ public Builder mergeFrom( } } } + if (propertyGraphReferencesBuilder_ == null) { + if (!other.propertyGraphReferences_.isEmpty()) { + if (propertyGraphReferences_.isEmpty()) { + propertyGraphReferences_ = other.propertyGraphReferences_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensurePropertyGraphReferencesIsMutable(); + propertyGraphReferences_.addAll(other.propertyGraphReferences_); + } + onChanged(); + } + } else { + if (!other.propertyGraphReferences_.isEmpty()) { + if (propertyGraphReferencesBuilder_.isEmpty()) { + propertyGraphReferencesBuilder_.dispose(); + propertyGraphReferencesBuilder_ = null; + propertyGraphReferences_ = other.propertyGraphReferences_; + bitField0_ = (bitField0_ & ~0x00000002); + propertyGraphReferencesBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetPropertyGraphReferencesFieldBuilder() + : null; + } else { + propertyGraphReferencesBuilder_.addAllMessages(other.propertyGraphReferences_); + } + } + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -514,6 +680,21 @@ public Builder mergeFrom( } break; } // case 10 + case 18: + { + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference m = + input.readMessage( + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + .parser(), + extensionRegistry); + if (propertyGraphReferencesBuilder_ == null) { + ensurePropertyGraphReferencesIsMutable(); + propertyGraphReferences_.add(m); + } else { + propertyGraphReferencesBuilder_.addMessage(m); + } + break; + } // case 18 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -965,6 +1146,499 @@ public Builder removeTableReferences(int index) { return tableReferencesBuilder_; } + private java.util.List< + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference> + propertyGraphReferences_ = java.util.Collections.emptyList(); + + private void ensurePropertyGraphReferencesIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + propertyGraphReferences_ = + new java.util.ArrayList< + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference>( + propertyGraphReferences_); + bitField0_ |= 0x00000002; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceOrBuilder> + propertyGraphReferencesBuilder_; + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference> + getPropertyGraphReferencesList() { + if (propertyGraphReferencesBuilder_ == null) { + return java.util.Collections.unmodifiableList(propertyGraphReferences_); + } else { + return propertyGraphReferencesBuilder_.getMessageList(); + } + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public int getPropertyGraphReferencesCount() { + if (propertyGraphReferencesBuilder_ == null) { + return propertyGraphReferences_.size(); + } else { + return propertyGraphReferencesBuilder_.getCount(); + } + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + getPropertyGraphReferences(int index) { + if (propertyGraphReferencesBuilder_ == null) { + return propertyGraphReferences_.get(index); + } else { + return propertyGraphReferencesBuilder_.getMessage(index); + } + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setPropertyGraphReferences( + int index, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference value) { + if (propertyGraphReferencesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePropertyGraphReferencesIsMutable(); + propertyGraphReferences_.set(index, value); + onChanged(); + } else { + propertyGraphReferencesBuilder_.setMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setPropertyGraphReferences( + int index, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder + builderForValue) { + if (propertyGraphReferencesBuilder_ == null) { + ensurePropertyGraphReferencesIsMutable(); + propertyGraphReferences_.set(index, builderForValue.build()); + onChanged(); + } else { + propertyGraphReferencesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addPropertyGraphReferences( + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference value) { + if (propertyGraphReferencesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePropertyGraphReferencesIsMutable(); + propertyGraphReferences_.add(value); + onChanged(); + } else { + propertyGraphReferencesBuilder_.addMessage(value); + } + return this; + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addPropertyGraphReferences( + int index, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference value) { + if (propertyGraphReferencesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePropertyGraphReferencesIsMutable(); + propertyGraphReferences_.add(index, value); + onChanged(); + } else { + propertyGraphReferencesBuilder_.addMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addPropertyGraphReferences( + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder + builderForValue) { + if (propertyGraphReferencesBuilder_ == null) { + ensurePropertyGraphReferencesIsMutable(); + propertyGraphReferences_.add(builderForValue.build()); + onChanged(); + } else { + propertyGraphReferencesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addPropertyGraphReferences( + int index, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder + builderForValue) { + if (propertyGraphReferencesBuilder_ == null) { + ensurePropertyGraphReferencesIsMutable(); + propertyGraphReferences_.add(index, builderForValue.build()); + onChanged(); + } else { + propertyGraphReferencesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllPropertyGraphReferences( + java.lang.Iterable< + ? extends + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference> + values) { + if (propertyGraphReferencesBuilder_ == null) { + ensurePropertyGraphReferencesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, propertyGraphReferences_); + onChanged(); + } else { + propertyGraphReferencesBuilder_.addAllMessages(values); + } + return this; + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearPropertyGraphReferences() { + if (propertyGraphReferencesBuilder_ == null) { + propertyGraphReferences_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + } else { + propertyGraphReferencesBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removePropertyGraphReferences(int index) { + if (propertyGraphReferencesBuilder_ == null) { + ensurePropertyGraphReferencesIsMutable(); + propertyGraphReferences_.remove(index); + onChanged(); + } else { + propertyGraphReferencesBuilder_.remove(index); + } + return this; + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder + getPropertyGraphReferencesBuilder(int index) { + return internalGetPropertyGraphReferencesFieldBuilder().getBuilder(index); + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceOrBuilder + getPropertyGraphReferencesOrBuilder(int index) { + if (propertyGraphReferencesBuilder_ == null) { + return propertyGraphReferences_.get(index); + } else { + return propertyGraphReferencesBuilder_.getMessageOrBuilder(index); + } + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + ? extends + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceOrBuilder> + getPropertyGraphReferencesOrBuilderList() { + if (propertyGraphReferencesBuilder_ != null) { + return propertyGraphReferencesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(propertyGraphReferences_); + } + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder + addPropertyGraphReferencesBuilder() { + return internalGetPropertyGraphReferencesFieldBuilder() + .addBuilder( + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + .getDefaultInstance()); + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder + addPropertyGraphReferencesBuilder(int index) { + return internalGetPropertyGraphReferencesFieldBuilder() + .addBuilder( + index, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + .getDefaultInstance()); + } + + /** + * + * + *
        +     * Optional. Preview feature. References to BigQuery property graphs.
        +     * Note: Data sources must exclusively use either tables or property graphs,
        +     * not both. When using property graphs, a maximum of one graph reference is
        +     * supported.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder> + getPropertyGraphReferencesBuilderList() { + return internalGetPropertyGraphReferencesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceOrBuilder> + internalGetPropertyGraphReferencesFieldBuilder() { + if (propertyGraphReferencesBuilder_ == null) { + propertyGraphReferencesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder, + com.google.cloud.geminidataanalytics.v1beta + .BigQueryPropertyGraphReferenceOrBuilder>( + propertyGraphReferences_, + ((bitField0_ & 0x00000002) != 0), + getParentForChildren(), + isClean()); + propertyGraphReferences_ = null; + } + return propertyGraphReferencesBuilder_; + } + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.BigQueryTableReferences) } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryTableReferencesOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryTableReferencesOrBuilder.java index 893b92b90ad9..3741d9541071 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryTableReferencesOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/BigQueryTableReferencesOrBuilder.java @@ -94,4 +94,90 @@ public interface BigQueryTableReferencesOrBuilder */ com.google.cloud.geminidataanalytics.v1beta.BigQueryTableReferenceOrBuilder getTableReferencesOrBuilder(int index); + + /** + * + * + *
        +   * Optional. Preview feature. References to BigQuery property graphs.
        +   * Note: Data sources must exclusively use either tables or property graphs,
        +   * not both. When using property graphs, a maximum of one graph reference is
        +   * supported.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List + getPropertyGraphReferencesList(); + + /** + * + * + *
        +   * Optional. Preview feature. References to BigQuery property graphs.
        +   * Note: Data sources must exclusively use either tables or property graphs,
        +   * not both. When using property graphs, a maximum of one graph reference is
        +   * supported.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + getPropertyGraphReferences(int index); + + /** + * + * + *
        +   * Optional. Preview feature. References to BigQuery property graphs.
        +   * Note: Data sources must exclusively use either tables or property graphs,
        +   * not both. When using property graphs, a maximum of one graph reference is
        +   * supported.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getPropertyGraphReferencesCount(); + + /** + * + * + *
        +   * Optional. Preview feature. References to BigQuery property graphs.
        +   * Note: Data sources must exclusively use either tables or property graphs,
        +   * not both. When using property graphs, a maximum of one graph reference is
        +   * supported.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + ? extends + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceOrBuilder> + getPropertyGraphReferencesOrBuilderList(); + + /** + * + * + *
        +   * Optional. Preview feature. References to BigQuery property graphs.
        +   * Note: Data sources must exclusively use either tables or property graphs,
        +   * not both. When using property graphs, a maximum of one graph reference is
        +   * supported.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference property_graph_references = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceOrBuilder + getPropertyGraphReferencesOrBuilder(int index); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ChatRequest.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ChatRequest.java index a25936a69033..b828f9718c3d 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ChatRequest.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ChatRequest.java @@ -56,6 +56,7 @@ private ChatRequest() { parent_ = ""; messages_ = java.util.Collections.emptyList(); thinkingMode_ = 0; + model_ = 0; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -244,6 +245,157 @@ private ThinkingMode(int value) { // @@protoc_insertion_point(enum_scope:google.cloud.geminidataanalytics.v1beta.ChatRequest.ThinkingMode) } + /** + * + * + *
        +   * Model selection for the agent.
        +   * 
        + * + * Protobuf enum {@code google.cloud.geminidataanalytics.v1beta.ChatRequest.Model} + */ + public enum Model implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
        +     * No model specified. The default model will be used.
        +     * 
        + * + * MODEL_UNSPECIFIED = 0; + */ + MODEL_UNSPECIFIED(0), + /** + * + * + *
        +     * Use the most up-to-date non-preview model. This may constrain certain
        +     * request level settings.
        +     * 
        + * + * LATEST_GA_MODEL = 1; + */ + LATEST_GA_MODEL(1), + UNRECOGNIZED(-1), + ; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "Model"); + } + + /** + * + * + *
        +     * No model specified. The default model will be used.
        +     * 
        + * + * MODEL_UNSPECIFIED = 0; + */ + public static final int MODEL_UNSPECIFIED_VALUE = 0; + + /** + * + * + *
        +     * Use the most up-to-date non-preview model. This may constrain certain
        +     * request level settings.
        +     * 
        + * + * LATEST_GA_MODEL = 1; + */ + public static final int LATEST_GA_MODEL_VALUE = 1; + + 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 Model 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 Model forNumber(int value) { + switch (value) { + case 0: + return MODEL_UNSPECIFIED; + case 1: + return LATEST_GA_MODEL; + default: + return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap internalGetValueMap() { + return internalValueMap; + } + + private static final com.google.protobuf.Internal.EnumLiteMap internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public Model findValueByNumber(int number) { + return Model.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + + public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { + return getDescriptor(); + } + + public static com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ChatRequest.getDescriptor() + .getEnumTypes() + .get(1); + } + + private static final Model[] VALUES = values(); + + public static Model valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException("EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private Model(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:google.cloud.geminidataanalytics.v1beta.ChatRequest.Model) + } + + private int bitField0_; private int contextProviderCase_ = 0; @SuppressWarnings("serial") @@ -300,6 +452,53 @@ public ContextProviderCase getContextProviderCase() { return ContextProviderCase.forNumber(contextProviderCase_); } + private int datasourceSettingsCase_ = 0; + + @SuppressWarnings("serial") + private java.lang.Object datasourceSettings_; + + public enum DatasourceSettingsCase + implements + com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + LOOKER_SETTINGS(13), + DATASOURCESETTINGS_NOT_SET(0); + private final int value; + + private DatasourceSettingsCase(int value) { + this.value = value; + } + + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static DatasourceSettingsCase valueOf(int value) { + return forNumber(value); + } + + public static DatasourceSettingsCase forNumber(int value) { + switch (value) { + case 13: + return LOOKER_SETTINGS; + case 0: + return DATASOURCESETTINGS_NOT_SET; + default: + return null; + } + } + + public int getNumber() { + return this.value; + } + }; + + public DatasourceSettingsCase getDatasourceSettingsCase() { + return DatasourceSettingsCase.forNumber(datasourceSettingsCase_); + } + public static final int INLINE_CONTEXT_FIELD_NUMBER = 101; /** @@ -570,6 +769,67 @@ public boolean hasClientManagedResourceContext() { .getDefaultInstance(); } + public static final int LOOKER_SETTINGS_FIELD_NUMBER = 13; + + /** + * + * + *
        +   * Optional. Looker specific settings.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the lookerSettings field is set. + */ + @java.lang.Override + public boolean hasLookerSettings() { + return datasourceSettingsCase_ == 13; + } + + /** + * + * + *
        +   * Optional. Looker specific settings.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The lookerSettings. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.LookerSettings getLookerSettings() { + if (datasourceSettingsCase_ == 13) { + return (com.google.cloud.geminidataanalytics.v1beta.LookerSettings) datasourceSettings_; + } + return com.google.cloud.geminidataanalytics.v1beta.LookerSettings.getDefaultInstance(); + } + + /** + * + * + *
        +   * Optional. Looker specific settings.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.LookerSettingsOrBuilder + getLookerSettingsOrBuilder() { + if (datasourceSettingsCase_ == 13) { + return (com.google.cloud.geminidataanalytics.v1beta.LookerSettings) datasourceSettings_; + } + return com.google.cloud.geminidataanalytics.v1beta.LookerSettings.getDefaultInstance(); + } + public static final int PROJECT_FIELD_NUMBER = 1; @SuppressWarnings("serial") @@ -579,7 +839,8 @@ public boolean hasClientManagedResourceContext() { * * *
        -   * Optional. The Google Cloud project to be used for quota and billing.
        +   * Optional. Deprecated: Use `parent` field instead.
        +   * The Google Cloud project to be used for quota and billing.
            * 
        * * @@ -587,7 +848,7 @@ public boolean hasClientManagedResourceContext() { * * * @deprecated google.cloud.geminidataanalytics.v1beta.ChatRequest.project is deprecated. See - * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=342 + * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=369 * @return The project. */ @java.lang.Override @@ -608,7 +869,8 @@ public java.lang.String getProject() { * * *
        -   * Optional. The Google Cloud project to be used for quota and billing.
        +   * Optional. Deprecated: Use `parent` field instead.
        +   * The Google Cloud project to be used for quota and billing.
            * 
        * * @@ -616,7 +878,7 @@ public java.lang.String getProject() { * * * @deprecated google.cloud.geminidataanalytics.v1beta.ChatRequest.project is deprecated. See - * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=342 + * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=369 * @return The bytes for project. */ @java.lang.Override @@ -775,6 +1037,87 @@ public com.google.cloud.geminidataanalytics.v1beta.MessageOrBuilder getMessagesO return messages_.get(index); } + public static final int CREDENTIALS_FIELD_NUMBER = 7; + private com.google.cloud.geminidataanalytics.v1beta.Credentials credentials_; + + /** + * + * + *
        +   * Optional. The credentials to use when calling the data source(s) specified
        +   * in the context.
        +   *
        +   * This field can be used to provide credentials for various data sources.
        +   * For example, when connecting to Looker, it currently supports both OAuth
        +   * token and API key-based credentials, as described in
        +   * [Authentication with an
        +   * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the credentials field is set. + */ + @java.lang.Override + public boolean hasCredentials() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
        +   * Optional. The credentials to use when calling the data source(s) specified
        +   * in the context.
        +   *
        +   * This field can be used to provide credentials for various data sources.
        +   * For example, when connecting to Looker, it currently supports both OAuth
        +   * token and API key-based credentials, as described in
        +   * [Authentication with an
        +   * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The credentials. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials() { + return credentials_ == null + ? com.google.cloud.geminidataanalytics.v1beta.Credentials.getDefaultInstance() + : credentials_; + } + + /** + * + * + *
        +   * Optional. The credentials to use when calling the data source(s) specified
        +   * in the context.
        +   *
        +   * This field can be used to provide credentials for various data sources.
        +   * For example, when connecting to Looker, it currently supports both OAuth
        +   * token and API key-based credentials, as described in
        +   * [Authentication with an
        +   * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CredentialsOrBuilder + getCredentialsOrBuilder() { + return credentials_ == null + ? com.google.cloud.geminidataanalytics.v1beta.Credentials.getDefaultInstance() + : credentials_; + } + public static final int THINKING_MODE_FIELD_NUMBER = 9; private int thinkingMode_ = 0; @@ -821,6 +1164,51 @@ public com.google.cloud.geminidataanalytics.v1beta.ChatRequest.ThinkingMode getT : result; } + public static final int MODEL_FIELD_NUMBER = 11; + private int model_ = 0; + + /** + * + * + *
        +   * Optional. The model to use for the agent loop when processing the request.
        +   * This setting only has an effect when context.options.model is not set.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ChatRequest.Model model = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for model. + */ + @java.lang.Override + public int getModelValue() { + return model_; + } + + /** + * + * + *
        +   * Optional. The model to use for the agent loop when processing the request.
        +   * This setting only has an effect when context.options.model is not set.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ChatRequest.Model model = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The model. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ChatRequest.Model getModel() { + com.google.cloud.geminidataanalytics.v1beta.ChatRequest.Model result = + com.google.cloud.geminidataanalytics.v1beta.ChatRequest.Model.forNumber(model_); + return result == null + ? com.google.cloud.geminidataanalytics.v1beta.ChatRequest.Model.UNRECOGNIZED + : result; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -844,12 +1232,24 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessage.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessage.writeString(output, 3, parent_); } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(7, getCredentials()); + } if (thinkingMode_ != com.google.cloud.geminidataanalytics.v1beta.ChatRequest.ThinkingMode .THINKING_MODE_UNSPECIFIED .getNumber()) { output.writeEnum(9, thinkingMode_); } + if (model_ + != com.google.cloud.geminidataanalytics.v1beta.ChatRequest.Model.MODEL_UNSPECIFIED + .getNumber()) { + output.writeEnum(11, model_); + } + if (datasourceSettingsCase_ == 13) { + output.writeMessage( + 13, (com.google.cloud.geminidataanalytics.v1beta.LookerSettings) datasourceSettings_); + } if (contextProviderCase_ == 101) { output.writeMessage( 101, (com.google.cloud.geminidataanalytics.v1beta.Context) contextProvider_); @@ -887,12 +1287,25 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessage.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(3, parent_); } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getCredentials()); + } if (thinkingMode_ != com.google.cloud.geminidataanalytics.v1beta.ChatRequest.ThinkingMode .THINKING_MODE_UNSPECIFIED .getNumber()) { size += com.google.protobuf.CodedOutputStream.computeEnumSize(9, thinkingMode_); } + if (model_ + != com.google.cloud.geminidataanalytics.v1beta.ChatRequest.Model.MODEL_UNSPECIFIED + .getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(11, model_); + } + if (datasourceSettingsCase_ == 13) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 13, (com.google.cloud.geminidataanalytics.v1beta.LookerSettings) datasourceSettings_); + } if (contextProviderCase_ == 101) { size += com.google.protobuf.CodedOutputStream.computeMessageSize( @@ -935,7 +1348,12 @@ public boolean equals(final java.lang.Object obj) { if (!getProject().equals(other.getProject())) return false; if (!getParent().equals(other.getParent())) return false; if (!getMessagesList().equals(other.getMessagesList())) return false; + if (hasCredentials() != other.hasCredentials()) return false; + if (hasCredentials()) { + if (!getCredentials().equals(other.getCredentials())) return false; + } if (thinkingMode_ != other.thinkingMode_) return false; + if (model_ != other.model_) return false; if (!getContextProviderCase().equals(other.getContextProviderCase())) return false; switch (contextProviderCase_) { case 101: @@ -954,6 +1372,14 @@ public boolean equals(final java.lang.Object obj) { case 0: default: } + if (!getDatasourceSettingsCase().equals(other.getDatasourceSettingsCase())) return false; + switch (datasourceSettingsCase_) { + case 13: + if (!getLookerSettings().equals(other.getLookerSettings())) return false; + break; + case 0: + default: + } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -973,8 +1399,14 @@ public int hashCode() { hash = (37 * hash) + MESSAGES_FIELD_NUMBER; hash = (53 * hash) + getMessagesList().hashCode(); } + if (hasCredentials()) { + hash = (37 * hash) + CREDENTIALS_FIELD_NUMBER; + hash = (53 * hash) + getCredentials().hashCode(); + } hash = (37 * hash) + THINKING_MODE_FIELD_NUMBER; hash = (53 * hash) + thinkingMode_; + hash = (37 * hash) + MODEL_FIELD_NUMBER; + hash = (53 * hash) + model_; switch (contextProviderCase_) { case 101: hash = (37 * hash) + INLINE_CONTEXT_FIELD_NUMBER; @@ -995,6 +1427,14 @@ public int hashCode() { case 0: default: } + switch (datasourceSettingsCase_) { + case 13: + hash = (37 * hash) + LOOKER_SETTINGS_FIELD_NUMBER; + hash = (53 * hash) + getLookerSettings().hashCode(); + break; + case 0: + default: + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -1126,10 +1566,20 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { } // Construct using com.google.cloud.geminidataanalytics.v1beta.ChatRequest.newBuilder() - private Builder() {} + private Builder() { + maybeForceBuilderInitialization(); + } private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetMessagesFieldBuilder(); + internalGetCredentialsFieldBuilder(); + } } @java.lang.Override @@ -1148,6 +1598,9 @@ public Builder clear() { if (clientManagedResourceContextBuilder_ != null) { clientManagedResourceContextBuilder_.clear(); } + if (lookerSettingsBuilder_ != null) { + lookerSettingsBuilder_.clear(); + } project_ = ""; parent_ = ""; if (messagesBuilder_ == null) { @@ -1156,10 +1609,18 @@ public Builder clear() { messages_ = null; messagesBuilder_.clear(); } - bitField0_ = (bitField0_ & ~0x00000040); + bitField0_ = (bitField0_ & ~0x00000080); + credentials_ = null; + if (credentialsBuilder_ != null) { + credentialsBuilder_.dispose(); + credentialsBuilder_ = null; + } thinkingMode_ = 0; + model_ = 0; contextProviderCase_ = 0; contextProvider_ = null; + datasourceSettingsCase_ = 0; + datasourceSettings_ = null; return this; } @@ -1199,9 +1660,9 @@ public com.google.cloud.geminidataanalytics.v1beta.ChatRequest buildPartial() { private void buildPartialRepeatedFields( com.google.cloud.geminidataanalytics.v1beta.ChatRequest result) { if (messagesBuilder_ == null) { - if (((bitField0_ & 0x00000040) != 0)) { + if (((bitField0_ & 0x00000080) != 0)) { messages_ = java.util.Collections.unmodifiableList(messages_); - bitField0_ = (bitField0_ & ~0x00000040); + bitField0_ = (bitField0_ & ~0x00000080); } result.messages_ = messages_; } else { @@ -1211,15 +1672,25 @@ private void buildPartialRepeatedFields( private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.ChatRequest result) { int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000010) != 0)) { + if (((from_bitField0_ & 0x00000020) != 0)) { result.project_ = project_; } - if (((from_bitField0_ & 0x00000020) != 0)) { + if (((from_bitField0_ & 0x00000040) != 0)) { result.parent_ = parent_; } - if (((from_bitField0_ & 0x00000080) != 0)) { + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000100) != 0)) { + result.credentials_ = + credentialsBuilder_ == null ? credentials_ : credentialsBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000200) != 0)) { result.thinkingMode_ = thinkingMode_; } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.model_ = model_; + } + result.bitField0_ |= to_bitField0_; } private void buildPartialOneofs( @@ -1238,6 +1709,11 @@ private void buildPartialOneofs( if (contextProviderCase_ == 105 && clientManagedResourceContextBuilder_ != null) { result.contextProvider_ = clientManagedResourceContextBuilder_.build(); } + result.datasourceSettingsCase_ = datasourceSettingsCase_; + result.datasourceSettings_ = this.datasourceSettings_; + if (datasourceSettingsCase_ == 13 && lookerSettingsBuilder_ != null) { + result.datasourceSettings_ = lookerSettingsBuilder_.build(); + } } @java.lang.Override @@ -1255,19 +1731,19 @@ public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.ChatRequest return this; if (!other.getProject().isEmpty()) { project_ = other.project_; - bitField0_ |= 0x00000010; + bitField0_ |= 0x00000020; onChanged(); } if (!other.getParent().isEmpty()) { parent_ = other.parent_; - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000040; onChanged(); } if (messagesBuilder_ == null) { if (!other.messages_.isEmpty()) { if (messages_.isEmpty()) { messages_ = other.messages_; - bitField0_ = (bitField0_ & ~0x00000040); + bitField0_ = (bitField0_ & ~0x00000080); } else { ensureMessagesIsMutable(); messages_.addAll(other.messages_); @@ -1280,7 +1756,7 @@ public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.ChatRequest messagesBuilder_.dispose(); messagesBuilder_ = null; messages_ = other.messages_; - bitField0_ = (bitField0_ & ~0x00000040); + bitField0_ = (bitField0_ & ~0x00000080); messagesBuilder_ = com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? internalGetMessagesFieldBuilder() @@ -1290,9 +1766,15 @@ public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.ChatRequest } } } + if (other.hasCredentials()) { + mergeCredentials(other.getCredentials()); + } if (other.thinkingMode_ != 0) { setThinkingModeValue(other.getThinkingModeValue()); } + if (other.model_ != 0) { + setModelValue(other.getModelValue()); + } switch (other.getContextProviderCase()) { case INLINE_CONTEXT: { @@ -1319,6 +1801,17 @@ public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.ChatRequest break; } } + switch (other.getDatasourceSettingsCase()) { + case LOOKER_SETTINGS: + { + mergeLookerSettings(other.getLookerSettings()); + break; + } + case DATASOURCESETTINGS_NOT_SET: + { + break; + } + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -1348,7 +1841,7 @@ public Builder mergeFrom( case 10: { project_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000010; + bitField0_ |= 0x00000020; break; } // case 10 case 18: @@ -1368,15 +1861,35 @@ public Builder mergeFrom( case 26: { parent_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000040; break; } // case 26 + case 58: + { + input.readMessage( + internalGetCredentialsFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000100; + break; + } // case 58 case 72: { thinkingMode_ = input.readEnum(); - bitField0_ |= 0x00000080; + bitField0_ |= 0x00000200; break; } // case 72 + case 88: + { + model_ = input.readEnum(); + bitField0_ |= 0x00000400; + break; + } // case 88 + case 106: + { + input.readMessage( + internalGetLookerSettingsFieldBuilder().getBuilder(), extensionRegistry); + datasourceSettingsCase_ = 13; + break; + } // case 106 case 810: { input.readMessage( @@ -1437,6 +1950,20 @@ public Builder clearContextProvider() { return this; } + private int datasourceSettingsCase_ = 0; + private java.lang.Object datasourceSettings_; + + public DatasourceSettingsCase getDatasourceSettingsCase() { + return DatasourceSettingsCase.forNumber(datasourceSettingsCase_); + } + + public Builder clearDatasourceSettings() { + datasourceSettingsCase_ = 0; + datasourceSettings_ = null; + onChanged(); + return this; + } + private int bitField0_; private com.google.protobuf.SingleFieldBuilder< @@ -2424,28 +2951,277 @@ public Builder clearClientManagedResourceContext() { * * *
        -     * Optional. Context with client managed resources.
        -     * Some clients may not use GDA managed resources including
        -     * conversations and agents, instead they create and manage their own
        -     * conversations and agents resources.
        +     * Optional. Context with client managed resources.
        +     * Some clients may not use GDA managed resources including
        +     * conversations and agents, instead they create and manage their own
        +     * conversations and agents resources.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext client_managed_resource_context = 105 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContextOrBuilder + getClientManagedResourceContextOrBuilder() { + if ((contextProviderCase_ == 105) && (clientManagedResourceContextBuilder_ != null)) { + return clientManagedResourceContextBuilder_.getMessageOrBuilder(); + } else { + if (contextProviderCase_ == 105) { + return (com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext) + contextProvider_; + } + return com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext + .getDefaultInstance(); + } + } + + /** + * + * + *
        +     * Optional. Context with client managed resources.
        +     * Some clients may not use GDA managed resources including
        +     * conversations and agents, instead they create and manage their own
        +     * conversations and agents resources.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext client_managed_resource_context = 105 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext, + com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext.Builder, + com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContextOrBuilder> + internalGetClientManagedResourceContextFieldBuilder() { + if (clientManagedResourceContextBuilder_ == null) { + if (!(contextProviderCase_ == 105)) { + contextProvider_ = + com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext + .getDefaultInstance(); + } + clientManagedResourceContextBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext, + com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext.Builder, + com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContextOrBuilder>( + (com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext) + contextProvider_, + getParentForChildren(), + isClean()); + contextProvider_ = null; + } + contextProviderCase_ = 105; + onChanged(); + return clientManagedResourceContextBuilder_; + } + + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.LookerSettings, + com.google.cloud.geminidataanalytics.v1beta.LookerSettings.Builder, + com.google.cloud.geminidataanalytics.v1beta.LookerSettingsOrBuilder> + lookerSettingsBuilder_; + + /** + * + * + *
        +     * Optional. Looker specific settings.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the lookerSettings field is set. + */ + @java.lang.Override + public boolean hasLookerSettings() { + return datasourceSettingsCase_ == 13; + } + + /** + * + * + *
        +     * Optional. Looker specific settings.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The lookerSettings. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.LookerSettings getLookerSettings() { + if (lookerSettingsBuilder_ == null) { + if (datasourceSettingsCase_ == 13) { + return (com.google.cloud.geminidataanalytics.v1beta.LookerSettings) datasourceSettings_; + } + return com.google.cloud.geminidataanalytics.v1beta.LookerSettings.getDefaultInstance(); + } else { + if (datasourceSettingsCase_ == 13) { + return lookerSettingsBuilder_.getMessage(); + } + return com.google.cloud.geminidataanalytics.v1beta.LookerSettings.getDefaultInstance(); + } + } + + /** + * + * + *
        +     * Optional. Looker specific settings.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setLookerSettings( + com.google.cloud.geminidataanalytics.v1beta.LookerSettings value) { + if (lookerSettingsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + datasourceSettings_ = value; + onChanged(); + } else { + lookerSettingsBuilder_.setMessage(value); + } + datasourceSettingsCase_ = 13; + return this; + } + + /** + * + * + *
        +     * Optional. Looker specific settings.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setLookerSettings( + com.google.cloud.geminidataanalytics.v1beta.LookerSettings.Builder builderForValue) { + if (lookerSettingsBuilder_ == null) { + datasourceSettings_ = builderForValue.build(); + onChanged(); + } else { + lookerSettingsBuilder_.setMessage(builderForValue.build()); + } + datasourceSettingsCase_ = 13; + return this; + } + + /** + * + * + *
        +     * Optional. Looker specific settings.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeLookerSettings( + com.google.cloud.geminidataanalytics.v1beta.LookerSettings value) { + if (lookerSettingsBuilder_ == null) { + if (datasourceSettingsCase_ == 13 + && datasourceSettings_ + != com.google.cloud.geminidataanalytics.v1beta.LookerSettings + .getDefaultInstance()) { + datasourceSettings_ = + com.google.cloud.geminidataanalytics.v1beta.LookerSettings.newBuilder( + (com.google.cloud.geminidataanalytics.v1beta.LookerSettings) + datasourceSettings_) + .mergeFrom(value) + .buildPartial(); + } else { + datasourceSettings_ = value; + } + onChanged(); + } else { + if (datasourceSettingsCase_ == 13) { + lookerSettingsBuilder_.mergeFrom(value); + } else { + lookerSettingsBuilder_.setMessage(value); + } + } + datasourceSettingsCase_ = 13; + return this; + } + + /** + * + * + *
        +     * Optional. Looker specific settings.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearLookerSettings() { + if (lookerSettingsBuilder_ == null) { + if (datasourceSettingsCase_ == 13) { + datasourceSettingsCase_ = 0; + datasourceSettings_ = null; + onChanged(); + } + } else { + if (datasourceSettingsCase_ == 13) { + datasourceSettingsCase_ = 0; + datasourceSettings_ = null; + } + lookerSettingsBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * Optional. Looker specific settings.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.LookerSettings.Builder + getLookerSettingsBuilder() { + return internalGetLookerSettingsFieldBuilder().getBuilder(); + } + + /** + * + * + *
        +     * Optional. Looker specific settings.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext client_managed_resource_context = 105 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override - public com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContextOrBuilder - getClientManagedResourceContextOrBuilder() { - if ((contextProviderCase_ == 105) && (clientManagedResourceContextBuilder_ != null)) { - return clientManagedResourceContextBuilder_.getMessageOrBuilder(); + public com.google.cloud.geminidataanalytics.v1beta.LookerSettingsOrBuilder + getLookerSettingsOrBuilder() { + if ((datasourceSettingsCase_ == 13) && (lookerSettingsBuilder_ != null)) { + return lookerSettingsBuilder_.getMessageOrBuilder(); } else { - if (contextProviderCase_ == 105) { - return (com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext) - contextProvider_; + if (datasourceSettingsCase_ == 13) { + return (com.google.cloud.geminidataanalytics.v1beta.LookerSettings) datasourceSettings_; } - return com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext - .getDefaultInstance(); + return com.google.cloud.geminidataanalytics.v1beta.LookerSettings.getDefaultInstance(); } } @@ -2453,41 +3229,36 @@ public Builder clearClientManagedResourceContext() { * * *
        -     * Optional. Context with client managed resources.
        -     * Some clients may not use GDA managed resources including
        -     * conversations and agents, instead they create and manage their own
        -     * conversations and agents resources.
        +     * Optional. Looker specific settings.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext client_managed_resource_context = 105 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext, - com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext.Builder, - com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContextOrBuilder> - internalGetClientManagedResourceContextFieldBuilder() { - if (clientManagedResourceContextBuilder_ == null) { - if (!(contextProviderCase_ == 105)) { - contextProvider_ = - com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext - .getDefaultInstance(); + com.google.cloud.geminidataanalytics.v1beta.LookerSettings, + com.google.cloud.geminidataanalytics.v1beta.LookerSettings.Builder, + com.google.cloud.geminidataanalytics.v1beta.LookerSettingsOrBuilder> + internalGetLookerSettingsFieldBuilder() { + if (lookerSettingsBuilder_ == null) { + if (!(datasourceSettingsCase_ == 13)) { + datasourceSettings_ = + com.google.cloud.geminidataanalytics.v1beta.LookerSettings.getDefaultInstance(); } - clientManagedResourceContextBuilder_ = + lookerSettingsBuilder_ = new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext, - com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext.Builder, - com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContextOrBuilder>( - (com.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContext) - contextProvider_, + com.google.cloud.geminidataanalytics.v1beta.LookerSettings, + com.google.cloud.geminidataanalytics.v1beta.LookerSettings.Builder, + com.google.cloud.geminidataanalytics.v1beta.LookerSettingsOrBuilder>( + (com.google.cloud.geminidataanalytics.v1beta.LookerSettings) datasourceSettings_, getParentForChildren(), isClean()); - contextProvider_ = null; + datasourceSettings_ = null; } - contextProviderCase_ = 105; + datasourceSettingsCase_ = 13; onChanged(); - return clientManagedResourceContextBuilder_; + return lookerSettingsBuilder_; } private java.lang.Object project_ = ""; @@ -2496,7 +3267,8 @@ public Builder clearClientManagedResourceContext() { * * *
        -     * Optional. The Google Cloud project to be used for quota and billing.
        +     * Optional. Deprecated: Use `parent` field instead.
        +     * The Google Cloud project to be used for quota and billing.
              * 
        * * @@ -2504,7 +3276,7 @@ public Builder clearClientManagedResourceContext() { * * * @deprecated google.cloud.geminidataanalytics.v1beta.ChatRequest.project is deprecated. See - * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=342 + * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=369 * @return The project. */ @java.lang.Deprecated @@ -2524,7 +3296,8 @@ public java.lang.String getProject() { * * *
        -     * Optional. The Google Cloud project to be used for quota and billing.
        +     * Optional. Deprecated: Use `parent` field instead.
        +     * The Google Cloud project to be used for quota and billing.
              * 
        * * @@ -2532,7 +3305,7 @@ public java.lang.String getProject() { * * * @deprecated google.cloud.geminidataanalytics.v1beta.ChatRequest.project is deprecated. See - * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=342 + * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=369 * @return The bytes for project. */ @java.lang.Deprecated @@ -2552,7 +3325,8 @@ public com.google.protobuf.ByteString getProjectBytes() { * * *
        -     * Optional. The Google Cloud project to be used for quota and billing.
        +     * Optional. Deprecated: Use `parent` field instead.
        +     * The Google Cloud project to be used for quota and billing.
              * 
        * * @@ -2560,7 +3334,7 @@ public com.google.protobuf.ByteString getProjectBytes() { * * * @deprecated google.cloud.geminidataanalytics.v1beta.ChatRequest.project is deprecated. See - * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=342 + * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=369 * @param value The project to set. * @return This builder for chaining. */ @@ -2570,7 +3344,7 @@ public Builder setProject(java.lang.String value) { throw new NullPointerException(); } project_ = value; - bitField0_ |= 0x00000010; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -2579,7 +3353,8 @@ public Builder setProject(java.lang.String value) { * * *
        -     * Optional. The Google Cloud project to be used for quota and billing.
        +     * Optional. Deprecated: Use `parent` field instead.
        +     * The Google Cloud project to be used for quota and billing.
              * 
        * * @@ -2587,13 +3362,13 @@ public Builder setProject(java.lang.String value) { * * * @deprecated google.cloud.geminidataanalytics.v1beta.ChatRequest.project is deprecated. See - * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=342 + * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=369 * @return This builder for chaining. */ @java.lang.Deprecated public Builder clearProject() { project_ = getDefaultInstance().getProject(); - bitField0_ = (bitField0_ & ~0x00000010); + bitField0_ = (bitField0_ & ~0x00000020); onChanged(); return this; } @@ -2602,7 +3377,8 @@ public Builder clearProject() { * * *
        -     * Optional. The Google Cloud project to be used for quota and billing.
        +     * Optional. Deprecated: Use `parent` field instead.
        +     * The Google Cloud project to be used for quota and billing.
              * 
        * * @@ -2610,7 +3386,7 @@ public Builder clearProject() { * * * @deprecated google.cloud.geminidataanalytics.v1beta.ChatRequest.project is deprecated. See - * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=342 + * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=369 * @param value The bytes for project to set. * @return This builder for chaining. */ @@ -2621,7 +3397,7 @@ public Builder setProjectBytes(com.google.protobuf.ByteString value) { } checkByteStringIsUtf8(value); project_ = value; - bitField0_ |= 0x00000010; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -2694,7 +3470,7 @@ public Builder setParent(java.lang.String value) { throw new NullPointerException(); } parent_ = value; - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -2713,7 +3489,7 @@ public Builder setParent(java.lang.String value) { */ public Builder clearParent() { parent_ = getDefaultInstance().getParent(); - bitField0_ = (bitField0_ & ~0x00000020); + bitField0_ = (bitField0_ & ~0x00000040); onChanged(); return this; } @@ -2737,7 +3513,7 @@ public Builder setParentBytes(com.google.protobuf.ByteString value) { } checkByteStringIsUtf8(value); parent_ = value; - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -2746,10 +3522,10 @@ public Builder setParentBytes(com.google.protobuf.ByteString value) { java.util.Collections.emptyList(); private void ensureMessagesIsMutable() { - if (!((bitField0_ & 0x00000040) != 0)) { + if (!((bitField0_ & 0x00000080) != 0)) { messages_ = new java.util.ArrayList(messages_); - bitField0_ |= 0x00000040; + bitField0_ |= 0x00000080; } } @@ -2999,7 +3775,7 @@ public Builder addAllMessages( public Builder clearMessages() { if (messagesBuilder_ == null) { messages_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000040); + bitField0_ = (bitField0_ & ~0x00000080); onChanged(); } else { messagesBuilder_.clear(); @@ -3146,12 +3922,290 @@ public com.google.cloud.geminidataanalytics.v1beta.Message.Builder addMessagesBu com.google.cloud.geminidataanalytics.v1beta.Message, com.google.cloud.geminidataanalytics.v1beta.Message.Builder, com.google.cloud.geminidataanalytics.v1beta.MessageOrBuilder>( - messages_, ((bitField0_ & 0x00000040) != 0), getParentForChildren(), isClean()); + messages_, ((bitField0_ & 0x00000080) != 0), getParentForChildren(), isClean()); messages_ = null; } return messagesBuilder_; } + private com.google.cloud.geminidataanalytics.v1beta.Credentials credentials_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.Credentials, + com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder, + com.google.cloud.geminidataanalytics.v1beta.CredentialsOrBuilder> + credentialsBuilder_; + + /** + * + * + *
        +     * Optional. The credentials to use when calling the data source(s) specified
        +     * in the context.
        +     *
        +     * This field can be used to provide credentials for various data sources.
        +     * For example, when connecting to Looker, it currently supports both OAuth
        +     * token and API key-based credentials, as described in
        +     * [Authentication with an
        +     * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the credentials field is set. + */ + public boolean hasCredentials() { + return ((bitField0_ & 0x00000100) != 0); + } + + /** + * + * + *
        +     * Optional. The credentials to use when calling the data source(s) specified
        +     * in the context.
        +     *
        +     * This field can be used to provide credentials for various data sources.
        +     * For example, when connecting to Looker, it currently supports both OAuth
        +     * token and API key-based credentials, as described in
        +     * [Authentication with an
        +     * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The credentials. + */ + public com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials() { + if (credentialsBuilder_ == null) { + return credentials_ == null + ? com.google.cloud.geminidataanalytics.v1beta.Credentials.getDefaultInstance() + : credentials_; + } else { + return credentialsBuilder_.getMessage(); + } + } + + /** + * + * + *
        +     * Optional. The credentials to use when calling the data source(s) specified
        +     * in the context.
        +     *
        +     * This field can be used to provide credentials for various data sources.
        +     * For example, when connecting to Looker, it currently supports both OAuth
        +     * token and API key-based credentials, as described in
        +     * [Authentication with an
        +     * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setCredentials(com.google.cloud.geminidataanalytics.v1beta.Credentials value) { + if (credentialsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + credentials_ = value; + } else { + credentialsBuilder_.setMessage(value); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The credentials to use when calling the data source(s) specified
        +     * in the context.
        +     *
        +     * This field can be used to provide credentials for various data sources.
        +     * For example, when connecting to Looker, it currently supports both OAuth
        +     * token and API key-based credentials, as described in
        +     * [Authentication with an
        +     * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setCredentials( + com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder builderForValue) { + if (credentialsBuilder_ == null) { + credentials_ = builderForValue.build(); + } else { + credentialsBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The credentials to use when calling the data source(s) specified
        +     * in the context.
        +     *
        +     * This field can be used to provide credentials for various data sources.
        +     * For example, when connecting to Looker, it currently supports both OAuth
        +     * token and API key-based credentials, as described in
        +     * [Authentication with an
        +     * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeCredentials(com.google.cloud.geminidataanalytics.v1beta.Credentials value) { + if (credentialsBuilder_ == null) { + if (((bitField0_ & 0x00000100) != 0) + && credentials_ != null + && credentials_ + != com.google.cloud.geminidataanalytics.v1beta.Credentials.getDefaultInstance()) { + getCredentialsBuilder().mergeFrom(value); + } else { + credentials_ = value; + } + } else { + credentialsBuilder_.mergeFrom(value); + } + if (credentials_ != null) { + bitField0_ |= 0x00000100; + onChanged(); + } + return this; + } + + /** + * + * + *
        +     * Optional. The credentials to use when calling the data source(s) specified
        +     * in the context.
        +     *
        +     * This field can be used to provide credentials for various data sources.
        +     * For example, when connecting to Looker, it currently supports both OAuth
        +     * token and API key-based credentials, as described in
        +     * [Authentication with an
        +     * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearCredentials() { + bitField0_ = (bitField0_ & ~0x00000100); + credentials_ = null; + if (credentialsBuilder_ != null) { + credentialsBuilder_.dispose(); + credentialsBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The credentials to use when calling the data source(s) specified
        +     * in the context.
        +     *
        +     * This field can be used to provide credentials for various data sources.
        +     * For example, when connecting to Looker, it currently supports both OAuth
        +     * token and API key-based credentials, as described in
        +     * [Authentication with an
        +     * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder getCredentialsBuilder() { + bitField0_ |= 0x00000100; + onChanged(); + return internalGetCredentialsFieldBuilder().getBuilder(); + } + + /** + * + * + *
        +     * Optional. The credentials to use when calling the data source(s) specified
        +     * in the context.
        +     *
        +     * This field can be used to provide credentials for various data sources.
        +     * For example, when connecting to Looker, it currently supports both OAuth
        +     * token and API key-based credentials, as described in
        +     * [Authentication with an
        +     * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.CredentialsOrBuilder + getCredentialsOrBuilder() { + if (credentialsBuilder_ != null) { + return credentialsBuilder_.getMessageOrBuilder(); + } else { + return credentials_ == null + ? com.google.cloud.geminidataanalytics.v1beta.Credentials.getDefaultInstance() + : credentials_; + } + } + + /** + * + * + *
        +     * Optional. The credentials to use when calling the data source(s) specified
        +     * in the context.
        +     *
        +     * This field can be used to provide credentials for various data sources.
        +     * For example, when connecting to Looker, it currently supports both OAuth
        +     * token and API key-based credentials, as described in
        +     * [Authentication with an
        +     * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.Credentials, + com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder, + com.google.cloud.geminidataanalytics.v1beta.CredentialsOrBuilder> + internalGetCredentialsFieldBuilder() { + if (credentialsBuilder_ == null) { + credentialsBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.Credentials, + com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder, + com.google.cloud.geminidataanalytics.v1beta.CredentialsOrBuilder>( + getCredentials(), getParentForChildren(), isClean()); + credentials_ = null; + } + return credentialsBuilder_; + } + private int thinkingMode_ = 0; /** @@ -3190,7 +4244,7 @@ public int getThinkingModeValue() { */ public Builder setThinkingModeValue(int value) { thinkingMode_ = value; - bitField0_ |= 0x00000080; + bitField0_ |= 0x00000200; onChanged(); return this; } @@ -3239,7 +4293,7 @@ public Builder setThinkingMode( if (value == null) { throw new NullPointerException(); } - bitField0_ |= 0x00000080; + bitField0_ |= 0x00000200; thinkingMode_ = value.getNumber(); onChanged(); return this; @@ -3260,12 +4314,124 @@ public Builder setThinkingMode( * @return This builder for chaining. */ public Builder clearThinkingMode() { - bitField0_ = (bitField0_ & ~0x00000080); + bitField0_ = (bitField0_ & ~0x00000200); thinkingMode_ = 0; onChanged(); return this; } + private int model_ = 0; + + /** + * + * + *
        +     * Optional. The model to use for the agent loop when processing the request.
        +     * This setting only has an effect when context.options.model is not set.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ChatRequest.Model model = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for model. + */ + @java.lang.Override + public int getModelValue() { + return model_; + } + + /** + * + * + *
        +     * Optional. The model to use for the agent loop when processing the request.
        +     * This setting only has an effect when context.options.model is not set.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ChatRequest.Model model = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The enum numeric value on the wire for model to set. + * @return This builder for chaining. + */ + public Builder setModelValue(int value) { + model_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The model to use for the agent loop when processing the request.
        +     * This setting only has an effect when context.options.model is not set.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ChatRequest.Model model = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The model. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ChatRequest.Model getModel() { + com.google.cloud.geminidataanalytics.v1beta.ChatRequest.Model result = + com.google.cloud.geminidataanalytics.v1beta.ChatRequest.Model.forNumber(model_); + return result == null + ? com.google.cloud.geminidataanalytics.v1beta.ChatRequest.Model.UNRECOGNIZED + : result; + } + + /** + * + * + *
        +     * Optional. The model to use for the agent loop when processing the request.
        +     * This setting only has an effect when context.options.model is not set.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ChatRequest.Model model = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The model to set. + * @return This builder for chaining. + */ + public Builder setModel(com.google.cloud.geminidataanalytics.v1beta.ChatRequest.Model value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000400; + model_ = value.getNumber(); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The model to use for the agent loop when processing the request.
        +     * This setting only has an effect when context.options.model is not set.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ChatRequest.Model model = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearModel() { + bitField0_ = (bitField0_ & ~0x00000400); + model_ = 0; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.ChatRequest) } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ChatRequestOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ChatRequestOrBuilder.java index 2f0684badd8e..a0eb9c1e1fae 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ChatRequestOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ChatRequestOrBuilder.java @@ -227,7 +227,51 @@ public interface ChatRequestOrBuilder * * *
        -   * Optional. The Google Cloud project to be used for quota and billing.
        +   * Optional. Looker specific settings.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the lookerSettings field is set. + */ + boolean hasLookerSettings(); + + /** + * + * + *
        +   * Optional. Looker specific settings.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The lookerSettings. + */ + com.google.cloud.geminidataanalytics.v1beta.LookerSettings getLookerSettings(); + + /** + * + * + *
        +   * Optional. Looker specific settings.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.LookerSettings looker_settings = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.LookerSettingsOrBuilder getLookerSettingsOrBuilder(); + + /** + * + * + *
        +   * Optional. Deprecated: Use `parent` field instead.
        +   * The Google Cloud project to be used for quota and billing.
            * 
        * * @@ -235,7 +279,7 @@ public interface ChatRequestOrBuilder * * * @deprecated google.cloud.geminidataanalytics.v1beta.ChatRequest.project is deprecated. See - * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=342 + * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=369 * @return The project. */ @java.lang.Deprecated @@ -245,7 +289,8 @@ public interface ChatRequestOrBuilder * * *
        -   * Optional. The Google Cloud project to be used for quota and billing.
        +   * Optional. Deprecated: Use `parent` field instead.
        +   * The Google Cloud project to be used for quota and billing.
            * 
        * * @@ -253,7 +298,7 @@ public interface ChatRequestOrBuilder * * * @deprecated google.cloud.geminidataanalytics.v1beta.ChatRequest.project is deprecated. See - * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=342 + * google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=369 * @return The bytes for project. */ @java.lang.Deprecated @@ -353,6 +398,70 @@ public interface ChatRequestOrBuilder */ com.google.cloud.geminidataanalytics.v1beta.MessageOrBuilder getMessagesOrBuilder(int index); + /** + * + * + *
        +   * Optional. The credentials to use when calling the data source(s) specified
        +   * in the context.
        +   *
        +   * This field can be used to provide credentials for various data sources.
        +   * For example, when connecting to Looker, it currently supports both OAuth
        +   * token and API key-based credentials, as described in
        +   * [Authentication with an
        +   * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the credentials field is set. + */ + boolean hasCredentials(); + + /** + * + * + *
        +   * Optional. The credentials to use when calling the data source(s) specified
        +   * in the context.
        +   *
        +   * This field can be used to provide credentials for various data sources.
        +   * For example, when connecting to Looker, it currently supports both OAuth
        +   * token and API key-based credentials, as described in
        +   * [Authentication with an
        +   * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The credentials. + */ + com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials(); + + /** + * + * + *
        +   * Optional. The credentials to use when calling the data source(s) specified
        +   * in the context.
        +   *
        +   * This field can be used to provide credentials for various data sources.
        +   * For example, when connecting to Looker, it currently supports both OAuth
        +   * token and API key-based credentials, as described in
        +   * [Authentication with an
        +   * SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk).
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.CredentialsOrBuilder getCredentialsOrBuilder(); + /** * * @@ -385,6 +494,41 @@ public interface ChatRequestOrBuilder */ com.google.cloud.geminidataanalytics.v1beta.ChatRequest.ThinkingMode getThinkingMode(); + /** + * + * + *
        +   * Optional. The model to use for the agent loop when processing the request.
        +   * This setting only has an effect when context.options.model is not set.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ChatRequest.Model model = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for model. + */ + int getModelValue(); + + /** + * + * + *
        +   * Optional. The model to use for the agent loop when processing the request.
        +   * This setting only has an effect when context.options.model is not set.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ChatRequest.Model model = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The model. + */ + com.google.cloud.geminidataanalytics.v1beta.ChatRequest.Model getModel(); + com.google.cloud.geminidataanalytics.v1beta.ChatRequest.ContextProviderCase getContextProviderCase(); + + com.google.cloud.geminidataanalytics.v1beta.ChatRequest.DatasourceSettingsCase + getDatasourceSettingsCase(); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Citation.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Citation.java new file mode 100644 index 000000000000..bf0f44baed3d --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Citation.java @@ -0,0 +1,1564 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +/** + * + * + *
        + * Source attributions for content.
        + * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.Citation} + */ +@com.google.protobuf.Generated +public final class Citation extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.Citation) + CitationOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "Citation"); + } + + // Use Citation.newBuilder() to construct. + private Citation(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private Citation() { + sources_ = java.util.Collections.emptyList(); + anchors_ = java.util.Collections.emptyList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_Citation_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_Citation_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.Citation.class, + com.google.cloud.geminidataanalytics.v1beta.Citation.Builder.class); + } + + public static final int SOURCES_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private java.util.List sources_; + + /** + * + * + *
        +   * Output only. List of the sources being cited.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getSourcesList() { + return sources_; + } + + /** + * + * + *
        +   * Output only. List of the sources being cited.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.CitationSourceOrBuilder> + getSourcesOrBuilderList() { + return sources_; + } + + /** + * + * + *
        +   * Output only. List of the sources being cited.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getSourcesCount() { + return sources_.size(); + } + + /** + * + * + *
        +   * Output only. List of the sources being cited.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationSource getSources(int index) { + return sources_.get(index); + } + + /** + * + * + *
        +   * Output only. List of the sources being cited.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationSourceOrBuilder getSourcesOrBuilder( + int index) { + return sources_.get(index); + } + + public static final int ANCHORS_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private java.util.List anchors_; + + /** + * + * + *
        +   * Output only. List of the anchors of the citations.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getAnchorsList() { + return anchors_; + } + + /** + * + * + *
        +   * Output only. List of the anchors of the citations.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.CitationAnchorOrBuilder> + getAnchorsOrBuilderList() { + return anchors_; + } + + /** + * + * + *
        +   * Output only. List of the anchors of the citations.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getAnchorsCount() { + return anchors_.size(); + } + + /** + * + * + *
        +   * Output only. List of the anchors of the citations.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor getAnchors(int index) { + return anchors_.get(index); + } + + /** + * + * + *
        +   * Output only. List of the anchors of the citations.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchorOrBuilder getAnchorsOrBuilder( + int index) { + return anchors_.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 < sources_.size(); i++) { + output.writeMessage(1, sources_.get(i)); + } + for (int i = 0; i < anchors_.size(); i++) { + output.writeMessage(2, anchors_.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 < sources_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, sources_.get(i)); + } + for (int i = 0; i < anchors_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, anchors_.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.cloud.geminidataanalytics.v1beta.Citation)) { + return super.equals(obj); + } + com.google.cloud.geminidataanalytics.v1beta.Citation other = + (com.google.cloud.geminidataanalytics.v1beta.Citation) obj; + + if (!getSourcesList().equals(other.getSourcesList())) return false; + if (!getAnchorsList().equals(other.getAnchorsList())) 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 (getSourcesCount() > 0) { + hash = (37 * hash) + SOURCES_FIELD_NUMBER; + hash = (53 * hash) + getSourcesList().hashCode(); + } + if (getAnchorsCount() > 0) { + hash = (37 * hash) + ANCHORS_FIELD_NUMBER; + hash = (53 * hash) + getAnchorsList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.geminidataanalytics.v1beta.Citation parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.Citation parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.Citation parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.Citation 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.cloud.geminidataanalytics.v1beta.Citation parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.Citation parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.Citation parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.Citation 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.cloud.geminidataanalytics.v1beta.Citation parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.Citation 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.cloud.geminidataanalytics.v1beta.Citation parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.Citation 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.cloud.geminidataanalytics.v1beta.Citation 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; + } + + /** + * + * + *
        +   * Source attributions for content.
        +   * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.Citation} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.geminidataanalytics.v1beta.Citation) + com.google.cloud.geminidataanalytics.v1beta.CitationOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_Citation_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_Citation_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.Citation.class, + com.google.cloud.geminidataanalytics.v1beta.Citation.Builder.class); + } + + // Construct using com.google.cloud.geminidataanalytics.v1beta.Citation.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (sourcesBuilder_ == null) { + sources_ = java.util.Collections.emptyList(); + } else { + sources_ = null; + sourcesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + if (anchorsBuilder_ == null) { + anchors_ = java.util.Collections.emptyList(); + } else { + anchors_ = null; + anchorsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000002); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_Citation_descriptor; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.Citation getDefaultInstanceForType() { + return com.google.cloud.geminidataanalytics.v1beta.Citation.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.Citation build() { + com.google.cloud.geminidataanalytics.v1beta.Citation result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.Citation buildPartial() { + com.google.cloud.geminidataanalytics.v1beta.Citation result = + new com.google.cloud.geminidataanalytics.v1beta.Citation(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields( + com.google.cloud.geminidataanalytics.v1beta.Citation result) { + if (sourcesBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + sources_ = java.util.Collections.unmodifiableList(sources_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.sources_ = sources_; + } else { + result.sources_ = sourcesBuilder_.build(); + } + if (anchorsBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + anchors_ = java.util.Collections.unmodifiableList(anchors_); + bitField0_ = (bitField0_ & ~0x00000002); + } + result.anchors_ = anchors_; + } else { + result.anchors_ = anchorsBuilder_.build(); + } + } + + private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.Citation result) { + int from_bitField0_ = bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.geminidataanalytics.v1beta.Citation) { + return mergeFrom((com.google.cloud.geminidataanalytics.v1beta.Citation) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.Citation other) { + if (other == com.google.cloud.geminidataanalytics.v1beta.Citation.getDefaultInstance()) + return this; + if (sourcesBuilder_ == null) { + if (!other.sources_.isEmpty()) { + if (sources_.isEmpty()) { + sources_ = other.sources_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureSourcesIsMutable(); + sources_.addAll(other.sources_); + } + onChanged(); + } + } else { + if (!other.sources_.isEmpty()) { + if (sourcesBuilder_.isEmpty()) { + sourcesBuilder_.dispose(); + sourcesBuilder_ = null; + sources_ = other.sources_; + bitField0_ = (bitField0_ & ~0x00000001); + sourcesBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetSourcesFieldBuilder() + : null; + } else { + sourcesBuilder_.addAllMessages(other.sources_); + } + } + } + if (anchorsBuilder_ == null) { + if (!other.anchors_.isEmpty()) { + if (anchors_.isEmpty()) { + anchors_ = other.anchors_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureAnchorsIsMutable(); + anchors_.addAll(other.anchors_); + } + onChanged(); + } + } else { + if (!other.anchors_.isEmpty()) { + if (anchorsBuilder_.isEmpty()) { + anchorsBuilder_.dispose(); + anchorsBuilder_ = null; + anchors_ = other.anchors_; + bitField0_ = (bitField0_ & ~0x00000002); + anchorsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetAnchorsFieldBuilder() + : null; + } else { + anchorsBuilder_.addAllMessages(other.anchors_); + } + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + com.google.cloud.geminidataanalytics.v1beta.CitationSource m = + input.readMessage( + com.google.cloud.geminidataanalytics.v1beta.CitationSource.parser(), + extensionRegistry); + if (sourcesBuilder_ == null) { + ensureSourcesIsMutable(); + sources_.add(m); + } else { + sourcesBuilder_.addMessage(m); + } + break; + } // case 10 + case 18: + { + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor m = + input.readMessage( + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.parser(), + extensionRegistry); + if (anchorsBuilder_ == null) { + ensureAnchorsIsMutable(); + anchors_.add(m); + } else { + anchorsBuilder_.addMessage(m); + } + break; + } // case 18 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.util.List sources_ = + java.util.Collections.emptyList(); + + private void ensureSourcesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + sources_ = + new java.util.ArrayList( + sources_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.CitationSource, + com.google.cloud.geminidataanalytics.v1beta.CitationSource.Builder, + com.google.cloud.geminidataanalytics.v1beta.CitationSourceOrBuilder> + sourcesBuilder_; + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List + getSourcesList() { + if (sourcesBuilder_ == null) { + return java.util.Collections.unmodifiableList(sources_); + } else { + return sourcesBuilder_.getMessageList(); + } + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public int getSourcesCount() { + if (sourcesBuilder_ == null) { + return sources_.size(); + } else { + return sourcesBuilder_.getCount(); + } + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.CitationSource getSources(int index) { + if (sourcesBuilder_ == null) { + return sources_.get(index); + } else { + return sourcesBuilder_.getMessage(index); + } + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setSources( + int index, com.google.cloud.geminidataanalytics.v1beta.CitationSource value) { + if (sourcesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSourcesIsMutable(); + sources_.set(index, value); + onChanged(); + } else { + sourcesBuilder_.setMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setSources( + int index, + com.google.cloud.geminidataanalytics.v1beta.CitationSource.Builder builderForValue) { + if (sourcesBuilder_ == null) { + ensureSourcesIsMutable(); + sources_.set(index, builderForValue.build()); + onChanged(); + } else { + sourcesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addSources(com.google.cloud.geminidataanalytics.v1beta.CitationSource value) { + if (sourcesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSourcesIsMutable(); + sources_.add(value); + onChanged(); + } else { + sourcesBuilder_.addMessage(value); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addSources( + int index, com.google.cloud.geminidataanalytics.v1beta.CitationSource value) { + if (sourcesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSourcesIsMutable(); + sources_.add(index, value); + onChanged(); + } else { + sourcesBuilder_.addMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addSources( + com.google.cloud.geminidataanalytics.v1beta.CitationSource.Builder builderForValue) { + if (sourcesBuilder_ == null) { + ensureSourcesIsMutable(); + sources_.add(builderForValue.build()); + onChanged(); + } else { + sourcesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addSources( + int index, + com.google.cloud.geminidataanalytics.v1beta.CitationSource.Builder builderForValue) { + if (sourcesBuilder_ == null) { + ensureSourcesIsMutable(); + sources_.add(index, builderForValue.build()); + onChanged(); + } else { + sourcesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAllSources( + java.lang.Iterable + values) { + if (sourcesBuilder_ == null) { + ensureSourcesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, sources_); + onChanged(); + } else { + sourcesBuilder_.addAllMessages(values); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearSources() { + if (sourcesBuilder_ == null) { + sources_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + sourcesBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder removeSources(int index) { + if (sourcesBuilder_ == null) { + ensureSourcesIsMutable(); + sources_.remove(index); + onChanged(); + } else { + sourcesBuilder_.remove(index); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.CitationSource.Builder getSourcesBuilder( + int index) { + return internalGetSourcesFieldBuilder().getBuilder(index); + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.CitationSourceOrBuilder getSourcesOrBuilder( + int index) { + if (sourcesBuilder_ == null) { + return sources_.get(index); + } else { + return sourcesBuilder_.getMessageOrBuilder(index); + } + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.CitationSourceOrBuilder> + getSourcesOrBuilderList() { + if (sourcesBuilder_ != null) { + return sourcesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(sources_); + } + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.CitationSource.Builder addSourcesBuilder() { + return internalGetSourcesFieldBuilder() + .addBuilder( + com.google.cloud.geminidataanalytics.v1beta.CitationSource.getDefaultInstance()); + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.CitationSource.Builder addSourcesBuilder( + int index) { + return internalGetSourcesFieldBuilder() + .addBuilder( + index, + com.google.cloud.geminidataanalytics.v1beta.CitationSource.getDefaultInstance()); + } + + /** + * + * + *
        +     * Output only. List of the sources being cited.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List + getSourcesBuilderList() { + return internalGetSourcesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.CitationSource, + com.google.cloud.geminidataanalytics.v1beta.CitationSource.Builder, + com.google.cloud.geminidataanalytics.v1beta.CitationSourceOrBuilder> + internalGetSourcesFieldBuilder() { + if (sourcesBuilder_ == null) { + sourcesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.CitationSource, + com.google.cloud.geminidataanalytics.v1beta.CitationSource.Builder, + com.google.cloud.geminidataanalytics.v1beta.CitationSourceOrBuilder>( + sources_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); + sources_ = null; + } + return sourcesBuilder_; + } + + private java.util.List anchors_ = + java.util.Collections.emptyList(); + + private void ensureAnchorsIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + anchors_ = + new java.util.ArrayList( + anchors_); + bitField0_ |= 0x00000002; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.Builder, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchorOrBuilder> + anchorsBuilder_; + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List + getAnchorsList() { + if (anchorsBuilder_ == null) { + return java.util.Collections.unmodifiableList(anchors_); + } else { + return anchorsBuilder_.getMessageList(); + } + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public int getAnchorsCount() { + if (anchorsBuilder_ == null) { + return anchors_.size(); + } else { + return anchorsBuilder_.getCount(); + } + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor getAnchors(int index) { + if (anchorsBuilder_ == null) { + return anchors_.get(index); + } else { + return anchorsBuilder_.getMessage(index); + } + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setAnchors( + int index, com.google.cloud.geminidataanalytics.v1beta.CitationAnchor value) { + if (anchorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAnchorsIsMutable(); + anchors_.set(index, value); + onChanged(); + } else { + anchorsBuilder_.setMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setAnchors( + int index, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.Builder builderForValue) { + if (anchorsBuilder_ == null) { + ensureAnchorsIsMutable(); + anchors_.set(index, builderForValue.build()); + onChanged(); + } else { + anchorsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAnchors(com.google.cloud.geminidataanalytics.v1beta.CitationAnchor value) { + if (anchorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAnchorsIsMutable(); + anchors_.add(value); + onChanged(); + } else { + anchorsBuilder_.addMessage(value); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAnchors( + int index, com.google.cloud.geminidataanalytics.v1beta.CitationAnchor value) { + if (anchorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAnchorsIsMutable(); + anchors_.add(index, value); + onChanged(); + } else { + anchorsBuilder_.addMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAnchors( + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.Builder builderForValue) { + if (anchorsBuilder_ == null) { + ensureAnchorsIsMutable(); + anchors_.add(builderForValue.build()); + onChanged(); + } else { + anchorsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAnchors( + int index, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.Builder builderForValue) { + if (anchorsBuilder_ == null) { + ensureAnchorsIsMutable(); + anchors_.add(index, builderForValue.build()); + onChanged(); + } else { + anchorsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAllAnchors( + java.lang.Iterable + values) { + if (anchorsBuilder_ == null) { + ensureAnchorsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, anchors_); + onChanged(); + } else { + anchorsBuilder_.addAllMessages(values); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearAnchors() { + if (anchorsBuilder_ == null) { + anchors_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + } else { + anchorsBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder removeAnchors(int index) { + if (anchorsBuilder_ == null) { + ensureAnchorsIsMutable(); + anchors_.remove(index); + onChanged(); + } else { + anchorsBuilder_.remove(index); + } + return this; + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.Builder getAnchorsBuilder( + int index) { + return internalGetAnchorsFieldBuilder().getBuilder(index); + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchorOrBuilder getAnchorsOrBuilder( + int index) { + if (anchorsBuilder_ == null) { + return anchors_.get(index); + } else { + return anchorsBuilder_.getMessageOrBuilder(index); + } + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.CitationAnchorOrBuilder> + getAnchorsOrBuilderList() { + if (anchorsBuilder_ != null) { + return anchorsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(anchors_); + } + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.Builder addAnchorsBuilder() { + return internalGetAnchorsFieldBuilder() + .addBuilder( + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.getDefaultInstance()); + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.Builder addAnchorsBuilder( + int index) { + return internalGetAnchorsFieldBuilder() + .addBuilder( + index, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.getDefaultInstance()); + } + + /** + * + * + *
        +     * Output only. List of the anchors of the citations.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List + getAnchorsBuilderList() { + return internalGetAnchorsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.Builder, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchorOrBuilder> + internalGetAnchorsFieldBuilder() { + if (anchorsBuilder_ == null) { + anchorsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.Builder, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchorOrBuilder>( + anchors_, ((bitField0_ & 0x00000002) != 0), getParentForChildren(), isClean()); + anchors_ = null; + } + return anchorsBuilder_; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.Citation) + } + + // @@protoc_insertion_point(class_scope:google.cloud.geminidataanalytics.v1beta.Citation) + private static final com.google.cloud.geminidataanalytics.v1beta.Citation DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.geminidataanalytics.v1beta.Citation(); + } + + public static com.google.cloud.geminidataanalytics.v1beta.Citation getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Citation parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.Citation getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationAnchor.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationAnchor.java new file mode 100644 index 000000000000..b13d51ec56ff --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationAnchor.java @@ -0,0 +1,2021 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +/** + * + * + *
        + * The anchor of the citation.
        + * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.CitationAnchor} + */ +@com.google.protobuf.Generated +public final class CitationAnchor extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.CitationAnchor) + CitationAnchorOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "CitationAnchor"); + } + + // Use CitationAnchor.newBuilder() to construct. + private CitationAnchor(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private CitationAnchor() {} + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.class, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.Builder.class); + } + + public interface TextMessageCitationAnchorOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
        +     * Output only. The 0-based index of the part within the TextMessage.parts
        +     * field.
        +     * 
        + * + * int32 part_index = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The partIndex. + */ + int getPartIndex(); + + /** + * + * + *
        +     * Output only. The offset, measured in UTF-8 bytes, within the part string
        +     * where the citation begins (inclusive). Example: For the text "Hello,
        +     * world" where "world" is cited, the start offset bytes (inclusive) is 7
        +     * and the end offset bytes (exclusive) is 12.
        +     * 
        + * + * int32 start_offset_bytes = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The startOffsetBytes. + */ + int getStartOffsetBytes(); + + /** + * + * + *
        +     * Output only. The offset, measured in UTF-8 bytes, within the part string
        +     * where the citation ends (exclusive). Example: For the text "Hello, world"
        +     * where "world" is cited, the start offset bytes (inclusive) is 7 and the
        +     * end offset bytes (exclusive) is 12.
        +     * 
        + * + * int32 end_offset_bytes = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The endOffsetBytes. + */ + int getEndOffsetBytes(); + + /** + * + * + *
        +     * Output only. The ids of the sources that are cited.
        +     * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return A list containing the sourceIds. + */ + java.util.List getSourceIdsList(); + + /** + * + * + *
        +     * Output only. The ids of the sources that are cited.
        +     * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The count of sourceIds. + */ + int getSourceIdsCount(); + + /** + * + * + *
        +     * Output only. The ids of the sources that are cited.
        +     * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param index The index of the element to return. + * @return The sourceIds at the given index. + */ + java.lang.String getSourceIds(int index); + + /** + * + * + *
        +     * Output only. The ids of the sources that are cited.
        +     * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param index The index of the value to return. + * @return The bytes of the sourceIds at the given index. + */ + com.google.protobuf.ByteString getSourceIdsBytes(int index); + } + + /** + * + * + *
        +   * Citation anchor within a TextMessage.
        +   * 
        + * + * Protobuf type {@code + * google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor} + */ + public static final class TextMessageCitationAnchor extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor) + TextMessageCitationAnchorOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "TextMessageCitationAnchor"); + } + + // Use TextMessageCitationAnchor.newBuilder() to construct. + private TextMessageCitationAnchor(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private TextMessageCitationAnchor() { + sourceIds_ = com.google.protobuf.LazyStringArrayList.emptyList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_TextMessageCitationAnchor_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_TextMessageCitationAnchor_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .class, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .Builder.class); + } + + public static final int PART_INDEX_FIELD_NUMBER = 1; + private int partIndex_ = 0; + + /** + * + * + *
        +     * Output only. The 0-based index of the part within the TextMessage.parts
        +     * field.
        +     * 
        + * + * int32 part_index = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The partIndex. + */ + @java.lang.Override + public int getPartIndex() { + return partIndex_; + } + + public static final int START_OFFSET_BYTES_FIELD_NUMBER = 2; + private int startOffsetBytes_ = 0; + + /** + * + * + *
        +     * Output only. The offset, measured in UTF-8 bytes, within the part string
        +     * where the citation begins (inclusive). Example: For the text "Hello,
        +     * world" where "world" is cited, the start offset bytes (inclusive) is 7
        +     * and the end offset bytes (exclusive) is 12.
        +     * 
        + * + * int32 start_offset_bytes = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The startOffsetBytes. + */ + @java.lang.Override + public int getStartOffsetBytes() { + return startOffsetBytes_; + } + + public static final int END_OFFSET_BYTES_FIELD_NUMBER = 3; + private int endOffsetBytes_ = 0; + + /** + * + * + *
        +     * Output only. The offset, measured in UTF-8 bytes, within the part string
        +     * where the citation ends (exclusive). Example: For the text "Hello, world"
        +     * where "world" is cited, the start offset bytes (inclusive) is 7 and the
        +     * end offset bytes (exclusive) is 12.
        +     * 
        + * + * int32 end_offset_bytes = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The endOffsetBytes. + */ + @java.lang.Override + public int getEndOffsetBytes() { + return endOffsetBytes_; + } + + public static final int SOURCE_IDS_FIELD_NUMBER = 4; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList sourceIds_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + /** + * + * + *
        +     * Output only. The ids of the sources that are cited.
        +     * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return A list containing the sourceIds. + */ + public com.google.protobuf.ProtocolStringList getSourceIdsList() { + return sourceIds_; + } + + /** + * + * + *
        +     * Output only. The ids of the sources that are cited.
        +     * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The count of sourceIds. + */ + public int getSourceIdsCount() { + return sourceIds_.size(); + } + + /** + * + * + *
        +     * Output only. The ids of the sources that are cited.
        +     * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param index The index of the element to return. + * @return The sourceIds at the given index. + */ + public java.lang.String getSourceIds(int index) { + return sourceIds_.get(index); + } + + /** + * + * + *
        +     * Output only. The ids of the sources that are cited.
        +     * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param index The index of the value to return. + * @return The bytes of the sourceIds at the given index. + */ + public com.google.protobuf.ByteString getSourceIdsBytes(int index) { + return sourceIds_.getByteString(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 (partIndex_ != 0) { + output.writeInt32(1, partIndex_); + } + if (startOffsetBytes_ != 0) { + output.writeInt32(2, startOffsetBytes_); + } + if (endOffsetBytes_ != 0) { + output.writeInt32(3, endOffsetBytes_); + } + for (int i = 0; i < sourceIds_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString(output, 4, sourceIds_.getRaw(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (partIndex_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, partIndex_); + } + if (startOffsetBytes_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, startOffsetBytes_); + } + if (endOffsetBytes_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(3, endOffsetBytes_); + } + { + int dataSize = 0; + for (int i = 0; i < sourceIds_.size(); i++) { + dataSize += computeStringSizeNoTag(sourceIds_.getRaw(i)); + } + size += dataSize; + size += 1 * getSourceIdsList().size(); + } + 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.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor)) { + return super.equals(obj); + } + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor other = + (com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor) + obj; + + if (getPartIndex() != other.getPartIndex()) return false; + if (getStartOffsetBytes() != other.getStartOffsetBytes()) return false; + if (getEndOffsetBytes() != other.getEndOffsetBytes()) return false; + if (!getSourceIdsList().equals(other.getSourceIdsList())) 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) + PART_INDEX_FIELD_NUMBER; + hash = (53 * hash) + getPartIndex(); + hash = (37 * hash) + START_OFFSET_BYTES_FIELD_NUMBER; + hash = (53 * hash) + getStartOffsetBytes(); + hash = (37 * hash) + END_OFFSET_BYTES_FIELD_NUMBER; + hash = (53 * hash) + getEndOffsetBytes(); + if (getSourceIdsCount() > 0) { + hash = (37 * hash) + SOURCE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getSourceIdsList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor + 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.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor + 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.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor + 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.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor + 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.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + 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; + } + + /** + * + * + *
        +     * Citation anchor within a TextMessage.
        +     * 
        + * + * Protobuf type {@code + * google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor) + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchorOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_TextMessageCitationAnchor_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_TextMessageCitationAnchor_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .class, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .Builder.class); + } + + // Construct using + // com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + partIndex_ = 0; + startOffsetBytes_ = 0; + endOffsetBytes_ = 0; + sourceIds_ = com.google.protobuf.LazyStringArrayList.emptyList(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_TextMessageCitationAnchor_descriptor; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + getDefaultInstanceForType() { + return com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + build() { + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + buildPartial() { + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + result = + new com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.partIndex_ = partIndex_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.startOffsetBytes_ = startOffsetBytes_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.endOffsetBytes_ = endOffsetBytes_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + sourceIds_.makeImmutable(); + result.sourceIds_ = sourceIds_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor) { + return mergeFrom( + (com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor) + other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + other) { + if (other + == com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .getDefaultInstance()) return this; + if (other.getPartIndex() != 0) { + setPartIndex(other.getPartIndex()); + } + if (other.getStartOffsetBytes() != 0) { + setStartOffsetBytes(other.getStartOffsetBytes()); + } + if (other.getEndOffsetBytes() != 0) { + setEndOffsetBytes(other.getEndOffsetBytes()); + } + if (!other.sourceIds_.isEmpty()) { + if (sourceIds_.isEmpty()) { + sourceIds_ = other.sourceIds_; + bitField0_ |= 0x00000008; + } else { + ensureSourceIdsIsMutable(); + sourceIds_.addAll(other.sourceIds_); + } + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + partIndex_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: + { + startOffsetBytes_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 24: + { + endOffsetBytes_ = input.readInt32(); + bitField0_ |= 0x00000004; + break; + } // case 24 + case 34: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureSourceIdsIsMutable(); + sourceIds_.add(s); + break; + } // case 34 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private int partIndex_; + + /** + * + * + *
        +       * Output only. The 0-based index of the part within the TextMessage.parts
        +       * field.
        +       * 
        + * + * int32 part_index = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The partIndex. + */ + @java.lang.Override + public int getPartIndex() { + return partIndex_; + } + + /** + * + * + *
        +       * Output only. The 0-based index of the part within the TextMessage.parts
        +       * field.
        +       * 
        + * + * int32 part_index = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The partIndex to set. + * @return This builder for chaining. + */ + public Builder setPartIndex(int value) { + + partIndex_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
        +       * Output only. The 0-based index of the part within the TextMessage.parts
        +       * field.
        +       * 
        + * + * int32 part_index = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearPartIndex() { + bitField0_ = (bitField0_ & ~0x00000001); + partIndex_ = 0; + onChanged(); + return this; + } + + private int startOffsetBytes_; + + /** + * + * + *
        +       * Output only. The offset, measured in UTF-8 bytes, within the part string
        +       * where the citation begins (inclusive). Example: For the text "Hello,
        +       * world" where "world" is cited, the start offset bytes (inclusive) is 7
        +       * and the end offset bytes (exclusive) is 12.
        +       * 
        + * + * int32 start_offset_bytes = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The startOffsetBytes. + */ + @java.lang.Override + public int getStartOffsetBytes() { + return startOffsetBytes_; + } + + /** + * + * + *
        +       * Output only. The offset, measured in UTF-8 bytes, within the part string
        +       * where the citation begins (inclusive). Example: For the text "Hello,
        +       * world" where "world" is cited, the start offset bytes (inclusive) is 7
        +       * and the end offset bytes (exclusive) is 12.
        +       * 
        + * + * int32 start_offset_bytes = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The startOffsetBytes to set. + * @return This builder for chaining. + */ + public Builder setStartOffsetBytes(int value) { + + startOffsetBytes_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
        +       * Output only. The offset, measured in UTF-8 bytes, within the part string
        +       * where the citation begins (inclusive). Example: For the text "Hello,
        +       * world" where "world" is cited, the start offset bytes (inclusive) is 7
        +       * and the end offset bytes (exclusive) is 12.
        +       * 
        + * + * int32 start_offset_bytes = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearStartOffsetBytes() { + bitField0_ = (bitField0_ & ~0x00000002); + startOffsetBytes_ = 0; + onChanged(); + return this; + } + + private int endOffsetBytes_; + + /** + * + * + *
        +       * Output only. The offset, measured in UTF-8 bytes, within the part string
        +       * where the citation ends (exclusive). Example: For the text "Hello, world"
        +       * where "world" is cited, the start offset bytes (inclusive) is 7 and the
        +       * end offset bytes (exclusive) is 12.
        +       * 
        + * + * int32 end_offset_bytes = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The endOffsetBytes. + */ + @java.lang.Override + public int getEndOffsetBytes() { + return endOffsetBytes_; + } + + /** + * + * + *
        +       * Output only. The offset, measured in UTF-8 bytes, within the part string
        +       * where the citation ends (exclusive). Example: For the text "Hello, world"
        +       * where "world" is cited, the start offset bytes (inclusive) is 7 and the
        +       * end offset bytes (exclusive) is 12.
        +       * 
        + * + * int32 end_offset_bytes = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The endOffsetBytes to set. + * @return This builder for chaining. + */ + public Builder setEndOffsetBytes(int value) { + + endOffsetBytes_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
        +       * Output only. The offset, measured in UTF-8 bytes, within the part string
        +       * where the citation ends (exclusive). Example: For the text "Hello, world"
        +       * where "world" is cited, the start offset bytes (inclusive) is 7 and the
        +       * end offset bytes (exclusive) is 12.
        +       * 
        + * + * int32 end_offset_bytes = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearEndOffsetBytes() { + bitField0_ = (bitField0_ & ~0x00000004); + endOffsetBytes_ = 0; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList sourceIds_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureSourceIdsIsMutable() { + if (!sourceIds_.isModifiable()) { + sourceIds_ = new com.google.protobuf.LazyStringArrayList(sourceIds_); + } + bitField0_ |= 0x00000008; + } + + /** + * + * + *
        +       * Output only. The ids of the sources that are cited.
        +       * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return A list containing the sourceIds. + */ + public com.google.protobuf.ProtocolStringList getSourceIdsList() { + sourceIds_.makeImmutable(); + return sourceIds_; + } + + /** + * + * + *
        +       * Output only. The ids of the sources that are cited.
        +       * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The count of sourceIds. + */ + public int getSourceIdsCount() { + return sourceIds_.size(); + } + + /** + * + * + *
        +       * Output only. The ids of the sources that are cited.
        +       * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param index The index of the element to return. + * @return The sourceIds at the given index. + */ + public java.lang.String getSourceIds(int index) { + return sourceIds_.get(index); + } + + /** + * + * + *
        +       * Output only. The ids of the sources that are cited.
        +       * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param index The index of the value to return. + * @return The bytes of the sourceIds at the given index. + */ + public com.google.protobuf.ByteString getSourceIdsBytes(int index) { + return sourceIds_.getByteString(index); + } + + /** + * + * + *
        +       * Output only. The ids of the sources that are cited.
        +       * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param index The index to set the value at. + * @param value The sourceIds to set. + * @return This builder for chaining. + */ + public Builder setSourceIds(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureSourceIdsIsMutable(); + sourceIds_.set(index, value); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
        +       * Output only. The ids of the sources that are cited.
        +       * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The sourceIds to add. + * @return This builder for chaining. + */ + public Builder addSourceIds(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureSourceIdsIsMutable(); + sourceIds_.add(value); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
        +       * Output only. The ids of the sources that are cited.
        +       * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param values The sourceIds to add. + * @return This builder for chaining. + */ + public Builder addAllSourceIds(java.lang.Iterable values) { + ensureSourceIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, sourceIds_); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
        +       * Output only. The ids of the sources that are cited.
        +       * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearSourceIds() { + sourceIds_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + ; + onChanged(); + return this; + } + + /** + * + * + *
        +       * Output only. The ids of the sources that are cited.
        +       * 
        + * + * repeated string source_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes of the sourceIds to add. + * @return This builder for chaining. + */ + public Builder addSourceIdsBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureSourceIdsIsMutable(); + sourceIds_.add(value); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor) + } + + // @@protoc_insertion_point(class_scope:google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor) + private static final com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor(); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public TextMessageCitationAnchor parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + private int anchorTypeCase_ = 0; + + @SuppressWarnings("serial") + private java.lang.Object anchorType_; + + public enum AnchorTypeCase + implements + com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + TEXT_MESSAGE_ANCHOR(1), + ANCHORTYPE_NOT_SET(0); + private final int value; + + private AnchorTypeCase(int value) { + this.value = value; + } + + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static AnchorTypeCase valueOf(int value) { + return forNumber(value); + } + + public static AnchorTypeCase forNumber(int value) { + switch (value) { + case 1: + return TEXT_MESSAGE_ANCHOR; + case 0: + return ANCHORTYPE_NOT_SET; + default: + return null; + } + } + + public int getNumber() { + return this.value; + } + }; + + public AnchorTypeCase getAnchorTypeCase() { + return AnchorTypeCase.forNumber(anchorTypeCase_); + } + + public static final int TEXT_MESSAGE_ANCHOR_FIELD_NUMBER = 1; + + /** + * + * + *
        +   * Output only. Only set if the citation is for a TextMessage.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the textMessageAnchor field is set. + */ + @java.lang.Override + public boolean hasTextMessageAnchor() { + return anchorTypeCase_ == 1; + } + + /** + * + * + *
        +   * Output only. Only set if the citation is for a TextMessage.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The textMessageAnchor. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + getTextMessageAnchor() { + if (anchorTypeCase_ == 1) { + return (com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor) + anchorType_; + } + return com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .getDefaultInstance(); + } + + /** + * + * + *
        +   * Output only. Only set if the citation is for a TextMessage.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchorOrBuilder + getTextMessageAnchorOrBuilder() { + if (anchorTypeCase_ == 1) { + return (com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor) + anchorType_; + } + return com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .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 (anchorTypeCase_ == 1) { + output.writeMessage( + 1, + (com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor) + anchorType_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (anchorTypeCase_ == 1) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 1, + (com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor) + anchorType_); + } + 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.cloud.geminidataanalytics.v1beta.CitationAnchor)) { + return super.equals(obj); + } + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor other = + (com.google.cloud.geminidataanalytics.v1beta.CitationAnchor) obj; + + if (!getAnchorTypeCase().equals(other.getAnchorTypeCase())) return false; + switch (anchorTypeCase_) { + case 1: + if (!getTextMessageAnchor().equals(other.getTextMessageAnchor())) 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 (anchorTypeCase_) { + case 1: + hash = (37 * hash) + TEXT_MESSAGE_ANCHOR_FIELD_NUMBER; + hash = (53 * hash) + getTextMessageAnchor().hashCode(); + break; + case 0: + default: + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor 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.cloud.geminidataanalytics.v1beta.CitationAnchor parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor 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.cloud.geminidataanalytics.v1beta.CitationAnchor parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor 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.cloud.geminidataanalytics.v1beta.CitationAnchor parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor 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.cloud.geminidataanalytics.v1beta.CitationAnchor 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; + } + + /** + * + * + *
        +   * The anchor of the citation.
        +   * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.CitationAnchor} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.geminidataanalytics.v1beta.CitationAnchor) + com.google.cloud.geminidataanalytics.v1beta.CitationAnchorOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.class, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.Builder.class); + } + + // Construct using com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (textMessageAnchorBuilder_ != null) { + textMessageAnchorBuilder_.clear(); + } + anchorTypeCase_ = 0; + anchorType_ = null; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_descriptor; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor getDefaultInstanceForType() { + return com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor build() { + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor buildPartial() { + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor result = + new com.google.cloud.geminidataanalytics.v1beta.CitationAnchor(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + buildPartialOneofs(result); + onBuilt(); + return result; + } + + private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.CitationAnchor result) { + int from_bitField0_ = bitField0_; + } + + private void buildPartialOneofs( + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor result) { + result.anchorTypeCase_ = anchorTypeCase_; + result.anchorType_ = this.anchorType_; + if (anchorTypeCase_ == 1 && textMessageAnchorBuilder_ != null) { + result.anchorType_ = textMessageAnchorBuilder_.build(); + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.geminidataanalytics.v1beta.CitationAnchor) { + return mergeFrom((com.google.cloud.geminidataanalytics.v1beta.CitationAnchor) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.CitationAnchor other) { + if (other == com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.getDefaultInstance()) + return this; + switch (other.getAnchorTypeCase()) { + case TEXT_MESSAGE_ANCHOR: + { + mergeTextMessageAnchor(other.getTextMessageAnchor()); + break; + } + case ANCHORTYPE_NOT_SET: + { + break; + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + input.readMessage( + internalGetTextMessageAnchorFieldBuilder().getBuilder(), extensionRegistry); + anchorTypeCase_ = 1; + break; + } // case 10 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int anchorTypeCase_ = 0; + private java.lang.Object anchorType_; + + public AnchorTypeCase getAnchorTypeCase() { + return AnchorTypeCase.forNumber(anchorTypeCase_); + } + + public Builder clearAnchorType() { + anchorTypeCase_ = 0; + anchorType_ = null; + onChanged(); + return this; + } + + private int bitField0_; + + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .Builder, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchorOrBuilder> + textMessageAnchorBuilder_; + + /** + * + * + *
        +     * Output only. Only set if the citation is for a TextMessage.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the textMessageAnchor field is set. + */ + @java.lang.Override + public boolean hasTextMessageAnchor() { + return anchorTypeCase_ == 1; + } + + /** + * + * + *
        +     * Output only. Only set if the citation is for a TextMessage.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The textMessageAnchor. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + getTextMessageAnchor() { + if (textMessageAnchorBuilder_ == null) { + if (anchorTypeCase_ == 1) { + return (com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor) + anchorType_; + } + return com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .getDefaultInstance(); + } else { + if (anchorTypeCase_ == 1) { + return textMessageAnchorBuilder_.getMessage(); + } + return com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .getDefaultInstance(); + } + } + + /** + * + * + *
        +     * Output only. Only set if the citation is for a TextMessage.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setTextMessageAnchor( + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + value) { + if (textMessageAnchorBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + anchorType_ = value; + onChanged(); + } else { + textMessageAnchorBuilder_.setMessage(value); + } + anchorTypeCase_ = 1; + return this; + } + + /** + * + * + *
        +     * Output only. Only set if the citation is for a TextMessage.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setTextMessageAnchor( + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor.Builder + builderForValue) { + if (textMessageAnchorBuilder_ == null) { + anchorType_ = builderForValue.build(); + onChanged(); + } else { + textMessageAnchorBuilder_.setMessage(builderForValue.build()); + } + anchorTypeCase_ = 1; + return this; + } + + /** + * + * + *
        +     * Output only. Only set if the citation is for a TextMessage.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeTextMessageAnchor( + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + value) { + if (textMessageAnchorBuilder_ == null) { + if (anchorTypeCase_ == 1 + && anchorType_ + != com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor.getDefaultInstance()) { + anchorType_ = + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .newBuilder( + (com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor) + anchorType_) + .mergeFrom(value) + .buildPartial(); + } else { + anchorType_ = value; + } + onChanged(); + } else { + if (anchorTypeCase_ == 1) { + textMessageAnchorBuilder_.mergeFrom(value); + } else { + textMessageAnchorBuilder_.setMessage(value); + } + } + anchorTypeCase_ = 1; + return this; + } + + /** + * + * + *
        +     * Output only. Only set if the citation is for a TextMessage.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearTextMessageAnchor() { + if (textMessageAnchorBuilder_ == null) { + if (anchorTypeCase_ == 1) { + anchorTypeCase_ = 0; + anchorType_ = null; + onChanged(); + } + } else { + if (anchorTypeCase_ == 1) { + anchorTypeCase_ = 0; + anchorType_ = null; + } + textMessageAnchorBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * Output only. Only set if the citation is for a TextMessage.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .Builder + getTextMessageAnchorBuilder() { + return internalGetTextMessageAnchorFieldBuilder().getBuilder(); + } + + /** + * + * + *
        +     * Output only. Only set if the citation is for a TextMessage.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchorOrBuilder + getTextMessageAnchorOrBuilder() { + if ((anchorTypeCase_ == 1) && (textMessageAnchorBuilder_ != null)) { + return textMessageAnchorBuilder_.getMessageOrBuilder(); + } else { + if (anchorTypeCase_ == 1) { + return (com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor) + anchorType_; + } + return com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .getDefaultInstance(); + } + } + + /** + * + * + *
        +     * Output only. Only set if the citation is for a TextMessage.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .Builder, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchorOrBuilder> + internalGetTextMessageAnchorFieldBuilder() { + if (textMessageAnchorBuilder_ == null) { + if (!(anchorTypeCase_ == 1)) { + anchorType_ = + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .getDefaultInstance(); + } + textMessageAnchorBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + .Builder, + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchorOrBuilder>( + (com.google.cloud.geminidataanalytics.v1beta.CitationAnchor + .TextMessageCitationAnchor) + anchorType_, + getParentForChildren(), + isClean()); + anchorType_ = null; + } + anchorTypeCase_ = 1; + onChanged(); + return textMessageAnchorBuilder_; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.CitationAnchor) + } + + // @@protoc_insertion_point(class_scope:google.cloud.geminidataanalytics.v1beta.CitationAnchor) + private static final com.google.cloud.geminidataanalytics.v1beta.CitationAnchor DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.geminidataanalytics.v1beta.CitationAnchor(); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationAnchor getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CitationAnchor parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationAnchor getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationAnchorOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationAnchorOrBuilder.java new file mode 100644 index 000000000000..12717a3dd8e8 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationAnchorOrBuilder.java @@ -0,0 +1,75 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +@com.google.protobuf.Generated +public interface CitationAnchorOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.CitationAnchor) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
        +   * Output only. Only set if the citation is for a TextMessage.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the textMessageAnchor field is set. + */ + boolean hasTextMessageAnchor(); + + /** + * + * + *
        +   * Output only. Only set if the citation is for a TextMessage.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The textMessageAnchor. + */ + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor + getTextMessageAnchor(); + + /** + * + * + *
        +   * Output only. Only set if the citation is for a TextMessage.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchor text_message_anchor = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.TextMessageCitationAnchorOrBuilder + getTextMessageAnchorOrBuilder(); + + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor.AnchorTypeCase getAnchorTypeCase(); +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationOrBuilder.java new file mode 100644 index 000000000000..ca929fd8d5f5 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationOrBuilder.java @@ -0,0 +1,162 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +@com.google.protobuf.Generated +public interface CitationOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.Citation) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
        +   * Output only. List of the sources being cited.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List getSourcesList(); + + /** + * + * + *
        +   * Output only. List of the sources being cited.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.CitationSource getSources(int index); + + /** + * + * + *
        +   * Output only. List of the sources being cited.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + int getSourcesCount(); + + /** + * + * + *
        +   * Output only. List of the sources being cited.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List + getSourcesOrBuilderList(); + + /** + * + * + *
        +   * Output only. List of the sources being cited.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationSource sources = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.CitationSourceOrBuilder getSourcesOrBuilder( + int index); + + /** + * + * + *
        +   * Output only. List of the anchors of the citations.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List getAnchorsList(); + + /** + * + * + *
        +   * Output only. List of the anchors of the citations.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.CitationAnchor getAnchors(int index); + + /** + * + * + *
        +   * Output only. List of the anchors of the citations.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + int getAnchorsCount(); + + /** + * + * + *
        +   * Output only. List of the anchors of the citations.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List + getAnchorsOrBuilderList(); + + /** + * + * + *
        +   * Output only. List of the anchors of the citations.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.CitationAnchor anchors = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.CitationAnchorOrBuilder getAnchorsOrBuilder( + int index); +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationSource.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationSource.java new file mode 100644 index 000000000000..efab9104e089 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationSource.java @@ -0,0 +1,1795 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +/** + * + * + *
        + * The source of the citation.
        + * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.CitationSource} + */ +@com.google.protobuf.Generated +public final class CitationSource extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.CitationSource) + CitationSourceOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "CitationSource"); + } + + // Use CitationSource.newBuilder() to construct. + private CitationSource(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private CitationSource() { + id_ = ""; + title_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationSource_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationSource_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.CitationSource.class, + com.google.cloud.geminidataanalytics.v1beta.CitationSource.Builder.class); + } + + private int sourceTypeCase_ = 0; + + @SuppressWarnings("serial") + private java.lang.Object sourceType_; + + public enum SourceTypeCase + implements + com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + URI(3), + EXAMPLE_QUERY(4), + GLOSSARY_TERM(5), + SOURCETYPE_NOT_SET(0); + private final int value; + + private SourceTypeCase(int value) { + this.value = value; + } + + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static SourceTypeCase valueOf(int value) { + return forNumber(value); + } + + public static SourceTypeCase forNumber(int value) { + switch (value) { + case 3: + return URI; + case 4: + return EXAMPLE_QUERY; + case 5: + return GLOSSARY_TERM; + case 0: + return SOURCETYPE_NOT_SET; + default: + return null; + } + } + + public int getNumber() { + return this.value; + } + }; + + public SourceTypeCase getSourceTypeCase() { + return SourceTypeCase.forNumber(sourceTypeCase_); + } + + public static final int URI_FIELD_NUMBER = 3; + + /** + * + * + *
        +   * Output only. The uri used as the source, such as a web grounding URL.
        +   * 
        + * + * string uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the uri field is set. + */ + public boolean hasUri() { + return sourceTypeCase_ == 3; + } + + /** + * + * + *
        +   * Output only. The uri used as the source, such as a web grounding URL.
        +   * 
        + * + * string uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The uri. + */ + public java.lang.String getUri() { + java.lang.Object ref = ""; + if (sourceTypeCase_ == 3) { + ref = sourceType_; + } + 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 (sourceTypeCase_ == 3) { + sourceType_ = s; + } + return s; + } + } + + /** + * + * + *
        +   * Output only. The uri used as the source, such as a web grounding URL.
        +   * 
        + * + * string uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for uri. + */ + public com.google.protobuf.ByteString getUriBytes() { + java.lang.Object ref = ""; + if (sourceTypeCase_ == 3) { + ref = sourceType_; + } + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + if (sourceTypeCase_ == 3) { + sourceType_ = b; + } + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int EXAMPLE_QUERY_FIELD_NUMBER = 4; + + /** + * + * + *
        +   * Output only. The example query used as the source.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the exampleQuery field is set. + */ + @java.lang.Override + public boolean hasExampleQuery() { + return sourceTypeCase_ == 4; + } + + /** + * + * + *
        +   * Output only. The example query used as the source.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The exampleQuery. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ExampleQuery getExampleQuery() { + if (sourceTypeCase_ == 4) { + return (com.google.cloud.geminidataanalytics.v1beta.ExampleQuery) sourceType_; + } + return com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.getDefaultInstance(); + } + + /** + * + * + *
        +   * Output only. The example query used as the source.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder + getExampleQueryOrBuilder() { + if (sourceTypeCase_ == 4) { + return (com.google.cloud.geminidataanalytics.v1beta.ExampleQuery) sourceType_; + } + return com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.getDefaultInstance(); + } + + public static final int GLOSSARY_TERM_FIELD_NUMBER = 5; + + /** + * + * + *
        +   * Output only. The glossary term used as the source.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the glossaryTerm field is set. + */ + @java.lang.Override + public boolean hasGlossaryTerm() { + return sourceTypeCase_ == 5; + } + + /** + * + * + *
        +   * Output only. The glossary term used as the source.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The glossaryTerm. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm getGlossaryTerm() { + if (sourceTypeCase_ == 5) { + return (com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm) sourceType_; + } + return com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.getDefaultInstance(); + } + + /** + * + * + *
        +   * Output only. The glossary term used as the source.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.GlossaryTermOrBuilder + getGlossaryTermOrBuilder() { + if (sourceTypeCase_ == 5) { + return (com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm) sourceType_; + } + return com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.getDefaultInstance(); + } + + public static final int ID_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object id_ = ""; + + /** + * + * + *
        +   * Output only. Unique identifier of the source. This ID is service-generated
        +   * and is unique within the scope of a single `Citation` message.
        +   * 
        + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The id. + */ + @java.lang.Override + public java.lang.String getId() { + java.lang.Object ref = id_; + 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(); + id_ = s; + return s; + } + } + + /** + * + * + *
        +   * Output only. Unique identifier of the source. This ID is service-generated
        +   * and is unique within the scope of a single `Citation` message.
        +   * 
        + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for id. + */ + @java.lang.Override + public com.google.protobuf.ByteString getIdBytes() { + java.lang.Object ref = id_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + id_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int TITLE_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object title_ = ""; + + /** + * + * + *
        +   * Output only. The title of the source.
        +   * 
        + * + * string title = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The title. + */ + @java.lang.Override + public java.lang.String getTitle() { + java.lang.Object ref = title_; + 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(); + title_ = s; + return s; + } + } + + /** + * + * + *
        +   * Output only. The title of the source.
        +   * 
        + * + * string title = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for title. + */ + @java.lang.Override + public com.google.protobuf.ByteString getTitleBytes() { + java.lang.Object ref = title_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + title_ = 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(id_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, id_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(title_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, title_); + } + if (sourceTypeCase_ == 3) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, sourceType_); + } + if (sourceTypeCase_ == 4) { + output.writeMessage( + 4, (com.google.cloud.geminidataanalytics.v1beta.ExampleQuery) sourceType_); + } + if (sourceTypeCase_ == 5) { + output.writeMessage( + 5, (com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm) sourceType_); + } + 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(id_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, id_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(title_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, title_); + } + if (sourceTypeCase_ == 3) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, sourceType_); + } + if (sourceTypeCase_ == 4) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 4, (com.google.cloud.geminidataanalytics.v1beta.ExampleQuery) sourceType_); + } + if (sourceTypeCase_ == 5) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 5, (com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm) sourceType_); + } + 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.cloud.geminidataanalytics.v1beta.CitationSource)) { + return super.equals(obj); + } + com.google.cloud.geminidataanalytics.v1beta.CitationSource other = + (com.google.cloud.geminidataanalytics.v1beta.CitationSource) obj; + + if (!getId().equals(other.getId())) return false; + if (!getTitle().equals(other.getTitle())) return false; + if (!getSourceTypeCase().equals(other.getSourceTypeCase())) return false; + switch (sourceTypeCase_) { + case 3: + if (!getUri().equals(other.getUri())) return false; + break; + case 4: + if (!getExampleQuery().equals(other.getExampleQuery())) return false; + break; + case 5: + if (!getGlossaryTerm().equals(other.getGlossaryTerm())) 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(); + hash = (37 * hash) + ID_FIELD_NUMBER; + hash = (53 * hash) + getId().hashCode(); + hash = (37 * hash) + TITLE_FIELD_NUMBER; + hash = (53 * hash) + getTitle().hashCode(); + switch (sourceTypeCase_) { + case 3: + hash = (37 * hash) + URI_FIELD_NUMBER; + hash = (53 * hash) + getUri().hashCode(); + break; + case 4: + hash = (37 * hash) + EXAMPLE_QUERY_FIELD_NUMBER; + hash = (53 * hash) + getExampleQuery().hashCode(); + break; + case 5: + hash = (37 * hash) + GLOSSARY_TERM_FIELD_NUMBER; + hash = (53 * hash) + getGlossaryTerm().hashCode(); + break; + case 0: + default: + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationSource parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationSource parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationSource parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationSource 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.cloud.geminidataanalytics.v1beta.CitationSource parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationSource parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationSource parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationSource 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.cloud.geminidataanalytics.v1beta.CitationSource parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationSource 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.cloud.geminidataanalytics.v1beta.CitationSource parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationSource 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.cloud.geminidataanalytics.v1beta.CitationSource 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; + } + + /** + * + * + *
        +   * The source of the citation.
        +   * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.CitationSource} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.geminidataanalytics.v1beta.CitationSource) + com.google.cloud.geminidataanalytics.v1beta.CitationSourceOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationSource_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationSource_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.CitationSource.class, + com.google.cloud.geminidataanalytics.v1beta.CitationSource.Builder.class); + } + + // Construct using com.google.cloud.geminidataanalytics.v1beta.CitationSource.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (exampleQueryBuilder_ != null) { + exampleQueryBuilder_.clear(); + } + if (glossaryTermBuilder_ != null) { + glossaryTermBuilder_.clear(); + } + id_ = ""; + title_ = ""; + sourceTypeCase_ = 0; + sourceType_ = null; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_CitationSource_descriptor; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationSource getDefaultInstanceForType() { + return com.google.cloud.geminidataanalytics.v1beta.CitationSource.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationSource build() { + com.google.cloud.geminidataanalytics.v1beta.CitationSource result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationSource buildPartial() { + com.google.cloud.geminidataanalytics.v1beta.CitationSource result = + new com.google.cloud.geminidataanalytics.v1beta.CitationSource(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + buildPartialOneofs(result); + onBuilt(); + return result; + } + + private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.CitationSource result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000008) != 0)) { + result.id_ = id_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.title_ = title_; + } + } + + private void buildPartialOneofs( + com.google.cloud.geminidataanalytics.v1beta.CitationSource result) { + result.sourceTypeCase_ = sourceTypeCase_; + result.sourceType_ = this.sourceType_; + if (sourceTypeCase_ == 4 && exampleQueryBuilder_ != null) { + result.sourceType_ = exampleQueryBuilder_.build(); + } + if (sourceTypeCase_ == 5 && glossaryTermBuilder_ != null) { + result.sourceType_ = glossaryTermBuilder_.build(); + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.geminidataanalytics.v1beta.CitationSource) { + return mergeFrom((com.google.cloud.geminidataanalytics.v1beta.CitationSource) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.CitationSource other) { + if (other == com.google.cloud.geminidataanalytics.v1beta.CitationSource.getDefaultInstance()) + return this; + if (!other.getId().isEmpty()) { + id_ = other.id_; + bitField0_ |= 0x00000008; + onChanged(); + } + if (!other.getTitle().isEmpty()) { + title_ = other.title_; + bitField0_ |= 0x00000010; + onChanged(); + } + switch (other.getSourceTypeCase()) { + case URI: + { + sourceTypeCase_ = 3; + sourceType_ = other.sourceType_; + onChanged(); + break; + } + case EXAMPLE_QUERY: + { + mergeExampleQuery(other.getExampleQuery()); + break; + } + case GLOSSARY_TERM: + { + mergeGlossaryTerm(other.getGlossaryTerm()); + break; + } + case SOURCETYPE_NOT_SET: + { + break; + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + id_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 10 + case 18: + { + title_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000010; + break; + } // case 18 + case 26: + { + java.lang.String s = input.readStringRequireUtf8(); + sourceTypeCase_ = 3; + sourceType_ = s; + break; + } // case 26 + case 34: + { + input.readMessage( + internalGetExampleQueryFieldBuilder().getBuilder(), extensionRegistry); + sourceTypeCase_ = 4; + break; + } // case 34 + case 42: + { + input.readMessage( + internalGetGlossaryTermFieldBuilder().getBuilder(), extensionRegistry); + sourceTypeCase_ = 5; + break; + } // case 42 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int sourceTypeCase_ = 0; + private java.lang.Object sourceType_; + + public SourceTypeCase getSourceTypeCase() { + return SourceTypeCase.forNumber(sourceTypeCase_); + } + + public Builder clearSourceType() { + sourceTypeCase_ = 0; + sourceType_ = null; + onChanged(); + return this; + } + + private int bitField0_; + + /** + * + * + *
        +     * Output only. The uri used as the source, such as a web grounding URL.
        +     * 
        + * + * string uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the uri field is set. + */ + @java.lang.Override + public boolean hasUri() { + return sourceTypeCase_ == 3; + } + + /** + * + * + *
        +     * Output only. The uri used as the source, such as a web grounding URL.
        +     * 
        + * + * string uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The uri. + */ + @java.lang.Override + public java.lang.String getUri() { + java.lang.Object ref = ""; + if (sourceTypeCase_ == 3) { + ref = sourceType_; + } + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + if (sourceTypeCase_ == 3) { + sourceType_ = s; + } + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * Output only. The uri used as the source, such as a web grounding URL.
        +     * 
        + * + * string uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for uri. + */ + @java.lang.Override + public com.google.protobuf.ByteString getUriBytes() { + java.lang.Object ref = ""; + if (sourceTypeCase_ == 3) { + ref = sourceType_; + } + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + if (sourceTypeCase_ == 3) { + sourceType_ = b; + } + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * Output only. The uri used as the source, such as a web grounding URL.
        +     * 
        + * + * string uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The uri to set. + * @return This builder for chaining. + */ + public Builder setUri(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + sourceTypeCase_ = 3; + sourceType_ = value; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Output only. The uri used as the source, such as a web grounding URL.
        +     * 
        + * + * string uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearUri() { + if (sourceTypeCase_ == 3) { + sourceTypeCase_ = 0; + sourceType_ = null; + onChanged(); + } + return this; + } + + /** + * + * + *
        +     * Output only. The uri used as the source, such as a web grounding URL.
        +     * 
        + * + * string uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for uri to set. + * @return This builder for chaining. + */ + public Builder setUriBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + sourceTypeCase_ = 3; + sourceType_ = value; + onChanged(); + return this; + } + + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery, + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.Builder, + com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder> + exampleQueryBuilder_; + + /** + * + * + *
        +     * Output only. The example query used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the exampleQuery field is set. + */ + @java.lang.Override + public boolean hasExampleQuery() { + return sourceTypeCase_ == 4; + } + + /** + * + * + *
        +     * Output only. The example query used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The exampleQuery. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ExampleQuery getExampleQuery() { + if (exampleQueryBuilder_ == null) { + if (sourceTypeCase_ == 4) { + return (com.google.cloud.geminidataanalytics.v1beta.ExampleQuery) sourceType_; + } + return com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.getDefaultInstance(); + } else { + if (sourceTypeCase_ == 4) { + return exampleQueryBuilder_.getMessage(); + } + return com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.getDefaultInstance(); + } + } + + /** + * + * + *
        +     * Output only. The example query used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setExampleQuery(com.google.cloud.geminidataanalytics.v1beta.ExampleQuery value) { + if (exampleQueryBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + sourceType_ = value; + onChanged(); + } else { + exampleQueryBuilder_.setMessage(value); + } + sourceTypeCase_ = 4; + return this; + } + + /** + * + * + *
        +     * Output only. The example query used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setExampleQuery( + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.Builder builderForValue) { + if (exampleQueryBuilder_ == null) { + sourceType_ = builderForValue.build(); + onChanged(); + } else { + exampleQueryBuilder_.setMessage(builderForValue.build()); + } + sourceTypeCase_ = 4; + return this; + } + + /** + * + * + *
        +     * Output only. The example query used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeExampleQuery( + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery value) { + if (exampleQueryBuilder_ == null) { + if (sourceTypeCase_ == 4 + && sourceType_ + != com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.getDefaultInstance()) { + sourceType_ = + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.newBuilder( + (com.google.cloud.geminidataanalytics.v1beta.ExampleQuery) sourceType_) + .mergeFrom(value) + .buildPartial(); + } else { + sourceType_ = value; + } + onChanged(); + } else { + if (sourceTypeCase_ == 4) { + exampleQueryBuilder_.mergeFrom(value); + } else { + exampleQueryBuilder_.setMessage(value); + } + } + sourceTypeCase_ = 4; + return this; + } + + /** + * + * + *
        +     * Output only. The example query used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearExampleQuery() { + if (exampleQueryBuilder_ == null) { + if (sourceTypeCase_ == 4) { + sourceTypeCase_ = 0; + sourceType_ = null; + onChanged(); + } + } else { + if (sourceTypeCase_ == 4) { + sourceTypeCase_ = 0; + sourceType_ = null; + } + exampleQueryBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * Output only. The example query used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.Builder + getExampleQueryBuilder() { + return internalGetExampleQueryFieldBuilder().getBuilder(); + } + + /** + * + * + *
        +     * Output only. The example query used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder + getExampleQueryOrBuilder() { + if ((sourceTypeCase_ == 4) && (exampleQueryBuilder_ != null)) { + return exampleQueryBuilder_.getMessageOrBuilder(); + } else { + if (sourceTypeCase_ == 4) { + return (com.google.cloud.geminidataanalytics.v1beta.ExampleQuery) sourceType_; + } + return com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.getDefaultInstance(); + } + } + + /** + * + * + *
        +     * Output only. The example query used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery, + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.Builder, + com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder> + internalGetExampleQueryFieldBuilder() { + if (exampleQueryBuilder_ == null) { + if (!(sourceTypeCase_ == 4)) { + sourceType_ = + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.getDefaultInstance(); + } + exampleQueryBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery, + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.Builder, + com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder>( + (com.google.cloud.geminidataanalytics.v1beta.ExampleQuery) sourceType_, + getParentForChildren(), + isClean()); + sourceType_ = null; + } + sourceTypeCase_ = 4; + onChanged(); + return exampleQueryBuilder_; + } + + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm, + com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.Builder, + com.google.cloud.geminidataanalytics.v1beta.GlossaryTermOrBuilder> + glossaryTermBuilder_; + + /** + * + * + *
        +     * Output only. The glossary term used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the glossaryTerm field is set. + */ + @java.lang.Override + public boolean hasGlossaryTerm() { + return sourceTypeCase_ == 5; + } + + /** + * + * + *
        +     * Output only. The glossary term used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The glossaryTerm. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm getGlossaryTerm() { + if (glossaryTermBuilder_ == null) { + if (sourceTypeCase_ == 5) { + return (com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm) sourceType_; + } + return com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.getDefaultInstance(); + } else { + if (sourceTypeCase_ == 5) { + return glossaryTermBuilder_.getMessage(); + } + return com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.getDefaultInstance(); + } + } + + /** + * + * + *
        +     * Output only. The glossary term used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setGlossaryTerm(com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm value) { + if (glossaryTermBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + sourceType_ = value; + onChanged(); + } else { + glossaryTermBuilder_.setMessage(value); + } + sourceTypeCase_ = 5; + return this; + } + + /** + * + * + *
        +     * Output only. The glossary term used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setGlossaryTerm( + com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.Builder builderForValue) { + if (glossaryTermBuilder_ == null) { + sourceType_ = builderForValue.build(); + onChanged(); + } else { + glossaryTermBuilder_.setMessage(builderForValue.build()); + } + sourceTypeCase_ = 5; + return this; + } + + /** + * + * + *
        +     * Output only. The glossary term used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeGlossaryTerm( + com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm value) { + if (glossaryTermBuilder_ == null) { + if (sourceTypeCase_ == 5 + && sourceType_ + != com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.getDefaultInstance()) { + sourceType_ = + com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.newBuilder( + (com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm) sourceType_) + .mergeFrom(value) + .buildPartial(); + } else { + sourceType_ = value; + } + onChanged(); + } else { + if (sourceTypeCase_ == 5) { + glossaryTermBuilder_.mergeFrom(value); + } else { + glossaryTermBuilder_.setMessage(value); + } + } + sourceTypeCase_ = 5; + return this; + } + + /** + * + * + *
        +     * Output only. The glossary term used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearGlossaryTerm() { + if (glossaryTermBuilder_ == null) { + if (sourceTypeCase_ == 5) { + sourceTypeCase_ = 0; + sourceType_ = null; + onChanged(); + } + } else { + if (sourceTypeCase_ == 5) { + sourceTypeCase_ = 0; + sourceType_ = null; + } + glossaryTermBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * Output only. The glossary term used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.Builder + getGlossaryTermBuilder() { + return internalGetGlossaryTermFieldBuilder().getBuilder(); + } + + /** + * + * + *
        +     * Output only. The glossary term used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.GlossaryTermOrBuilder + getGlossaryTermOrBuilder() { + if ((sourceTypeCase_ == 5) && (glossaryTermBuilder_ != null)) { + return glossaryTermBuilder_.getMessageOrBuilder(); + } else { + if (sourceTypeCase_ == 5) { + return (com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm) sourceType_; + } + return com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.getDefaultInstance(); + } + } + + /** + * + * + *
        +     * Output only. The glossary term used as the source.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm, + com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.Builder, + com.google.cloud.geminidataanalytics.v1beta.GlossaryTermOrBuilder> + internalGetGlossaryTermFieldBuilder() { + if (glossaryTermBuilder_ == null) { + if (!(sourceTypeCase_ == 5)) { + sourceType_ = + com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.getDefaultInstance(); + } + glossaryTermBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm, + com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.Builder, + com.google.cloud.geminidataanalytics.v1beta.GlossaryTermOrBuilder>( + (com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm) sourceType_, + getParentForChildren(), + isClean()); + sourceType_ = null; + } + sourceTypeCase_ = 5; + onChanged(); + return glossaryTermBuilder_; + } + + private java.lang.Object id_ = ""; + + /** + * + * + *
        +     * Output only. Unique identifier of the source. This ID is service-generated
        +     * and is unique within the scope of a single `Citation` message.
        +     * 
        + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The id. + */ + public java.lang.String getId() { + java.lang.Object ref = id_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + id_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * Output only. Unique identifier of the source. This ID is service-generated
        +     * and is unique within the scope of a single `Citation` message.
        +     * 
        + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for id. + */ + public com.google.protobuf.ByteString getIdBytes() { + java.lang.Object ref = id_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + id_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * Output only. Unique identifier of the source. This ID is service-generated
        +     * and is unique within the scope of a single `Citation` message.
        +     * 
        + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The id to set. + * @return This builder for chaining. + */ + public Builder setId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + id_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Output only. Unique identifier of the source. This ID is service-generated
        +     * and is unique within the scope of a single `Citation` message.
        +     * 
        + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearId() { + id_ = getDefaultInstance().getId(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Output only. Unique identifier of the source. This ID is service-generated
        +     * and is unique within the scope of a single `Citation` message.
        +     * 
        + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for id to set. + * @return This builder for chaining. + */ + public Builder setIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + id_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + private java.lang.Object title_ = ""; + + /** + * + * + *
        +     * Output only. The title of the source.
        +     * 
        + * + * string title = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The title. + */ + public java.lang.String getTitle() { + java.lang.Object ref = title_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + title_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * Output only. The title of the source.
        +     * 
        + * + * string title = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for title. + */ + public com.google.protobuf.ByteString getTitleBytes() { + java.lang.Object ref = title_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + title_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * Output only. The title of the source.
        +     * 
        + * + * string title = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The title to set. + * @return This builder for chaining. + */ + public Builder setTitle(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + title_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Output only. The title of the source.
        +     * 
        + * + * string title = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearTitle() { + title_ = getDefaultInstance().getTitle(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Output only. The title of the source.
        +     * 
        + * + * string title = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for title to set. + * @return This builder for chaining. + */ + public Builder setTitleBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + title_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.CitationSource) + } + + // @@protoc_insertion_point(class_scope:google.cloud.geminidataanalytics.v1beta.CitationSource) + private static final com.google.cloud.geminidataanalytics.v1beta.CitationSource DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.geminidataanalytics.v1beta.CitationSource(); + } + + public static com.google.cloud.geminidataanalytics.v1beta.CitationSource getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CitationSource parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationSource getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationSourceOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationSourceOrBuilder.java new file mode 100644 index 000000000000..4280bc42ddd6 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CitationSourceOrBuilder.java @@ -0,0 +1,209 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +@com.google.protobuf.Generated +public interface CitationSourceOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.CitationSource) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
        +   * Output only. The uri used as the source, such as a web grounding URL.
        +   * 
        + * + * string uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the uri field is set. + */ + boolean hasUri(); + + /** + * + * + *
        +   * Output only. The uri used as the source, such as a web grounding URL.
        +   * 
        + * + * string uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The uri. + */ + java.lang.String getUri(); + + /** + * + * + *
        +   * Output only. The uri used as the source, such as a web grounding URL.
        +   * 
        + * + * string uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for uri. + */ + com.google.protobuf.ByteString getUriBytes(); + + /** + * + * + *
        +   * Output only. The example query used as the source.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the exampleQuery field is set. + */ + boolean hasExampleQuery(); + + /** + * + * + *
        +   * Output only. The example query used as the source.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The exampleQuery. + */ + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery getExampleQuery(); + + /** + * + * + *
        +   * Output only. The example query used as the source.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder getExampleQueryOrBuilder(); + + /** + * + * + *
        +   * Output only. The glossary term used as the source.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the glossaryTerm field is set. + */ + boolean hasGlossaryTerm(); + + /** + * + * + *
        +   * Output only. The glossary term used as the source.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The glossaryTerm. + */ + com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm getGlossaryTerm(); + + /** + * + * + *
        +   * Output only. The glossary term used as the source.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.GlossaryTerm glossary_term = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.GlossaryTermOrBuilder getGlossaryTermOrBuilder(); + + /** + * + * + *
        +   * Output only. Unique identifier of the source. This ID is service-generated
        +   * and is unique within the scope of a single `Citation` message.
        +   * 
        + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The id. + */ + java.lang.String getId(); + + /** + * + * + *
        +   * Output only. Unique identifier of the source. This ID is service-generated
        +   * and is unique within the scope of a single `Citation` message.
        +   * 
        + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for id. + */ + com.google.protobuf.ByteString getIdBytes(); + + /** + * + * + *
        +   * Output only. The title of the source.
        +   * 
        + * + * string title = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The title. + */ + java.lang.String getTitle(); + + /** + * + * + *
        +   * Output only. The title of the source.
        +   * 
        + * + * string title = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for title. + */ + com.google.protobuf.ByteString getTitleBytes(); + + com.google.cloud.geminidataanalytics.v1beta.CitationSource.SourceTypeCase getSourceTypeCase(); +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationMessage.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationMessage.java index 854442dd2fb7..891bcb1c5185 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationMessage.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationMessage.java @@ -24,6 +24,7 @@ * * *
        + * Deprecated: Use TextMessage with TextType.FINAL_RESPONSE instead.
          * A message of questions to help clarify the user's query. This is returned
          * when the system cannot confidently answer the user's question.
          * 
        @@ -31,6 +32,7 @@ * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.ClarificationMessage} */ @com.google.protobuf.Generated +@java.lang.Deprecated public final class ClarificationMessage extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.ClarificationMessage) @@ -81,14 +83,16 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
        -   * Required. A batch of clarification questions to ask the user.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A batch of clarification questions to ask the user.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ @java.lang.Override + @java.lang.Deprecated public java.util.List getQuestionsList() { return questions_; @@ -98,14 +102,16 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
        -   * Required. A batch of clarification questions to ask the user.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A batch of clarification questions to ask the user.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ @java.lang.Override + @java.lang.Deprecated public java.util.List< ? extends com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestionOrBuilder> getQuestionsOrBuilderList() { @@ -116,14 +122,16 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
        -   * Required. A batch of clarification questions to ask the user.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A batch of clarification questions to ask the user.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ @java.lang.Override + @java.lang.Deprecated public int getQuestionsCount() { return questions_.size(); } @@ -132,14 +140,16 @@ public int getQuestionsCount() { * * *
        -   * Required. A batch of clarification questions to ask the user.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A batch of clarification questions to ask the user.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ @java.lang.Override + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion getQuestions(int index) { return questions_.get(index); } @@ -148,14 +158,16 @@ public com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion getQues * * *
        -   * Required. A batch of clarification questions to ask the user.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A batch of clarification questions to ask the user.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ @java.lang.Override + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestionOrBuilder getQuestionsOrBuilder(int index) { return questions_.get(index); @@ -328,6 +340,7 @@ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.Builder * * *
        +   * Deprecated: Use TextMessage with TextType.FINAL_RESPONSE instead.
            * A message of questions to help clarify the user's query. This is returned
            * when the system cannot confidently answer the user's question.
            * 
        @@ -548,13 +561,15 @@ private void ensureQuestionsIsMutable() { * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public java.util.List getQuestionsList() { if (questionsBuilder_ == null) { @@ -568,13 +583,15 @@ private void ensureQuestionsIsMutable() { * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public int getQuestionsCount() { if (questionsBuilder_ == null) { return questions_.size(); @@ -587,13 +604,15 @@ public int getQuestionsCount() { * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion getQuestions( int index) { if (questionsBuilder_ == null) { @@ -607,13 +626,15 @@ public com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion getQues * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public Builder setQuestions( int index, com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion value) { if (questionsBuilder_ == null) { @@ -633,13 +654,15 @@ public Builder setQuestions( * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public Builder setQuestions( int index, com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.Builder builderForValue) { @@ -657,13 +680,15 @@ public Builder setQuestions( * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public Builder addQuestions( com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion value) { if (questionsBuilder_ == null) { @@ -683,13 +708,15 @@ public Builder addQuestions( * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public Builder addQuestions( int index, com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion value) { if (questionsBuilder_ == null) { @@ -709,13 +736,15 @@ public Builder addQuestions( * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public Builder addQuestions( com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.Builder builderForValue) { if (questionsBuilder_ == null) { @@ -732,13 +761,15 @@ public Builder addQuestions( * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public Builder addQuestions( int index, com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.Builder builderForValue) { @@ -756,13 +787,15 @@ public Builder addQuestions( * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public Builder addAllQuestions( java.lang.Iterable< ? extends com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion> @@ -781,13 +814,15 @@ public Builder addAllQuestions( * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public Builder clearQuestions() { if (questionsBuilder_ == null) { questions_ = java.util.Collections.emptyList(); @@ -803,13 +838,15 @@ public Builder clearQuestions() { * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public Builder removeQuestions(int index) { if (questionsBuilder_ == null) { ensureQuestionsIsMutable(); @@ -825,13 +862,15 @@ public Builder removeQuestions(int index) { * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.Builder getQuestionsBuilder(int index) { return internalGetQuestionsFieldBuilder().getBuilder(index); @@ -841,13 +880,15 @@ public Builder removeQuestions(int index) { * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestionOrBuilder getQuestionsOrBuilder(int index) { if (questionsBuilder_ == null) { @@ -861,13 +902,15 @@ public Builder removeQuestions(int index) { * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public java.util.List< ? extends com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestionOrBuilder> getQuestionsOrBuilderList() { @@ -882,13 +925,15 @@ public Builder removeQuestions(int index) { * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.Builder addQuestionsBuilder() { return internalGetQuestionsFieldBuilder() @@ -901,13 +946,15 @@ public Builder removeQuestions(int index) { * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.Builder addQuestionsBuilder(int index) { return internalGetQuestionsFieldBuilder() @@ -921,13 +968,15 @@ public Builder removeQuestions(int index) { * * *
        -     * Required. A batch of clarification questions to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A batch of clarification questions to ask the user.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated public java.util.List getQuestionsBuilderList() { return internalGetQuestionsFieldBuilder().getBuilderList(); diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationMessageOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationMessageOrBuilder.java index 758ca5568c9a..1571013a4ee2 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationMessageOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationMessageOrBuilder.java @@ -21,6 +21,7 @@ package com.google.cloud.geminidataanalytics.v1beta; @com.google.protobuf.Generated +@java.lang.Deprecated public interface ClarificationMessageOrBuilder extends // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.ClarificationMessage) @@ -30,13 +31,15 @@ public interface ClarificationMessageOrBuilder * * *
        -   * Required. A batch of clarification questions to ask the user.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A batch of clarification questions to ask the user.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated java.util.List getQuestionsList(); @@ -44,39 +47,45 @@ public interface ClarificationMessageOrBuilder * * *
        -   * Required. A batch of clarification questions to ask the user.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A batch of clarification questions to ask the user.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion getQuestions(int index); /** * * *
        -   * Required. A batch of clarification questions to ask the user.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A batch of clarification questions to ask the user.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated int getQuestionsCount(); /** * * *
        -   * Required. A batch of clarification questions to ask the user.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A batch of clarification questions to ask the user.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated java.util.List< ? extends com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestionOrBuilder> getQuestionsOrBuilderList(); @@ -85,13 +94,15 @@ public interface ClarificationMessageOrBuilder * * *
        -   * Required. A batch of clarification questions to ask the user.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A batch of clarification questions to ask the user.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [(.google.api.field_behavior) = REQUIRED]; + * repeated .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion questions = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * */ + @java.lang.Deprecated com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestionOrBuilder getQuestionsOrBuilder( int index); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationQuestion.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationQuestion.java index b30171fb97e5..a681caa03b01 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationQuestion.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationQuestion.java @@ -24,12 +24,14 @@ * * *
        + * Deprecated: Use TextMessage with TextType.FINAL_RESPONSE instead.
          * Represents a single question to the user to help clarify their query.
          * 
        * * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.ClarificationQuestion} */ @com.google.protobuf.Generated +@java.lang.Deprecated public final class ClarificationQuestion extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.ClarificationQuestion) @@ -77,42 +79,50 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
        +   * Deprecated: The parent message is deprecated.
            * The selection mode for the clarification question.
            * 
        * * Protobuf enum {@code * google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode} */ + @java.lang.Deprecated public enum SelectionMode implements com.google.protobuf.ProtocolMessageEnum { /** * * *
        +     * Deprecated: The parent message is deprecated.
              * Unspecified selection mode.
              * 
        * - * SELECTION_MODE_UNSPECIFIED = 0; + * SELECTION_MODE_UNSPECIFIED = 0 [deprecated = true]; */ + @java.lang.Deprecated SELECTION_MODE_UNSPECIFIED(0), /** * * *
        +     * Deprecated: The parent message is deprecated.
              * The user can select only one option.
              * 
        * - * SINGLE_SELECT = 1; + * SINGLE_SELECT = 1 [deprecated = true]; */ + @java.lang.Deprecated SINGLE_SELECT(1), /** * * *
        +     * Deprecated: The parent message is deprecated.
              * The user can select multiple options.
              * 
        * - * MULTI_SELECT = 2; + * MULTI_SELECT = 2 [deprecated = true]; */ + @java.lang.Deprecated MULTI_SELECT(2), UNRECOGNIZED(-1), ; @@ -131,34 +141,37 @@ public enum SelectionMode implements com.google.protobuf.ProtocolMessageEnum { * * *
        +     * Deprecated: The parent message is deprecated.
              * Unspecified selection mode.
              * 
        * - * SELECTION_MODE_UNSPECIFIED = 0; + * SELECTION_MODE_UNSPECIFIED = 0 [deprecated = true]; */ - public static final int SELECTION_MODE_UNSPECIFIED_VALUE = 0; + @java.lang.Deprecated public static final int SELECTION_MODE_UNSPECIFIED_VALUE = 0; /** * * *
        +     * Deprecated: The parent message is deprecated.
              * The user can select only one option.
              * 
        * - * SINGLE_SELECT = 1; + * SINGLE_SELECT = 1 [deprecated = true]; */ - public static final int SINGLE_SELECT_VALUE = 1; + @java.lang.Deprecated public static final int SINGLE_SELECT_VALUE = 1; /** * * *
        +     * Deprecated: The parent message is deprecated.
              * The user can select multiple options.
              * 
        * - * MULTI_SELECT = 2; + * MULTI_SELECT = 2 [deprecated = true]; */ - public static final int MULTI_SELECT_VALUE = 2; + @java.lang.Deprecated public static final int MULTI_SELECT_VALUE = 2; public final int getNumber() { if (this == UNRECOGNIZED) { @@ -249,6 +262,7 @@ private SelectionMode(int value) { * * *
        +   * Deprecated: The parent message is deprecated.
            * The type of clarification question.
            * This enum may be extended with new values in the future.
            * 
        @@ -256,38 +270,45 @@ private SelectionMode(int value) { * Protobuf enum {@code * google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType} */ + @java.lang.Deprecated public enum ClarificationQuestionType implements com.google.protobuf.ProtocolMessageEnum { /** * * *
        +     * Deprecated: The parent message is deprecated.
              * Unspecified clarification question type.
              * 
        * - * CLARIFICATION_QUESTION_TYPE_UNSPECIFIED = 0; + * CLARIFICATION_QUESTION_TYPE_UNSPECIFIED = 0 [deprecated = true]; */ + @java.lang.Deprecated CLARIFICATION_QUESTION_TYPE_UNSPECIFIED(0), /** * * *
        +     * Deprecated: The parent message is deprecated.
              * The clarification question is for filter values.
              * 
        * - * FILTER_VALUES = 1; + * FILTER_VALUES = 1 [deprecated = true]; */ + @java.lang.Deprecated FILTER_VALUES(1), /** * * *
        +     * Deprecated: The parent message is deprecated.
              * The clarification question is for data fields. This is a generic term
              * encompassing SQL columns, Looker fields (dimensions/measures), or
              * nested data structure properties.
              * 
        * - * FIELDS = 2; + * FIELDS = 2 [deprecated = true]; */ + @java.lang.Deprecated FIELDS(2), UNRECOGNIZED(-1), ; @@ -306,36 +327,39 @@ public enum ClarificationQuestionType implements com.google.protobuf.ProtocolMes * * *
        +     * Deprecated: The parent message is deprecated.
              * Unspecified clarification question type.
              * 
        * - * CLARIFICATION_QUESTION_TYPE_UNSPECIFIED = 0; + * CLARIFICATION_QUESTION_TYPE_UNSPECIFIED = 0 [deprecated = true]; */ - public static final int CLARIFICATION_QUESTION_TYPE_UNSPECIFIED_VALUE = 0; + @java.lang.Deprecated public static final int CLARIFICATION_QUESTION_TYPE_UNSPECIFIED_VALUE = 0; /** * * *
        +     * Deprecated: The parent message is deprecated.
              * The clarification question is for filter values.
              * 
        * - * FILTER_VALUES = 1; + * FILTER_VALUES = 1 [deprecated = true]; */ - public static final int FILTER_VALUES_VALUE = 1; + @java.lang.Deprecated public static final int FILTER_VALUES_VALUE = 1; /** * * *
        +     * Deprecated: The parent message is deprecated.
              * The clarification question is for data fields. This is a generic term
              * encompassing SQL columns, Looker fields (dimensions/measures), or
              * nested data structure properties.
              * 
        * - * FIELDS = 2; + * FIELDS = 2 [deprecated = true]; */ - public static final int FIELDS_VALUE = 2; + @java.lang.Deprecated public static final int FIELDS_VALUE = 2; public final int getNumber() { if (this == UNRECOGNIZED) { @@ -434,14 +458,18 @@ private ClarificationQuestionType(int value) { * * *
        -   * Required. The natural language question to ask the user.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * The natural language question to ask the user.
            * 
        * - * string question = 1 [(.google.api.field_behavior) = REQUIRED]; + * string question = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.question is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=892 * @return The question. */ @java.lang.Override + @java.lang.Deprecated public java.lang.String getQuestion() { java.lang.Object ref = question_; if (ref instanceof java.lang.String) { @@ -458,14 +486,18 @@ public java.lang.String getQuestion() { * * *
        -   * Required. The natural language question to ask the user.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * The natural language question to ask the user.
            * 
        * - * string question = 1 [(.google.api.field_behavior) = REQUIRED]; + * string question = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.question is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=892 * @return The bytes for question. */ @java.lang.Override + @java.lang.Deprecated public com.google.protobuf.ByteString getQuestionBytes() { java.lang.Object ref = question_; if (ref instanceof java.lang.String) { @@ -485,16 +517,20 @@ public com.google.protobuf.ByteString getQuestionBytes() { * * *
        -   * Required. The selection mode for this question.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * The selection mode for this question.
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [(.google.api.field_behavior) = REQUIRED]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.selection_mode is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=897 * @return The enum numeric value on the wire for selectionMode. */ @java.lang.Override + @java.lang.Deprecated public int getSelectionModeValue() { return selectionMode_; } @@ -503,16 +539,20 @@ public int getSelectionModeValue() { * * *
        -   * Required. The selection mode for this question.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * The selection mode for this question.
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [(.google.api.field_behavior) = REQUIRED]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.selection_mode is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=897 * @return The selectionMode. */ @java.lang.Override + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode getSelectionMode() { com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode result = @@ -534,14 +574,19 @@ public int getSelectionModeValue() { * * *
        -   * Required. A list of distinct options for the user to choose from.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A list of distinct options for the user to choose from.
            * The number of options is limited to a maximum of 5.
            * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @return A list containing the options. */ + @java.lang.Deprecated public com.google.protobuf.ProtocolStringList getOptionsList() { return options_; } @@ -550,14 +595,19 @@ public com.google.protobuf.ProtocolStringList getOptionsList() { * * *
        -   * Required. A list of distinct options for the user to choose from.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A list of distinct options for the user to choose from.
            * The number of options is limited to a maximum of 5.
            * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @return The count of options. */ + @java.lang.Deprecated public int getOptionsCount() { return options_.size(); } @@ -566,15 +616,20 @@ public int getOptionsCount() { * * *
        -   * Required. A list of distinct options for the user to choose from.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A list of distinct options for the user to choose from.
            * The number of options is limited to a maximum of 5.
            * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @param index The index of the element to return. * @return The options at the given index. */ + @java.lang.Deprecated public java.lang.String getOptions(int index) { return options_.get(index); } @@ -583,15 +638,20 @@ public java.lang.String getOptions(int index) { * * *
        -   * Required. A list of distinct options for the user to choose from.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A list of distinct options for the user to choose from.
            * The number of options is limited to a maximum of 5.
            * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @param index The index of the value to return. * @return The bytes of the options at the given index. */ + @java.lang.Deprecated public com.google.protobuf.ByteString getOptionsBytes(int index) { return options_.getByteString(index); } @@ -603,16 +663,21 @@ public com.google.protobuf.ByteString getOptionsBytes(int index) { * * *
        -   * Optional. The type of clarification question.
        +   * Optional. Deprecated: The parent message is deprecated.
        +   * The type of clarification question.
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated + * google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.clarification_question_type + * is deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=908 * @return The enum numeric value on the wire for clarificationQuestionType. */ @java.lang.Override + @java.lang.Deprecated public int getClarificationQuestionTypeValue() { return clarificationQuestionType_; } @@ -621,16 +686,21 @@ public int getClarificationQuestionTypeValue() { * * *
        -   * Optional. The type of clarification question.
        +   * Optional. Deprecated: The parent message is deprecated.
        +   * The type of clarification question.
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated + * google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.clarification_question_type + * is deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=908 * @return The clarificationQuestionType. */ @java.lang.Override + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType getClarificationQuestionType() { com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType @@ -855,6 +925,7 @@ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.Builder * * *
        +   * Deprecated: Use TextMessage with TextType.FINAL_RESPONSE instead.
            * Represents a single question to the user to help clarify their query.
            * 
        * @@ -1060,13 +1131,18 @@ public Builder mergeFrom( * * *
        -     * Required. The natural language question to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * The natural language question to ask the user.
              * 
        * - * string question = 1 [(.google.api.field_behavior) = REQUIRED]; + * string question = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.question is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=892 * @return The question. */ + @java.lang.Deprecated public java.lang.String getQuestion() { java.lang.Object ref = question_; if (!(ref instanceof java.lang.String)) { @@ -1083,13 +1159,18 @@ public java.lang.String getQuestion() { * * *
        -     * Required. The natural language question to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * The natural language question to ask the user.
              * 
        * - * string question = 1 [(.google.api.field_behavior) = REQUIRED]; + * string question = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.question is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=892 * @return The bytes for question. */ + @java.lang.Deprecated public com.google.protobuf.ByteString getQuestionBytes() { java.lang.Object ref = question_; if (ref instanceof String) { @@ -1106,14 +1187,19 @@ public com.google.protobuf.ByteString getQuestionBytes() { * * *
        -     * Required. The natural language question to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * The natural language question to ask the user.
              * 
        * - * string question = 1 [(.google.api.field_behavior) = REQUIRED]; + * string question = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.question is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=892 * @param value The question to set. * @return This builder for chaining. */ + @java.lang.Deprecated public Builder setQuestion(java.lang.String value) { if (value == null) { throw new NullPointerException(); @@ -1128,13 +1214,18 @@ public Builder setQuestion(java.lang.String value) { * * *
        -     * Required. The natural language question to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * The natural language question to ask the user.
              * 
        * - * string question = 1 [(.google.api.field_behavior) = REQUIRED]; + * string question = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.question is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=892 * @return This builder for chaining. */ + @java.lang.Deprecated public Builder clearQuestion() { question_ = getDefaultInstance().getQuestion(); bitField0_ = (bitField0_ & ~0x00000001); @@ -1146,14 +1237,19 @@ public Builder clearQuestion() { * * *
        -     * Required. The natural language question to ask the user.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * The natural language question to ask the user.
              * 
        * - * string question = 1 [(.google.api.field_behavior) = REQUIRED]; + * string question = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.question is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=892 * @param value The bytes for question to set. * @return This builder for chaining. */ + @java.lang.Deprecated public Builder setQuestionBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); @@ -1171,16 +1267,20 @@ public Builder setQuestionBytes(com.google.protobuf.ByteString value) { * * *
        -     * Required. The selection mode for this question.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * The selection mode for this question.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [(.google.api.field_behavior) = REQUIRED]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.selection_mode is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=897 * @return The enum numeric value on the wire for selectionMode. */ @java.lang.Override + @java.lang.Deprecated public int getSelectionModeValue() { return selectionMode_; } @@ -1189,16 +1289,20 @@ public int getSelectionModeValue() { * * *
        -     * Required. The selection mode for this question.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * The selection mode for this question.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [(.google.api.field_behavior) = REQUIRED]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.selection_mode is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=897 * @param value The enum numeric value on the wire for selectionMode to set. * @return This builder for chaining. */ + @java.lang.Deprecated public Builder setSelectionModeValue(int value) { selectionMode_ = value; bitField0_ |= 0x00000002; @@ -1210,16 +1314,20 @@ public Builder setSelectionModeValue(int value) { * * *
        -     * Required. The selection mode for this question.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * The selection mode for this question.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [(.google.api.field_behavior) = REQUIRED]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.selection_mode is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=897 * @return The selectionMode. */ @java.lang.Override + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode getSelectionMode() { com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode result = @@ -1235,16 +1343,20 @@ public Builder setSelectionModeValue(int value) { * * *
        -     * Required. The selection mode for this question.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * The selection mode for this question.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [(.google.api.field_behavior) = REQUIRED]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.selection_mode is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=897 * @param value The selectionMode to set. * @return This builder for chaining. */ + @java.lang.Deprecated public Builder setSelectionMode( com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode value) { if (value == null) { @@ -1260,15 +1372,19 @@ public Builder setSelectionMode( * * *
        -     * Required. The selection mode for this question.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * The selection mode for this question.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [(.google.api.field_behavior) = REQUIRED]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.selection_mode is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=897 * @return This builder for chaining. */ + @java.lang.Deprecated public Builder clearSelectionMode() { bitField0_ = (bitField0_ & ~0x00000002); selectionMode_ = 0; @@ -1290,14 +1406,20 @@ private void ensureOptionsIsMutable() { * * *
        -     * Required. A list of distinct options for the user to choose from.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A list of distinct options for the user to choose from.
              * The number of options is limited to a maximum of 5.
              * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @return A list containing the options. */ + @java.lang.Deprecated public com.google.protobuf.ProtocolStringList getOptionsList() { options_.makeImmutable(); return options_; @@ -1307,14 +1429,20 @@ public com.google.protobuf.ProtocolStringList getOptionsList() { * * *
        -     * Required. A list of distinct options for the user to choose from.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A list of distinct options for the user to choose from.
              * The number of options is limited to a maximum of 5.
              * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @return The count of options. */ + @java.lang.Deprecated public int getOptionsCount() { return options_.size(); } @@ -1323,15 +1451,21 @@ public int getOptionsCount() { * * *
        -     * Required. A list of distinct options for the user to choose from.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A list of distinct options for the user to choose from.
              * The number of options is limited to a maximum of 5.
              * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @param index The index of the element to return. * @return The options at the given index. */ + @java.lang.Deprecated public java.lang.String getOptions(int index) { return options_.get(index); } @@ -1340,15 +1474,21 @@ public java.lang.String getOptions(int index) { * * *
        -     * Required. A list of distinct options for the user to choose from.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A list of distinct options for the user to choose from.
              * The number of options is limited to a maximum of 5.
              * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @param index The index of the value to return. * @return The bytes of the options at the given index. */ + @java.lang.Deprecated public com.google.protobuf.ByteString getOptionsBytes(int index) { return options_.getByteString(index); } @@ -1357,16 +1497,22 @@ public com.google.protobuf.ByteString getOptionsBytes(int index) { * * *
        -     * Required. A list of distinct options for the user to choose from.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A list of distinct options for the user to choose from.
              * The number of options is limited to a maximum of 5.
              * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @param index The index to set the value at. * @param value The options to set. * @return This builder for chaining. */ + @java.lang.Deprecated public Builder setOptions(int index, java.lang.String value) { if (value == null) { throw new NullPointerException(); @@ -1382,15 +1528,21 @@ public Builder setOptions(int index, java.lang.String value) { * * *
        -     * Required. A list of distinct options for the user to choose from.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A list of distinct options for the user to choose from.
              * The number of options is limited to a maximum of 5.
              * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @param value The options to add. * @return This builder for chaining. */ + @java.lang.Deprecated public Builder addOptions(java.lang.String value) { if (value == null) { throw new NullPointerException(); @@ -1406,15 +1558,21 @@ public Builder addOptions(java.lang.String value) { * * *
        -     * Required. A list of distinct options for the user to choose from.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A list of distinct options for the user to choose from.
              * The number of options is limited to a maximum of 5.
              * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @param values The options to add. * @return This builder for chaining. */ + @java.lang.Deprecated public Builder addAllOptions(java.lang.Iterable values) { ensureOptionsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll(values, options_); @@ -1427,14 +1585,20 @@ public Builder addAllOptions(java.lang.Iterable values) { * * *
        -     * Required. A list of distinct options for the user to choose from.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A list of distinct options for the user to choose from.
              * The number of options is limited to a maximum of 5.
              * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @return This builder for chaining. */ + @java.lang.Deprecated public Builder clearOptions() { options_ = com.google.protobuf.LazyStringArrayList.emptyList(); bitField0_ = (bitField0_ & ~0x00000004); @@ -1447,15 +1611,21 @@ public Builder clearOptions() { * * *
        -     * Required. A list of distinct options for the user to choose from.
        +     * Required. Deprecated: The parent message is deprecated.
        +     * A list of distinct options for the user to choose from.
              * The number of options is limited to a maximum of 5.
              * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @param value The bytes of the options to add. * @return This builder for chaining. */ + @java.lang.Deprecated public Builder addOptionsBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); @@ -1474,16 +1644,21 @@ public Builder addOptionsBytes(com.google.protobuf.ByteString value) { * * *
        -     * Optional. The type of clarification question.
        +     * Optional. Deprecated: The parent message is deprecated.
        +     * The type of clarification question.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated + * google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.clarification_question_type + * is deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=908 * @return The enum numeric value on the wire for clarificationQuestionType. */ @java.lang.Override + @java.lang.Deprecated public int getClarificationQuestionTypeValue() { return clarificationQuestionType_; } @@ -1492,16 +1667,21 @@ public int getClarificationQuestionTypeValue() { * * *
        -     * Optional. The type of clarification question.
        +     * Optional. Deprecated: The parent message is deprecated.
        +     * The type of clarification question.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated + * google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.clarification_question_type + * is deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=908 * @param value The enum numeric value on the wire for clarificationQuestionType to set. * @return This builder for chaining. */ + @java.lang.Deprecated public Builder setClarificationQuestionTypeValue(int value) { clarificationQuestionType_ = value; bitField0_ |= 0x00000008; @@ -1513,16 +1693,21 @@ public Builder setClarificationQuestionTypeValue(int value) { * * *
        -     * Optional. The type of clarification question.
        +     * Optional. Deprecated: The parent message is deprecated.
        +     * The type of clarification question.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated + * google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.clarification_question_type + * is deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=908 * @return The clarificationQuestionType. */ @java.lang.Override + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion .ClarificationQuestionType getClarificationQuestionType() { @@ -1540,16 +1725,21 @@ public Builder setClarificationQuestionTypeValue(int value) { * * *
        -     * Optional. The type of clarification question.
        +     * Optional. Deprecated: The parent message is deprecated.
        +     * The type of clarification question.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated + * google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.clarification_question_type + * is deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=908 * @param value The clarificationQuestionType to set. * @return This builder for chaining. */ + @java.lang.Deprecated public Builder setClarificationQuestionType( com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType value) { @@ -1566,15 +1756,20 @@ public Builder setClarificationQuestionType( * * *
        -     * Optional. The type of clarification question.
        +     * Optional. Deprecated: The parent message is deprecated.
        +     * The type of clarification question.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated + * google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.clarification_question_type + * is deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=908 * @return This builder for chaining. */ + @java.lang.Deprecated public Builder clearClarificationQuestionType() { bitField0_ = (bitField0_ & ~0x00000008); clarificationQuestionType_ = 0; diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationQuestionOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationQuestionOrBuilder.java index 4c0b62efd131..041b11b4cea2 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationQuestionOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ClarificationQuestionOrBuilder.java @@ -21,6 +21,7 @@ package com.google.cloud.geminidataanalytics.v1beta; @com.google.protobuf.Generated +@java.lang.Deprecated public interface ClarificationQuestionOrBuilder extends // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.ClarificationQuestion) @@ -30,56 +31,72 @@ public interface ClarificationQuestionOrBuilder * * *
        -   * Required. The natural language question to ask the user.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * The natural language question to ask the user.
            * 
        * - * string question = 1 [(.google.api.field_behavior) = REQUIRED]; + * string question = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.question is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=892 * @return The question. */ + @java.lang.Deprecated java.lang.String getQuestion(); /** * * *
        -   * Required. The natural language question to ask the user.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * The natural language question to ask the user.
            * 
        * - * string question = 1 [(.google.api.field_behavior) = REQUIRED]; + * string question = 1 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.question is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=892 * @return The bytes for question. */ + @java.lang.Deprecated com.google.protobuf.ByteString getQuestionBytes(); /** * * *
        -   * Required. The selection mode for this question.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * The selection mode for this question.
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [(.google.api.field_behavior) = REQUIRED]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.selection_mode is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=897 * @return The enum numeric value on the wire for selectionMode. */ + @java.lang.Deprecated int getSelectionModeValue(); /** * * *
        -   * Required. The selection mode for this question.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * The selection mode for this question.
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [(.google.api.field_behavior) = REQUIRED]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode selection_mode = 2 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.selection_mode is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=897 * @return The selectionMode. */ + @java.lang.Deprecated com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.SelectionMode getSelectionMode(); @@ -87,88 +104,118 @@ public interface ClarificationQuestionOrBuilder * * *
        -   * Required. A list of distinct options for the user to choose from.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A list of distinct options for the user to choose from.
            * The number of options is limited to a maximum of 5.
            * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @return A list containing the options. */ + @java.lang.Deprecated java.util.List getOptionsList(); /** * * *
        -   * Required. A list of distinct options for the user to choose from.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A list of distinct options for the user to choose from.
            * The number of options is limited to a maximum of 5.
            * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @return The count of options. */ + @java.lang.Deprecated int getOptionsCount(); /** * * *
        -   * Required. A list of distinct options for the user to choose from.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A list of distinct options for the user to choose from.
            * The number of options is limited to a maximum of 5.
            * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @param index The index of the element to return. * @return The options at the given index. */ + @java.lang.Deprecated java.lang.String getOptions(int index); /** * * *
        -   * Required. A list of distinct options for the user to choose from.
        +   * Required. Deprecated: The parent message is deprecated.
        +   * A list of distinct options for the user to choose from.
            * The number of options is limited to a maximum of 5.
            * 
        * - * repeated string options = 3 [(.google.api.field_behavior) = REQUIRED]; + * repeated string options = 3 [deprecated = true, (.google.api.field_behavior) = REQUIRED]; + * * + * @deprecated google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.options is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=903 * @param index The index of the value to return. * @return The bytes of the options at the given index. */ + @java.lang.Deprecated com.google.protobuf.ByteString getOptionsBytes(int index); /** * * *
        -   * Optional. The type of clarification question.
        +   * Optional. Deprecated: The parent message is deprecated.
        +   * The type of clarification question.
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated + * google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.clarification_question_type + * is deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=908 * @return The enum numeric value on the wire for clarificationQuestionType. */ + @java.lang.Deprecated int getClarificationQuestionTypeValue(); /** * * *
        -   * Optional. The type of clarification question.
        +   * Optional. Deprecated: The parent message is deprecated.
        +   * The type of clarification question.
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType clarification_question_type = 4 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated + * google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.clarification_question_type + * is deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=908 * @return The clarificationQuestionType. */ + @java.lang.Deprecated com.google.cloud.geminidataanalytics.v1beta.ClarificationQuestion.ClarificationQuestionType getClarificationQuestionType(); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CloudSqlDatabaseReference.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CloudSqlDatabaseReference.java index 720c53821242..3c7dbdcdd364 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CloudSqlDatabaseReference.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CloudSqlDatabaseReference.java @@ -58,6 +58,7 @@ private CloudSqlDatabaseReference() { instanceId_ = ""; databaseId_ = ""; tableIds_ = com.google.protobuf.LazyStringArrayList.emptyList(); + databaseTableReferences_ = java.util.Collections.emptyList(); } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -570,6 +571,107 @@ public com.google.protobuf.ByteString getTableIdsBytes(int index) { return tableIds_.getByteString(index); } + public static final int DATABASE_TABLE_REFERENCES_FIELD_NUMBER = 8; + + @SuppressWarnings("serial") + private java.util.List + databaseTableReferences_; + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getDatabaseTableReferencesList() { + return databaseTableReferences_; + } + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + getDatabaseTableReferencesOrBuilderList() { + return databaseTableReferences_; + } + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getDatabaseTableReferencesCount() { + return databaseTableReferences_.size(); + } + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + getDatabaseTableReferences(int index) { + return databaseTableReferences_.get(index); + } + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder + getDatabaseTableReferencesOrBuilder(int index) { + return databaseTableReferences_.get(index); + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -605,6 +707,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < tableIds_.size(); i++) { com.google.protobuf.GeneratedMessage.writeString(output, 7, tableIds_.getRaw(i)); } + for (int i = 0; i < databaseTableReferences_.size(); i++) { + output.writeMessage(8, databaseTableReferences_.get(i)); + } getUnknownFields().writeTo(output); } @@ -640,6 +745,11 @@ public int getSerializedSize() { size += dataSize; size += 1 * getTableIdsList().size(); } + for (int i = 0; i < databaseTableReferences_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 8, databaseTableReferences_.get(i)); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -662,6 +772,8 @@ public boolean equals(final java.lang.Object obj) { if (!getInstanceId().equals(other.getInstanceId())) return false; if (!getDatabaseId().equals(other.getDatabaseId())) return false; if (!getTableIdsList().equals(other.getTableIdsList())) return false; + if (!getDatabaseTableReferencesList().equals(other.getDatabaseTableReferencesList())) + return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -687,6 +799,10 @@ public int hashCode() { hash = (37 * hash) + TABLE_IDS_FIELD_NUMBER; hash = (53 * hash) + getTableIdsList().hashCode(); } + if (getDatabaseTableReferencesCount() > 0) { + hash = (37 * hash) + DATABASE_TABLE_REFERENCES_FIELD_NUMBER; + hash = (53 * hash) + getDatabaseTableReferencesList().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -836,6 +952,13 @@ public Builder clear() { instanceId_ = ""; databaseId_ = ""; tableIds_ = com.google.protobuf.LazyStringArrayList.emptyList(); + if (databaseTableReferencesBuilder_ == null) { + databaseTableReferences_ = java.util.Collections.emptyList(); + } else { + databaseTableReferences_ = null; + databaseTableReferencesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000040); return this; } @@ -865,6 +988,7 @@ public com.google.cloud.geminidataanalytics.v1beta.CloudSqlDatabaseReference bui public com.google.cloud.geminidataanalytics.v1beta.CloudSqlDatabaseReference buildPartial() { com.google.cloud.geminidataanalytics.v1beta.CloudSqlDatabaseReference result = new com.google.cloud.geminidataanalytics.v1beta.CloudSqlDatabaseReference(this); + buildPartialRepeatedFields(result); if (bitField0_ != 0) { buildPartial0(result); } @@ -872,6 +996,20 @@ public com.google.cloud.geminidataanalytics.v1beta.CloudSqlDatabaseReference bui return result; } + private void buildPartialRepeatedFields( + com.google.cloud.geminidataanalytics.v1beta.CloudSqlDatabaseReference result) { + if (databaseTableReferencesBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0)) { + databaseTableReferences_ = + java.util.Collections.unmodifiableList(databaseTableReferences_); + bitField0_ = (bitField0_ & ~0x00000040); + } + result.databaseTableReferences_ = databaseTableReferences_; + } else { + result.databaseTableReferences_ = databaseTableReferencesBuilder_.build(); + } + } + private void buildPartial0( com.google.cloud.geminidataanalytics.v1beta.CloudSqlDatabaseReference result) { int from_bitField0_ = bitField0_; @@ -945,6 +1083,33 @@ public Builder mergeFrom( } onChanged(); } + if (databaseTableReferencesBuilder_ == null) { + if (!other.databaseTableReferences_.isEmpty()) { + if (databaseTableReferences_.isEmpty()) { + databaseTableReferences_ = other.databaseTableReferences_; + bitField0_ = (bitField0_ & ~0x00000040); + } else { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.addAll(other.databaseTableReferences_); + } + onChanged(); + } + } else { + if (!other.databaseTableReferences_.isEmpty()) { + if (databaseTableReferencesBuilder_.isEmpty()) { + databaseTableReferencesBuilder_.dispose(); + databaseTableReferencesBuilder_ = null; + databaseTableReferences_ = other.databaseTableReferences_; + bitField0_ = (bitField0_ & ~0x00000040); + databaseTableReferencesBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetDatabaseTableReferencesFieldBuilder() + : null; + } else { + databaseTableReferencesBuilder_.addAllMessages(other.databaseTableReferences_); + } + } + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -1008,6 +1173,20 @@ public Builder mergeFrom( tableIds_.add(s); break; } // case 58 + case 66: + { + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference m = + input.readMessage( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.parser(), + extensionRegistry); + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(m); + } else { + databaseTableReferencesBuilder_.addMessage(m); + } + break; + } // case 66 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -1765,6 +1944,474 @@ public Builder addTableIdsBytes(com.google.protobuf.ByteString value) { return this; } + private java.util.List + databaseTableReferences_ = java.util.Collections.emptyList(); + + private void ensureDatabaseTableReferencesIsMutable() { + if (!((bitField0_ & 0x00000040) != 0)) { + databaseTableReferences_ = + new java.util.ArrayList< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference>( + databaseTableReferences_); + bitField0_ |= 0x00000040; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + databaseTableReferencesBuilder_; + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List + getDatabaseTableReferencesList() { + if (databaseTableReferencesBuilder_ == null) { + return java.util.Collections.unmodifiableList(databaseTableReferences_); + } else { + return databaseTableReferencesBuilder_.getMessageList(); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public int getDatabaseTableReferencesCount() { + if (databaseTableReferencesBuilder_ == null) { + return databaseTableReferences_.size(); + } else { + return databaseTableReferencesBuilder_.getCount(); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + getDatabaseTableReferences(int index) { + if (databaseTableReferencesBuilder_ == null) { + return databaseTableReferences_.get(index); + } else { + return databaseTableReferencesBuilder_.getMessage(index); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setDatabaseTableReferences( + int index, com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference value) { + if (databaseTableReferencesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.set(index, value); + onChanged(); + } else { + databaseTableReferencesBuilder_.setMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setDatabaseTableReferences( + int index, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + builderForValue) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.set(index, builderForValue.build()); + onChanged(); + } else { + databaseTableReferencesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addDatabaseTableReferences( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference value) { + if (databaseTableReferencesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(value); + onChanged(); + } else { + databaseTableReferencesBuilder_.addMessage(value); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addDatabaseTableReferences( + int index, com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference value) { + if (databaseTableReferencesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(index, value); + onChanged(); + } else { + databaseTableReferencesBuilder_.addMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addDatabaseTableReferences( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + builderForValue) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(builderForValue.build()); + onChanged(); + } else { + databaseTableReferencesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addDatabaseTableReferences( + int index, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + builderForValue) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(index, builderForValue.build()); + onChanged(); + } else { + databaseTableReferencesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllDatabaseTableReferences( + java.lang.Iterable< + ? extends com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference> + values) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, databaseTableReferences_); + onChanged(); + } else { + databaseTableReferencesBuilder_.addAllMessages(values); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearDatabaseTableReferences() { + if (databaseTableReferencesBuilder_ == null) { + databaseTableReferences_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000040); + onChanged(); + } else { + databaseTableReferencesBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeDatabaseTableReferences(int index) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.remove(index); + onChanged(); + } else { + databaseTableReferencesBuilder_.remove(index); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + getDatabaseTableReferencesBuilder(int index) { + return internalGetDatabaseTableReferencesFieldBuilder().getBuilder(index); + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder + getDatabaseTableReferencesOrBuilder(int index) { + if (databaseTableReferencesBuilder_ == null) { + return databaseTableReferences_.get(index); + } else { + return databaseTableReferencesBuilder_.getMessageOrBuilder(index); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + getDatabaseTableReferencesOrBuilderList() { + if (databaseTableReferencesBuilder_ != null) { + return databaseTableReferencesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(databaseTableReferences_); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + addDatabaseTableReferencesBuilder() { + return internalGetDatabaseTableReferencesFieldBuilder() + .addBuilder( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + .getDefaultInstance()); + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + addDatabaseTableReferencesBuilder(int index) { + return internalGetDatabaseTableReferencesFieldBuilder() + .addBuilder( + index, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + .getDefaultInstance()); + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder> + getDatabaseTableReferencesBuilderList() { + return internalGetDatabaseTableReferencesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + internalGetDatabaseTableReferencesFieldBuilder() { + if (databaseTableReferencesBuilder_ == null) { + databaseTableReferencesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder>( + databaseTableReferences_, + ((bitField0_ & 0x00000040) != 0), + getParentForChildren(), + isClean()); + databaseTableReferences_ = null; + } + return databaseTableReferencesBuilder_; + } + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.CloudSqlDatabaseReference) } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CloudSqlDatabaseReferenceOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CloudSqlDatabaseReferenceOrBuilder.java index 048171e6e9a7..eac2bb0b8b9a 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CloudSqlDatabaseReferenceOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/CloudSqlDatabaseReferenceOrBuilder.java @@ -213,4 +213,84 @@ public interface CloudSqlDatabaseReferenceOrBuilder * @return The bytes of the tableIds at the given index. */ com.google.protobuf.ByteString getTableIdsBytes(int index); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List + getDatabaseTableReferencesList(); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference getDatabaseTableReferences( + int index); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getDatabaseTableReferencesCount(); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + getDatabaseTableReferencesOrBuilderList(); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder + getDatabaseTableReferencesOrBuilder(int index); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Context.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Context.java index 4320b4b10f11..bdd11ef4659f 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Context.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Context.java @@ -191,11 +191,11 @@ public interface SchemaRelationshipOrBuilder * * *
        -     * Sources which generated the schema relation edge.
        +     * Optional. Sources which generated the schema relation edge.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @return A list containing the sources. @@ -207,11 +207,11 @@ public interface SchemaRelationshipOrBuilder * * *
        -     * Sources which generated the schema relation edge.
        +     * Optional. Sources which generated the schema relation edge.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @return The count of sources. @@ -222,11 +222,11 @@ public interface SchemaRelationshipOrBuilder * * *
        -     * Sources which generated the schema relation edge.
        +     * Optional. Sources which generated the schema relation edge.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @param index The index of the element to return. @@ -239,11 +239,11 @@ com.google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source ge * * *
        -     * Sources which generated the schema relation edge.
        +     * Optional. Sources which generated the schema relation edge.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @return A list containing the enum numeric values on the wire for sources. @@ -254,11 +254,11 @@ com.google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source ge * * *
        -     * Sources which generated the schema relation edge.
        +     * Optional. Sources which generated the schema relation edge.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @param index The index of the value to return. @@ -270,11 +270,11 @@ com.google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source ge * * *
        -     * A confidence score for the suggested relationship.
        +     * Optional. A confidence score for the suggested relationship.
              * Manually added edges have the highest confidence score.
              * 
        * - * float confidence_score = 4; + * float confidence_score = 4 [(.google.api.field_behavior) = OPTIONAL]; * * @return The confidenceScore. */ @@ -1731,11 +1731,11 @@ public boolean hasRightSchemaPaths() { * * *
        -     * Sources which generated the schema relation edge.
        +     * Optional. Sources which generated the schema relation edge.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @return A list containing the sources. @@ -1753,11 +1753,11 @@ public boolean hasRightSchemaPaths() { * * *
        -     * Sources which generated the schema relation edge.
        +     * Optional. Sources which generated the schema relation edge.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @return The count of sources. @@ -1771,11 +1771,11 @@ public int getSourcesCount() { * * *
        -     * Sources which generated the schema relation edge.
        +     * Optional. Sources which generated the schema relation edge.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @param index The index of the element to return. @@ -1791,11 +1791,11 @@ public com.google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.So * * *
        -     * Sources which generated the schema relation edge.
        +     * Optional. Sources which generated the schema relation edge.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @return A list containing the enum numeric values on the wire for sources. @@ -1809,11 +1809,11 @@ public java.util.List getSourcesValueList() { * * *
        -     * Sources which generated the schema relation edge.
        +     * Optional. Sources which generated the schema relation edge.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @param index The index of the value to return. @@ -1833,11 +1833,11 @@ public int getSourcesValue(int index) { * * *
        -     * A confidence score for the suggested relationship.
        +     * Optional. A confidence score for the suggested relationship.
              * Manually added edges have the highest confidence score.
              * 
        * - * float confidence_score = 4; + * float confidence_score = 4 [(.google.api.field_behavior) = OPTIONAL]; * * @return The confidenceScore. */ @@ -2849,11 +2849,11 @@ private void ensureSourcesIsMutable() { * * *
        -       * Sources which generated the schema relation edge.
        +       * Optional. Sources which generated the schema relation edge.
                * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @return A list containing the sources. @@ -2870,11 +2870,11 @@ private void ensureSourcesIsMutable() { * * *
        -       * Sources which generated the schema relation edge.
        +       * Optional. Sources which generated the schema relation edge.
                * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @return The count of sources. @@ -2887,11 +2887,11 @@ public int getSourcesCount() { * * *
        -       * Sources which generated the schema relation edge.
        +       * Optional. Sources which generated the schema relation edge.
                * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @param index The index of the element to return. @@ -2906,11 +2906,11 @@ public int getSourcesCount() { * * *
        -       * Sources which generated the schema relation edge.
        +       * Optional. Sources which generated the schema relation edge.
                * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @param index The index to set the value at. @@ -2933,11 +2933,11 @@ public Builder setSources( * * *
        -       * Sources which generated the schema relation edge.
        +       * Optional. Sources which generated the schema relation edge.
                * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @param value The sources to add. @@ -2958,11 +2958,11 @@ public Builder addSources( * * *
        -       * Sources which generated the schema relation edge.
        +       * Optional. Sources which generated the schema relation edge.
                * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @param values The sources to add. @@ -2986,11 +2986,11 @@ public Builder addAllSources( * * *
        -       * Sources which generated the schema relation edge.
        +       * Optional. Sources which generated the schema relation edge.
                * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @return This builder for chaining. @@ -3006,11 +3006,11 @@ public Builder clearSources() { * * *
        -       * Sources which generated the schema relation edge.
        +       * Optional. Sources which generated the schema relation edge.
                * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @return A list containing the enum numeric values on the wire for sources. @@ -3024,11 +3024,11 @@ public java.util.List getSourcesValueList() { * * *
        -       * Sources which generated the schema relation edge.
        +       * Optional. Sources which generated the schema relation edge.
                * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @param index The index of the value to return. @@ -3042,11 +3042,11 @@ public int getSourcesValue(int index) { * * *
        -       * Sources which generated the schema relation edge.
        +       * Optional. Sources which generated the schema relation edge.
                * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @param index The index to set the value at. @@ -3064,11 +3064,11 @@ public Builder setSourcesValue(int index, int value) { * * *
        -       * Sources which generated the schema relation edge.
        +       * Optional. Sources which generated the schema relation edge.
                * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @param value The enum numeric value on the wire for sources to add. @@ -3085,11 +3085,11 @@ public Builder addSourcesValue(int value) { * * *
        -       * Sources which generated the schema relation edge.
        +       * Optional. Sources which generated the schema relation edge.
                * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3; + * repeated .google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source sources = 3 [(.google.api.field_behavior) = OPTIONAL]; * * * @param values The enum numeric values on the wire for sources to add. @@ -3110,11 +3110,11 @@ public Builder addAllSourcesValue(java.lang.Iterable values) * * *
        -       * A confidence score for the suggested relationship.
        +       * Optional. A confidence score for the suggested relationship.
                * Manually added edges have the highest confidence score.
                * 
        * - * float confidence_score = 4; + * float confidence_score = 4 [(.google.api.field_behavior) = OPTIONAL]; * * @return The confidenceScore. */ @@ -3127,11 +3127,11 @@ public float getConfidenceScore() { * * *
        -       * A confidence score for the suggested relationship.
        +       * Optional. A confidence score for the suggested relationship.
                * Manually added edges have the highest confidence score.
                * 
        * - * float confidence_score = 4; + * float confidence_score = 4 [(.google.api.field_behavior) = OPTIONAL]; * * @param value The confidenceScore to set. * @return This builder for chaining. @@ -3148,11 +3148,11 @@ public Builder setConfidenceScore(float value) { * * *
        -       * A confidence score for the suggested relationship.
        +       * Optional. A confidence score for the suggested relationship.
                * Manually added edges have the highest confidence score.
                * 
        * - * float confidence_score = 4; + * float confidence_score = 4 [(.google.api.field_behavior) = OPTIONAL]; * * @return This builder for chaining. */ @@ -3415,7 +3415,8 @@ public com.google.cloud.geminidataanalytics.v1beta.ConversationOptions getOption *
            * Optional. A list of example queries, providing examples of relevant and
            * commonly used SQL queries and their corresponding natural language queries
        -   * optionally present. Currently only used for BigQuery data sources.
        +   * optionally present. Currently only used for BigQuery data sources and
        +   * databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -3434,7 +3435,8 @@ public com.google.cloud.geminidataanalytics.v1beta.ConversationOptions getOption *
            * Optional. A list of example queries, providing examples of relevant and
            * commonly used SQL queries and their corresponding natural language queries
        -   * optionally present. Currently only used for BigQuery data sources.
        +   * optionally present. Currently only used for BigQuery data sources and
        +   * databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -3453,7 +3455,8 @@ public com.google.cloud.geminidataanalytics.v1beta.ConversationOptions getOption *
            * Optional. A list of example queries, providing examples of relevant and
            * commonly used SQL queries and their corresponding natural language queries
        -   * optionally present. Currently only used for BigQuery data sources.
        +   * optionally present. Currently only used for BigQuery data sources and
        +   * databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -3471,7 +3474,8 @@ public int getExampleQueriesCount() { *
            * Optional. A list of example queries, providing examples of relevant and
            * commonly used SQL queries and their corresponding natural language queries
        -   * optionally present. Currently only used for BigQuery data sources.
        +   * optionally present. Currently only used for BigQuery data sources and
        +   * databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -3489,7 +3493,8 @@ public com.google.cloud.geminidataanalytics.v1beta.ExampleQuery getExampleQuerie *
            * Optional. A list of example queries, providing examples of relevant and
            * commonly used SQL queries and their corresponding natural language queries
        -   * optionally present. Currently only used for BigQuery data sources.
        +   * optionally present. Currently only used for BigQuery data sources and
        +   * databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -3514,7 +3519,7 @@ public com.google.cloud.geminidataanalytics.v1beta.ExampleQuery getExampleQuerie *
            * Optional. A list of golden queries, providing examples of relevant and
            * commonly used Looker queries and their corresponding natural language
        -   * queries optionally present.
        +   * queries optionally present. Only supported for Looker data sources.
            * 
        * * @@ -3533,7 +3538,7 @@ public com.google.cloud.geminidataanalytics.v1beta.ExampleQuery getExampleQuerie *
            * Optional. A list of golden queries, providing examples of relevant and
            * commonly used Looker queries and their corresponding natural language
        -   * queries optionally present.
        +   * queries optionally present. Only supported for Looker data sources.
            * 
        * * @@ -3553,7 +3558,7 @@ public com.google.cloud.geminidataanalytics.v1beta.ExampleQuery getExampleQuerie *
            * Optional. A list of golden queries, providing examples of relevant and
            * commonly used Looker queries and their corresponding natural language
        -   * queries optionally present.
        +   * queries optionally present. Only supported for Looker data sources.
            * 
        * * @@ -3571,7 +3576,7 @@ public int getLookerGoldenQueriesCount() { *
            * Optional. A list of golden queries, providing examples of relevant and
            * commonly used Looker queries and their corresponding natural language
        -   * queries optionally present.
        +   * queries optionally present. Only supported for Looker data sources.
            * 
        * * @@ -3590,7 +3595,7 @@ public com.google.cloud.geminidataanalytics.v1beta.LookerGoldenQuery getLookerGo *
            * Optional. A list of golden queries, providing examples of relevant and
            * commonly used Looker queries and their corresponding natural language
        -   * queries optionally present.
        +   * queries optionally present. Only supported for Looker data sources.
            * 
        * * @@ -3613,6 +3618,7 @@ public com.google.cloud.geminidataanalytics.v1beta.LookerGoldenQuery getLookerGo * *
            * Optional. Term definitions (currently, only user authored)
        +   * Not supported for databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -3630,6 +3636,7 @@ public com.google.cloud.geminidataanalytics.v1beta.LookerGoldenQuery getLookerGo * *
            * Optional. Term definitions (currently, only user authored)
        +   * Not supported for databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -3647,6 +3654,7 @@ public com.google.cloud.geminidataanalytics.v1beta.LookerGoldenQuery getLookerGo * *
            * Optional. Term definitions (currently, only user authored)
        +   * Not supported for databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -3663,6 +3671,7 @@ public int getGlossaryTermsCount() { * *
            * Optional. Term definitions (currently, only user authored)
        +   * Not supported for databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -3679,6 +3688,7 @@ public com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm getGlossaryTerms * *
            * Optional. Term definitions (currently, only user authored)
        +   * Not supported for databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -3787,6 +3797,66 @@ public int getSchemaRelationshipsCount() { return schemaRelationships_.get(index); } + public static final int USER_FUNCTIONS_FIELD_NUMBER = 10; + private com.google.cloud.geminidataanalytics.v1beta.UserFunctions userFunctions_; + + /** + * + * + *
        +   * Optional. A collection of user functions to be included in context.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the userFunctions field is set. + */ + @java.lang.Override + public boolean hasUserFunctions() { + return ((bitField0_ & 0x00000004) != 0); + } + + /** + * + * + *
        +   * Optional. A collection of user functions to be included in context.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The userFunctions. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.UserFunctions getUserFunctions() { + return userFunctions_ == null + ? com.google.cloud.geminidataanalytics.v1beta.UserFunctions.getDefaultInstance() + : userFunctions_; + } + + /** + * + * + *
        +   * Optional. A collection of user functions to be included in context.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.UserFunctionsOrBuilder + getUserFunctionsOrBuilder() { + return userFunctions_ == null + ? com.google.cloud.geminidataanalytics.v1beta.UserFunctions.getDefaultInstance() + : userFunctions_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -3819,6 +3889,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < schemaRelationships_.size(); i++) { output.writeMessage(9, schemaRelationships_.get(i)); } + if (((bitField0_ & 0x00000004) != 0)) { + output.writeMessage(10, getUserFunctions()); + } for (int i = 0; i < lookerGoldenQueries_.size(); i++) { output.writeMessage(11, lookerGoldenQueries_.get(i)); } @@ -3851,6 +3924,9 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream.computeMessageSize(9, schemaRelationships_.get(i)); } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(10, getUserFunctions()); + } for (int i = 0; i < lookerGoldenQueries_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(11, lookerGoldenQueries_.get(i)); @@ -3884,6 +3960,10 @@ public boolean equals(final java.lang.Object obj) { if (!getLookerGoldenQueriesList().equals(other.getLookerGoldenQueriesList())) return false; if (!getGlossaryTermsList().equals(other.getGlossaryTermsList())) return false; if (!getSchemaRelationshipsList().equals(other.getSchemaRelationshipsList())) return false; + if (hasUserFunctions() != other.hasUserFunctions()) return false; + if (hasUserFunctions()) { + if (!getUserFunctions().equals(other.getUserFunctions())) return false; + } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -3921,6 +4001,10 @@ public int hashCode() { hash = (37 * hash) + SCHEMA_RELATIONSHIPS_FIELD_NUMBER; hash = (53 * hash) + getSchemaRelationshipsList().hashCode(); } + if (hasUserFunctions()) { + hash = (37 * hash) + USER_FUNCTIONS_FIELD_NUMBER; + hash = (53 * hash) + getUserFunctions().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -4068,6 +4152,7 @@ private void maybeForceBuilderInitialization() { internalGetLookerGoldenQueriesFieldBuilder(); internalGetGlossaryTermsFieldBuilder(); internalGetSchemaRelationshipsFieldBuilder(); + internalGetUserFunctionsFieldBuilder(); } } @@ -4114,6 +4199,11 @@ public Builder clear() { schemaRelationshipsBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000040); + userFunctions_ = null; + if (userFunctionsBuilder_ != null) { + userFunctionsBuilder_.dispose(); + userFunctionsBuilder_ = null; + } return this; } @@ -4206,6 +4296,11 @@ private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.Context r result.options_ = optionsBuilder_ == null ? options_ : optionsBuilder_.build(); to_bitField0_ |= 0x00000002; } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.userFunctions_ = + userFunctionsBuilder_ == null ? userFunctions_ : userFunctionsBuilder_.build(); + to_bitField0_ |= 0x00000004; + } result.bitField0_ |= to_bitField0_; } @@ -4341,6 +4436,9 @@ public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.Context oth } } } + if (other.hasUserFunctions()) { + mergeUserFunctions(other.getUserFunctions()); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -4429,6 +4527,13 @@ public Builder mergeFrom( } break; } // case 74 + case 82: + { + input.readMessage( + internalGetUserFunctionsFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000080; + break; + } // case 82 case 90: { com.google.cloud.geminidataanalytics.v1beta.LookerGoldenQuery m = @@ -5061,7 +5166,8 @@ private void ensureExampleQueriesIsMutable() { *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5083,7 +5189,8 @@ private void ensureExampleQueriesIsMutable() { *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5104,7 +5211,8 @@ public int getExampleQueriesCount() { *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5125,7 +5233,8 @@ public com.google.cloud.geminidataanalytics.v1beta.ExampleQuery getExampleQuerie *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5153,7 +5262,8 @@ public Builder setExampleQueries( *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5179,7 +5289,8 @@ public Builder setExampleQueries( *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5207,7 +5318,8 @@ public Builder addExampleQueries( *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5235,7 +5347,8 @@ public Builder addExampleQueries( *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5260,7 +5373,8 @@ public Builder addExampleQueries( *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5286,7 +5400,8 @@ public Builder addExampleQueries( *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5312,7 +5427,8 @@ public Builder addAllExampleQueries( *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5336,7 +5452,8 @@ public Builder clearExampleQueries() { *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5360,7 +5477,8 @@ public Builder removeExampleQueries(int index) { *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5378,7 +5496,8 @@ public Builder removeExampleQueries(int index) { *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5400,7 +5519,8 @@ public Builder removeExampleQueries(int index) { *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5423,7 +5543,8 @@ public Builder removeExampleQueries(int index) { *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5443,7 +5564,8 @@ public Builder removeExampleQueries(int index) { *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5463,7 +5585,8 @@ public Builder removeExampleQueries(int index) { *
              * Optional. A list of example queries, providing examples of relevant and
              * commonly used SQL queries and their corresponding natural language queries
        -     * optionally present. Currently only used for BigQuery data sources.
        +     * optionally present. Currently only used for BigQuery data sources and
        +     * databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5519,7 +5642,7 @@ private void ensureLookerGoldenQueriesIsMutable() { *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5541,7 +5664,7 @@ private void ensureLookerGoldenQueriesIsMutable() { *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5562,7 +5685,7 @@ public int getLookerGoldenQueriesCount() { *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5584,7 +5707,7 @@ public com.google.cloud.geminidataanalytics.v1beta.LookerGoldenQuery getLookerGo *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5612,7 +5735,7 @@ public Builder setLookerGoldenQueries( *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5638,7 +5761,7 @@ public Builder setLookerGoldenQueries( *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5666,7 +5789,7 @@ public Builder addLookerGoldenQueries( *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5694,7 +5817,7 @@ public Builder addLookerGoldenQueries( *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5719,7 +5842,7 @@ public Builder addLookerGoldenQueries( *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5745,7 +5868,7 @@ public Builder addLookerGoldenQueries( *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5771,7 +5894,7 @@ public Builder addAllLookerGoldenQueries( *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5795,7 +5918,7 @@ public Builder clearLookerGoldenQueries() { *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5819,7 +5942,7 @@ public Builder removeLookerGoldenQueries(int index) { *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5837,7 +5960,7 @@ public Builder removeLookerGoldenQueries(int index) { *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5859,7 +5982,7 @@ public Builder removeLookerGoldenQueries(int index) { *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5882,7 +6005,7 @@ public Builder removeLookerGoldenQueries(int index) { *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5902,7 +6025,7 @@ public Builder removeLookerGoldenQueries(int index) { *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5923,7 +6046,7 @@ public Builder removeLookerGoldenQueries(int index) { *
              * Optional. A list of golden queries, providing examples of relevant and
              * commonly used Looker queries and their corresponding natural language
        -     * queries optionally present.
        +     * queries optionally present. Only supported for Looker data sources.
              * 
        * * @@ -5978,6 +6101,7 @@ private void ensureGlossaryTermsIsMutable() { * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -5998,6 +6122,7 @@ private void ensureGlossaryTermsIsMutable() { * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6017,6 +6142,7 @@ public int getGlossaryTermsCount() { * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6036,6 +6162,7 @@ public com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm getGlossaryTerms * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6062,6 +6189,7 @@ public Builder setGlossaryTerms( * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6086,6 +6214,7 @@ public Builder setGlossaryTerms( * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6112,6 +6241,7 @@ public Builder addGlossaryTerms( * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6138,6 +6268,7 @@ public Builder addGlossaryTerms( * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6161,6 +6292,7 @@ public Builder addGlossaryTerms( * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6185,6 +6317,7 @@ public Builder addGlossaryTerms( * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6209,6 +6342,7 @@ public Builder addAllGlossaryTerms( * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6231,6 +6365,7 @@ public Builder clearGlossaryTerms() { * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6253,6 +6388,7 @@ public Builder removeGlossaryTerms(int index) { * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6269,6 +6405,7 @@ public com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.Builder getGloss * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6289,6 +6426,7 @@ public com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.Builder getGloss * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6310,6 +6448,7 @@ public com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.Builder getGloss * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6328,6 +6467,7 @@ public com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.Builder getGloss * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6346,6 +6486,7 @@ public com.google.cloud.geminidataanalytics.v1beta.GlossaryTerm.Builder addGloss * *
              * Optional. Term definitions (currently, only user authored)
        +     * Not supported for databases (alloydb, cloudsql, spanner) data sources.
              * 
        * * @@ -6828,6 +6969,224 @@ public Builder removeSchemaRelationships(int index) { return schemaRelationshipsBuilder_; } + private com.google.cloud.geminidataanalytics.v1beta.UserFunctions userFunctions_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.UserFunctions, + com.google.cloud.geminidataanalytics.v1beta.UserFunctions.Builder, + com.google.cloud.geminidataanalytics.v1beta.UserFunctionsOrBuilder> + userFunctionsBuilder_; + + /** + * + * + *
        +     * Optional. A collection of user functions to be included in context.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the userFunctions field is set. + */ + public boolean hasUserFunctions() { + return ((bitField0_ & 0x00000080) != 0); + } + + /** + * + * + *
        +     * Optional. A collection of user functions to be included in context.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The userFunctions. + */ + public com.google.cloud.geminidataanalytics.v1beta.UserFunctions getUserFunctions() { + if (userFunctionsBuilder_ == null) { + return userFunctions_ == null + ? com.google.cloud.geminidataanalytics.v1beta.UserFunctions.getDefaultInstance() + : userFunctions_; + } else { + return userFunctionsBuilder_.getMessage(); + } + } + + /** + * + * + *
        +     * Optional. A collection of user functions to be included in context.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setUserFunctions( + com.google.cloud.geminidataanalytics.v1beta.UserFunctions value) { + if (userFunctionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + userFunctions_ = value; + } else { + userFunctionsBuilder_.setMessage(value); + } + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. A collection of user functions to be included in context.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setUserFunctions( + com.google.cloud.geminidataanalytics.v1beta.UserFunctions.Builder builderForValue) { + if (userFunctionsBuilder_ == null) { + userFunctions_ = builderForValue.build(); + } else { + userFunctionsBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. A collection of user functions to be included in context.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeUserFunctions( + com.google.cloud.geminidataanalytics.v1beta.UserFunctions value) { + if (userFunctionsBuilder_ == null) { + if (((bitField0_ & 0x00000080) != 0) + && userFunctions_ != null + && userFunctions_ + != com.google.cloud.geminidataanalytics.v1beta.UserFunctions.getDefaultInstance()) { + getUserFunctionsBuilder().mergeFrom(value); + } else { + userFunctions_ = value; + } + } else { + userFunctionsBuilder_.mergeFrom(value); + } + if (userFunctions_ != null) { + bitField0_ |= 0x00000080; + onChanged(); + } + return this; + } + + /** + * + * + *
        +     * Optional. A collection of user functions to be included in context.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearUserFunctions() { + bitField0_ = (bitField0_ & ~0x00000080); + userFunctions_ = null; + if (userFunctionsBuilder_ != null) { + userFunctionsBuilder_.dispose(); + userFunctionsBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. A collection of user functions to be included in context.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.UserFunctions.Builder + getUserFunctionsBuilder() { + bitField0_ |= 0x00000080; + onChanged(); + return internalGetUserFunctionsFieldBuilder().getBuilder(); + } + + /** + * + * + *
        +     * Optional. A collection of user functions to be included in context.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.UserFunctionsOrBuilder + getUserFunctionsOrBuilder() { + if (userFunctionsBuilder_ != null) { + return userFunctionsBuilder_.getMessageOrBuilder(); + } else { + return userFunctions_ == null + ? com.google.cloud.geminidataanalytics.v1beta.UserFunctions.getDefaultInstance() + : userFunctions_; + } + } + + /** + * + * + *
        +     * Optional. A collection of user functions to be included in context.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.UserFunctions, + com.google.cloud.geminidataanalytics.v1beta.UserFunctions.Builder, + com.google.cloud.geminidataanalytics.v1beta.UserFunctionsOrBuilder> + internalGetUserFunctionsFieldBuilder() { + if (userFunctionsBuilder_ == null) { + userFunctionsBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.UserFunctions, + com.google.cloud.geminidataanalytics.v1beta.UserFunctions.Builder, + com.google.cloud.geminidataanalytics.v1beta.UserFunctionsOrBuilder>( + getUserFunctions(), getParentForChildren(), isClean()); + userFunctions_ = null; + } + return userFunctionsBuilder_; + } + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.Context) } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ContextOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ContextOrBuilder.java index c1b8fec7cdf0..b8e72ad4a1fa 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ContextOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ContextOrBuilder.java @@ -155,7 +155,8 @@ public interface ContextOrBuilder *
            * Optional. A list of example queries, providing examples of relevant and
            * commonly used SQL queries and their corresponding natural language queries
        -   * optionally present. Currently only used for BigQuery data sources.
        +   * optionally present. Currently only used for BigQuery data sources and
        +   * databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -170,7 +171,8 @@ public interface ContextOrBuilder *
            * Optional. A list of example queries, providing examples of relevant and
            * commonly used SQL queries and their corresponding natural language queries
        -   * optionally present. Currently only used for BigQuery data sources.
        +   * optionally present. Currently only used for BigQuery data sources and
        +   * databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -185,7 +187,8 @@ public interface ContextOrBuilder *
            * Optional. A list of example queries, providing examples of relevant and
            * commonly used SQL queries and their corresponding natural language queries
        -   * optionally present. Currently only used for BigQuery data sources.
        +   * optionally present. Currently only used for BigQuery data sources and
        +   * databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -200,7 +203,8 @@ public interface ContextOrBuilder *
            * Optional. A list of example queries, providing examples of relevant and
            * commonly used SQL queries and their corresponding natural language queries
        -   * optionally present. Currently only used for BigQuery data sources.
        +   * optionally present. Currently only used for BigQuery data sources and
        +   * databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -216,7 +220,8 @@ public interface ContextOrBuilder *
            * Optional. A list of example queries, providing examples of relevant and
            * commonly used SQL queries and their corresponding natural language queries
        -   * optionally present. Currently only used for BigQuery data sources.
        +   * optionally present. Currently only used for BigQuery data sources and
        +   * databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -232,7 +237,7 @@ com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder getExampleQuer *
            * Optional. A list of golden queries, providing examples of relevant and
            * commonly used Looker queries and their corresponding natural language
        -   * queries optionally present.
        +   * queries optionally present. Only supported for Looker data sources.
            * 
        * * @@ -248,7 +253,7 @@ com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder getExampleQuer *
            * Optional. A list of golden queries, providing examples of relevant and
            * commonly used Looker queries and their corresponding natural language
        -   * queries optionally present.
        +   * queries optionally present. Only supported for Looker data sources.
            * 
        * * @@ -263,7 +268,7 @@ com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder getExampleQuer *
            * Optional. A list of golden queries, providing examples of relevant and
            * commonly used Looker queries and their corresponding natural language
        -   * queries optionally present.
        +   * queries optionally present. Only supported for Looker data sources.
            * 
        * * @@ -278,7 +283,7 @@ com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder getExampleQuer *
            * Optional. A list of golden queries, providing examples of relevant and
            * commonly used Looker queries and their corresponding natural language
        -   * queries optionally present.
        +   * queries optionally present. Only supported for Looker data sources.
            * 
        * * @@ -294,7 +299,7 @@ com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder getExampleQuer *
            * Optional. A list of golden queries, providing examples of relevant and
            * commonly used Looker queries and their corresponding natural language
        -   * queries optionally present.
        +   * queries optionally present. Only supported for Looker data sources.
            * 
        * * @@ -309,6 +314,7 @@ com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder getExampleQuer * *
            * Optional. Term definitions (currently, only user authored)
        +   * Not supported for databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -322,6 +328,7 @@ com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder getExampleQuer * *
            * Optional. Term definitions (currently, only user authored)
        +   * Not supported for databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -335,6 +342,7 @@ com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder getExampleQuer * *
            * Optional. Term definitions (currently, only user authored)
        +   * Not supported for databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -348,6 +356,7 @@ com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder getExampleQuer * *
            * Optional. Term definitions (currently, only user authored)
        +   * Not supported for databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -362,6 +371,7 @@ com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder getExampleQuer * *
            * Optional. Term definitions (currently, only user authored)
        +   * Not supported for databases (alloydb, cloudsql, spanner) data sources.
            * 
        * * @@ -445,4 +455,47 @@ com.google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship getSchema */ com.google.cloud.geminidataanalytics.v1beta.Context.SchemaRelationshipOrBuilder getSchemaRelationshipsOrBuilder(int index); + + /** + * + * + *
        +   * Optional. A collection of user functions to be included in context.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the userFunctions field is set. + */ + boolean hasUserFunctions(); + + /** + * + * + *
        +   * Optional. A collection of user functions to be included in context.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The userFunctions. + */ + com.google.cloud.geminidataanalytics.v1beta.UserFunctions getUserFunctions(); + + /** + * + * + *
        +   * Optional. A collection of user functions to be included in context.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.UserFunctions user_functions = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.UserFunctionsOrBuilder getUserFunctionsOrBuilder(); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ContextProto.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ContextProto.java index 4b0e9e58c1f6..e309cfe97b05 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ContextProto.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ContextProto.java @@ -52,10 +52,34 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_geminidataanalytics_v1beta_Context_SchemaRelationship_SchemaPaths_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_geminidataanalytics_v1beta_Context_SchemaRelationship_SchemaPaths_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_geminidataanalytics_v1beta_UserFunctions_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_geminidataanalytics_v1beta_UserFunctions_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutine_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutine_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutineReference_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutineReference_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_geminidataanalytics_v1beta_ExampleQuery_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_geminidataanalytics_v1beta_ExampleQuery_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameter_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameter_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_geminidataanalytics_v1beta_MatchedQuery_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_geminidataanalytics_v1beta_MatchedQuery_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameterValues_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameterValues_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_geminidataanalytics_v1beta_LookerGoldenQuery_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -104,6 +128,22 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_geminidataanalytics_v1beta_AnalysisOptions_Python_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_geminidataanalytics_v1beta_AnalysisOptions_Python_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_geminidataanalytics_v1beta_Citation_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_geminidataanalytics_v1beta_Citation_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_geminidataanalytics_v1beta_CitationSource_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_geminidataanalytics_v1beta_CitationSource_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_TextMessageCitationAnchor_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_TextMessageCitationAnchor_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { return descriptor; @@ -116,30 +156,34 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "\n" + "5google/cloud/geminidataanalytics/v1beta/context.proto\022\'google.cloud.geminidata" + "analytics.v1beta\032\037google/api/field_behav" - + "ior.proto\0328google/cloud/geminidataanalyt" - + "ics/v1beta/datasource.proto\032\036google/protobuf/wrappers.proto\"\331\010\n" + + "ior.proto\032\031google/api/resource.proto\0328go" + + "ogle/cloud/geminidataanalytics/v1beta/da" + + "tasource.proto\032\036google/protobuf/wrappers.proto\"\270\t\n" + "\007Context\022\037\n" + "\022system_instruction\030\001 \001(\tB\003\340A\001\022a\n" - + "\025datasource_references\030\007 \001(\0132=.google.cloud.geminidat" - + "aanalytics.v1beta.DatasourceReferencesB\003\340A\002\022R\n" - + "\007options\030\003 \001(\0132<.google.cloud.gemi" - + "nidataanalytics.v1beta.ConversationOptionsB\003\340A\001\022S\n" - + "\017example_queries\030\005 \003(\01325.googl" - + "e.cloud.geminidataanalytics.v1beta.ExampleQueryB\003\340A\001\022^\n" - + "\025looker_golden_queries\030\013 " - + "\003(\0132:.google.cloud.geminidataanalytics.v1beta.LookerGoldenQueryB\003\340A\001\022R\n" - + "\016glossary_terms\030\010" - + " \003(\01325.google.cloud.geminidataanalytics.v1beta.GlossaryTermB\003\340A\001\022f\n" - + "\024schema_relationships\030\t \003(\0132C.google.cloud.ge" - + "minidataanalytics.v1beta.Context.SchemaRelationshipB\003\340A\001\032\204\004\n" + + "\025datasource_references\030\007 \001" + + "(\0132=.google.cloud.geminidataanalytics.v1beta.DatasourceReferencesB\003\340A\002\022R\n" + + "\007options\030\003" + + " \001(\0132<.google.cloud.geminidataanalytics.v1beta.ConversationOptionsB\003\340A\001\022S\n" + + "\017example_queries\030\005 \003(\01325.google.cloud.gemin" + + "idataanalytics.v1beta.ExampleQueryB\003\340A\001\022^\n" + + "\025looker_golden_queries\030\013 \003(\0132:.google." + + "cloud.geminidataanalytics.v1beta.LookerGoldenQueryB\003\340A\001\022R\n" + + "\016glossary_terms\030\010 \003(\0132" + + "5.google.cloud.geminidataanalytics.v1beta.GlossaryTermB\003\340A\001\022f\n" + + "\024schema_relationships\030\t \003(\0132C.google.cloud.geminidataanaly" + + "tics.v1beta.Context.SchemaRelationshipB\003\340A\001\022S\n" + + "\016user_functions\030\n" + + " \001(\01326.google.clo" + + "ud.geminidataanalytics.v1beta.UserFunctionsB\003\340A\001\032\216\004\n" + "\022SchemaRelationship\022j\n" - + "\021left_schema_paths\030\001 \001(\0132O.google.clou" - + "d.geminidataanalytics.v1beta.Context.SchemaRelationship.SchemaPaths\022k\n" - + "\022right_schema_paths\030\002 \001(\0132O.google.cloud.geminidat" - + "aanalytics.v1beta.Context.SchemaRelationship.SchemaPaths\022[\n" - + "\007sources\030\003 \003(\0162J.goog" - + "le.cloud.geminidataanalytics.v1beta.Context.SchemaRelationship.Source\022\030\n" - + "\020confidence_score\030\004 \001(\002\032/\n" + + "\021left_schema_paths\030\001 \001(\0132O.google.cloud.gemini" + + "dataanalytics.v1beta.Context.SchemaRelationship.SchemaPaths\022k\n" + + "\022right_schema_paths\030\002 \001(\0132O.google.cloud.geminidataanalyti" + + "cs.v1beta.Context.SchemaRelationship.SchemaPaths\022`\n" + + "\007sources\030\003 \003(\0162J.google.cloud" + + ".geminidataanalytics.v1beta.Context.SchemaRelationship.SourceB\003\340A\001\022\035\n" + + "\020confidence_score\030\004 \001(\002B\003\340A\001\032/\n" + "\013SchemaPaths\022\021\n" + "\ttable_fqn\030\001 \001(\t\022\r\n" + "\005paths\030\002 \003(\t\"m\n" @@ -147,68 +191,129 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\022SOURCE_UNSPECIFIED\020\000\022\030\n" + "\024BIGQUERY_JOB_HISTORY\020\001\022\021\n\r" + "LLM_SUGGESTED\020\002\022\036\n" - + "\032BIGQUERY_TABLE_CONSTRAINTS\020\003\"Y\n" + + "\032BIGQUERY_TABLE_CONSTRAINTS\020\003\"^\n\r" + + "UserFunctions\022M\n" + + "\013bq_routines\030\001" + + " \003(\01328.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine\"\204\001\n" + + "\017BigQueryRoutine\022\\\n" + + "\021routine_reference\030\001 \001(\013" + + "2A.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineReference\022\023\n" + + "\013description\030\002 \001(\t\"V\n" + + "\030BigQueryRoutineReference\022\022\n\n" + + "project_id\030\001 \001(\t\022\022\n\n" + + "dataset_id\030\002 \001(\t\022\022\n\n" + + "routine_id\030\003 \001(\t\"\253\001\n" + "\014ExampleQuery\022\030\n" + "\tsql_query\030e \001(\tB\003\340A\001H\000\022&\n" - + "\031natural_language_question\030\001 \001(\tB\003\340A\001B\007\n" - + "\005query\"\215\001\n" + + "\031natural_language_question\030\001 \001(\tB\003\340A\001\022P\n\n" + + "parameters\030\003 \003(\0132" + + "7.google.cloud.geminidataanalytics.v1beta.QueryParameterB\003\340A\001B\007\n" + + "\005query\"U\n" + + "\016QueryParameter\022\021\n" + + "\004name\030\001 \001(\tB\003\340A\002\022\030\n" + + "\013description\030\002 \001(\tB\003\340A\001\022\026\n" + + "\tdata_type\030\003 \001(\tB\003\340A\002\"\273\001\n" + + "\014MatchedQuery\022L\n\r" + + "example_query\030\001 \001(\01325." + + "google.cloud.geminidataanalytics.v1beta.ExampleQuery\022]\n" + + "\026query_parameter_values\030\002" + + " \003(\0132=.google.cloud.geminidataanalytics.v1beta.QueryParameterValues\"=\n" + + "\024QueryParameterValues\022\021\n" + + "\004name\030\001 \001(\tB\003\340A\002\022\022\n" + + "\005value\030\002 \001(\tB\003\340A\002\"\215\001\n" + "\021LookerGoldenQuery\022\'\n" + "\032natural_language_questions\030\004 \003(\tB\003\340A\001\022O\n" - + "\014looker_query\030\005 \001(\01324.google" - + ".cloud.geminidataanalytics.v1beta.LookerQueryB\003\340A\001\"\210\002\n" + + "\014looker_query\030\005" + + " \001(\01324.google.cloud.geminidataanalytics.v1beta.LookerQueryB\003\340A\001\"\353\002\n" + "\013LookerQuery\022\022\n" + "\005model\030\001 \001(\tB\003\340A\002\022\024\n" + "\007explore\030\002 \001(\tB\003\340A\002\022\023\n" + "\006fields\030\003 \003(\tB\003\340A\001\022Q\n" - + "\007filters\030\004 \003(\0132;.google.clou" - + "d.geminidataanalytics.v1beta.LookerQuery.FilterB\003\340A\001\022\022\n" + + "\007filters\030\004" + + " \003(\0132;.google.cloud.geminidataanalytics.v1beta.LookerQuery.FilterB\003\340A\001\022\022\n" + "\005sorts\030\005 \003(\tB\003\340A\001\022\027\n" - + "\005limit\030\006 \001(\tB\003\340A\001H\000\210\001\001\0320\n" + + "\005limit\030\006 \001(\tB\003\340A\001H\000\210\001\001\022\032\n" + + "\010query_id\030\n" + + " \001(\tB\003\340A\001H\001\210\001\001\022\033\n" + + "\tclient_id\030\013 \001(\tB\003\340A\001H\002\210\001\001\032?\n" + "\006Filter\022\022\n" - + "\005field\030\001 \001(\tB\003\340A\002\022\022\n" - + "\005value\030\002 \001(\tB\003\340A\002B\010\n" - + "\006_limit\"X\n" + + "\005field\030\001 \001(\tB\003\340A\002\022\027\n" + + "\005value\030\002 \001(\tB\003\340A\001H\000\210\001\001B\010\n" + + "\006_valueB\010\n" + + "\006_limitB\013\n" + + "\t_query_idB\014\n\n" + + "_client_id\"X\n" + "\014GlossaryTerm\022\031\n" + "\014display_name\030\001 \001(\tB\003\340A\002\022\030\n" + "\013description\030\002 \001(\tB\003\340A\002\022\023\n" - + "\006labels\030\003 \003(\tB\003\340A\001\"\206\002\n" + + "\006labels\030\003 \003(\tB\003\340A\001\"\242\003\n" + "\023ConversationOptions\022I\n" + "\005chart\030\001" + " \001(\01325.google.cloud.geminidataanalytics.v1beta.ChartOptionsB\003\340A\001\022O\n" + "\010analysis\030\002" + " \001(\01328.google.cloud.geminidataanalytics.v1beta.AnalysisOptionsB\003\340A\001\022S\n\n" + "datasource\030\003" - + " \001(\0132:.google.cloud.geminidataanalytics.v1beta.DatasourceOptionsB\003\340A\001\"Y\n" + + " \001(\0132:.google.cloud.geminidataanalytics.v1beta.DatasourceOptionsB\003\340A\001\022[\n" + + "\005model\030\006 \001(\0162B.google.cloud.geminidataanal" + + "ytics.v1beta.ConversationOptions.ModelB\003\340A\001H\000\210\001\001\"3\n" + + "\005Model\022\025\n" + + "\021MODEL_UNSPECIFIED\020\000\022\023\n" + + "\017LATEST_GA_MODEL\020\001B\010\n" + + "\006_model\"Y\n" + "\021DatasourceOptions\022D\n" + "\032big_query_max_billed_bytes\030\001" + " \001(\0132\033.google.protobuf.Int64ValueB\003\340A\001\"\326\002\n" + "\014ChartOptions\022V\n" - + "\005image\030\001 \001(\0132B.go" - + "ogle.cloud.geminidataanalytics.v1beta.ChartOptions.ImageOptionsB\003\340A\001\032\355\001\n" + + "\005image\030\001 \001(\0132B.goo" + + "gle.cloud.geminidataanalytics.v1beta.ChartOptions.ImageOptionsB\003\340A\001\032\355\001\n" + "\014ImageOptions\022^\n" - + "\010no_image\030\001 \001(\0132J.google.cloud.g" - + "eminidataanalytics.v1beta.ChartOptions.ImageOptions.NoImageH\000\022\\\n" - + "\003svg\030\002 \001(\0132M.goo" - + "gle.cloud.geminidataanalytics.v1beta.ChartOptions.ImageOptions.SvgOptionsH\000\032\t\n" + + "\010no_image\030\001 \001(\0132J.google.cloud.ge" + + "minidataanalytics.v1beta.ChartOptions.ImageOptions.NoImageH\000\022\\\n" + + "\003svg\030\002 \001(\0132M.goog" + + "le.cloud.geminidataanalytics.v1beta.ChartOptions.ImageOptions.SvgOptionsH\000\032\t\n" + "\007NoImage\032\014\n\n" + "SvgOptionsB\006\n" + "\004kind\"\207\001\n" + "\017AnalysisOptions\022T\n" - + "\006python\030\001 \001(\0132?.google.cloud." - + "geminidataanalytics.v1beta.AnalysisOptions.PythonB\003\340A\001\032\036\n" + + "\006python\030\001 \001(\0132?.google.cloud.g" + + "eminidataanalytics.v1beta.AnalysisOptions.PythonB\003\340A\001\032\036\n" + "\006Python\022\024\n" - + "\007enabled\030\001 \001(\010B\003\340A\001B\235\002\n" - + "+com.google.cloud.geminidataanalytics.v1betaB\014ContextProtoP\001Z]cloud.go" - + "ogle.com/go/geminidataanalytics/apiv1beta/geminidataanalyticspb;geminidataanalyt" - + "icspb\252\002\'Google.Cloud.GeminiDataAnalytics" - + ".V1Beta\312\002\'Google\\Cloud\\GeminiDataAnalyti" - + "cs\\V1beta\352\002*Google::Cloud::GeminiDataAnalytics::V1betab\006proto3" + + "\007enabled\030\001 \001(\010B\003\340A\001\"\250\001\n" + + "\010Citation\022M\n" + + "\007sources\030\001 \003(\01327.go" + + "ogle.cloud.geminidataanalytics.v1beta.CitationSourceB\003\340A\003\022M\n" + + "\007anchors\030\002 \003(\01327.goo" + + "gle.cloud.geminidataanalytics.v1beta.CitationAnchorB\003\340A\003\"\202\002\n" + + "\016CitationSource\022\022\n" + + "\003uri\030\003 \001(\tB\003\340A\003H\000\022S\n\r" + + "example_query\030\004 \001(\01325" + + ".google.cloud.geminidataanalytics.v1beta.ExampleQueryB\003\340A\003H\000\022S\n\r" + + "glossary_term\030\005 " + + "\001(\01325.google.cloud.geminidataanalytics.v1beta.GlossaryTermB\003\340A\003H\000\022\017\n" + + "\002id\030\001 \001(\tB\003\340A\003\022\022\n" + + "\005title\030\002 \001(\tB\003\340A\003B\r\n" + + "\013source_type\"\246\002\n" + + "\016CitationAnchor\022u\n" + + "\023text_message_anchor\030\001 \001(\0132Q.google.cloud.geminidataanalytics" + + ".v1beta.CitationAnchor.TextMessageCitationAnchorB\003\340A\003H\000\032\215\001\n" + + "\031TextMessageCitationAnchor\022\027\n\n" + + "part_index\030\001 \001(\005B\003\340A\003\022\037\n" + + "\022start_offset_bytes\030\002 \001(\005B\003\340A\003\022\035\n" + + "\020end_offset_bytes\030\003 \001(\005B\003\340A\003\022\027\n\n" + + "source_ids\030\004 \003(\tB\003\340A\003B\r\n" + + "\013anchor_typeB\235\002\n" + + "+com.google.cloud.geminidataanalytics.v1betaB\014ContextProtoP\001Z]" + + "cloud.google.com/go/geminidataanalytics/apiv1beta/geminidataanalyticspb;geminida" + + "taanalyticspb\252\002\'Google.Cloud.GeminiDataA" + + "nalytics.V1Beta\312\002\'Google\\Cloud\\GeminiDat" + + "aAnalytics\\V1beta\352\002*Google::Cloud::GeminiDataAnalytics::V1betab\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(), com.google.cloud.geminidataanalytics.v1beta.DatasourceProto.getDescriptor(), com.google.protobuf.WrappersProto.getDescriptor(), }); @@ -225,6 +330,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "LookerGoldenQueries", "GlossaryTerms", "SchemaRelationships", + "UserFunctions", }); internal_static_google_cloud_geminidataanalytics_v1beta_Context_SchemaRelationship_descriptor = internal_static_google_cloud_geminidataanalytics_v1beta_Context_descriptor.getNestedType(0); @@ -243,16 +349,64 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "TableFqn", "Paths", }); - internal_static_google_cloud_geminidataanalytics_v1beta_ExampleQuery_descriptor = + internal_static_google_cloud_geminidataanalytics_v1beta_UserFunctions_descriptor = getDescriptor().getMessageType(1); + internal_static_google_cloud_geminidataanalytics_v1beta_UserFunctions_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_geminidataanalytics_v1beta_UserFunctions_descriptor, + new java.lang.String[] { + "BqRoutines", + }); + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutine_descriptor = + getDescriptor().getMessageType(2); + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutine_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutine_descriptor, + new java.lang.String[] { + "RoutineReference", "Description", + }); + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutineReference_descriptor = + getDescriptor().getMessageType(3); + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutineReference_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryRoutineReference_descriptor, + new java.lang.String[] { + "ProjectId", "DatasetId", "RoutineId", + }); + internal_static_google_cloud_geminidataanalytics_v1beta_ExampleQuery_descriptor = + getDescriptor().getMessageType(4); internal_static_google_cloud_geminidataanalytics_v1beta_ExampleQuery_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_ExampleQuery_descriptor, new java.lang.String[] { - "SqlQuery", "NaturalLanguageQuestion", "Query", + "SqlQuery", "NaturalLanguageQuestion", "Parameters", "Query", + }); + internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameter_descriptor = + getDescriptor().getMessageType(5); + internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameter_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameter_descriptor, + new java.lang.String[] { + "Name", "Description", "DataType", + }); + internal_static_google_cloud_geminidataanalytics_v1beta_MatchedQuery_descriptor = + getDescriptor().getMessageType(6); + internal_static_google_cloud_geminidataanalytics_v1beta_MatchedQuery_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_geminidataanalytics_v1beta_MatchedQuery_descriptor, + new java.lang.String[] { + "ExampleQuery", "QueryParameterValues", + }); + internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameterValues_descriptor = + getDescriptor().getMessageType(7); + internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameterValues_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameterValues_descriptor, + new java.lang.String[] { + "Name", "Value", }); internal_static_google_cloud_geminidataanalytics_v1beta_LookerGoldenQuery_descriptor = - getDescriptor().getMessageType(2); + getDescriptor().getMessageType(8); internal_static_google_cloud_geminidataanalytics_v1beta_LookerGoldenQuery_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_LookerGoldenQuery_descriptor, @@ -260,12 +414,12 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "NaturalLanguageQuestions", "LookerQuery", }); internal_static_google_cloud_geminidataanalytics_v1beta_LookerQuery_descriptor = - getDescriptor().getMessageType(3); + getDescriptor().getMessageType(9); internal_static_google_cloud_geminidataanalytics_v1beta_LookerQuery_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_LookerQuery_descriptor, new java.lang.String[] { - "Model", "Explore", "Fields", "Filters", "Sorts", "Limit", + "Model", "Explore", "Fields", "Filters", "Sorts", "Limit", "QueryId", "ClientId", }); internal_static_google_cloud_geminidataanalytics_v1beta_LookerQuery_Filter_descriptor = internal_static_google_cloud_geminidataanalytics_v1beta_LookerQuery_descriptor @@ -277,7 +431,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Field", "Value", }); internal_static_google_cloud_geminidataanalytics_v1beta_GlossaryTerm_descriptor = - getDescriptor().getMessageType(4); + getDescriptor().getMessageType(10); internal_static_google_cloud_geminidataanalytics_v1beta_GlossaryTerm_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_GlossaryTerm_descriptor, @@ -285,15 +439,15 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "DisplayName", "Description", "Labels", }); internal_static_google_cloud_geminidataanalytics_v1beta_ConversationOptions_descriptor = - getDescriptor().getMessageType(5); + getDescriptor().getMessageType(11); internal_static_google_cloud_geminidataanalytics_v1beta_ConversationOptions_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_ConversationOptions_descriptor, new java.lang.String[] { - "Chart", "Analysis", "Datasource", + "Chart", "Analysis", "Datasource", "Model", }); internal_static_google_cloud_geminidataanalytics_v1beta_DatasourceOptions_descriptor = - getDescriptor().getMessageType(6); + getDescriptor().getMessageType(12); internal_static_google_cloud_geminidataanalytics_v1beta_DatasourceOptions_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_DatasourceOptions_descriptor, @@ -301,7 +455,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "BigQueryMaxBilledBytes", }); internal_static_google_cloud_geminidataanalytics_v1beta_ChartOptions_descriptor = - getDescriptor().getMessageType(7); + getDescriptor().getMessageType(13); internal_static_google_cloud_geminidataanalytics_v1beta_ChartOptions_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_ChartOptions_descriptor, @@ -332,7 +486,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { internal_static_google_cloud_geminidataanalytics_v1beta_ChartOptions_ImageOptions_SvgOptions_descriptor, new java.lang.String[] {}); internal_static_google_cloud_geminidataanalytics_v1beta_AnalysisOptions_descriptor = - getDescriptor().getMessageType(8); + getDescriptor().getMessageType(14); internal_static_google_cloud_geminidataanalytics_v1beta_AnalysisOptions_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_AnalysisOptions_descriptor, @@ -348,8 +502,42 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "Enabled", }); + internal_static_google_cloud_geminidataanalytics_v1beta_Citation_descriptor = + getDescriptor().getMessageType(15); + internal_static_google_cloud_geminidataanalytics_v1beta_Citation_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_geminidataanalytics_v1beta_Citation_descriptor, + new java.lang.String[] { + "Sources", "Anchors", + }); + internal_static_google_cloud_geminidataanalytics_v1beta_CitationSource_descriptor = + getDescriptor().getMessageType(16); + internal_static_google_cloud_geminidataanalytics_v1beta_CitationSource_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_geminidataanalytics_v1beta_CitationSource_descriptor, + new java.lang.String[] { + "Uri", "ExampleQuery", "GlossaryTerm", "Id", "Title", "SourceType", + }); + internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_descriptor = + getDescriptor().getMessageType(17); + internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_descriptor, + new java.lang.String[] { + "TextMessageAnchor", "AnchorType", + }); + internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_TextMessageCitationAnchor_descriptor = + internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_descriptor + .getNestedType(0); + internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_TextMessageCitationAnchor_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_geminidataanalytics_v1beta_CitationAnchor_TextMessageCitationAnchor_descriptor, + new java.lang.String[] { + "PartIndex", "StartOffsetBytes", "EndOffsetBytes", "SourceIds", + }); descriptor.resolveAllFeaturesImmutable(); com.google.api.FieldBehaviorProto.getDescriptor(); + com.google.api.ResourceProto.getDescriptor(); com.google.cloud.geminidataanalytics.v1beta.DatasourceProto.getDescriptor(); com.google.protobuf.WrappersProto.getDescriptor(); com.google.protobuf.ExtensionRegistry registry = diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Conversation.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Conversation.java index 07df6b8fd035..70a28ca68fe6 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Conversation.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Conversation.java @@ -54,6 +54,7 @@ private Conversation(com.google.protobuf.GeneratedMessage.Builder builder) { private Conversation() { name_ = ""; agents_ = com.google.protobuf.LazyStringArrayList.emptyList(); + kmsKey_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -469,6 +470,131 @@ public java.lang.String getLabelsOrThrow(java.lang.String key) { return map.get(key); } + public static final int KMS_KEY_FIELD_NUMBER = 10; + + @SuppressWarnings("serial") + private volatile java.lang.Object kmsKey_ = ""; + + /** + * + * + *
        +   * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +   * Conversation resources. Encryption will happen at Titan layer, we will pass
        +   * the KMS key to Titan.
        +   *
        +   * Format:
        +   * projects/{project_id}/locations/{location}/keyRings/{key_ring_name}/cryptoKeys/{key_name}.
        +   * 
        + * + * + * optional string kms_key = 10 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return Whether the kmsKey field is set. + */ + @java.lang.Override + public boolean hasKmsKey() { + return ((bitField0_ & 0x00000004) != 0); + } + + /** + * + * + *
        +   * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +   * Conversation resources. Encryption will happen at Titan layer, we will pass
        +   * the KMS key to Titan.
        +   *
        +   * Format:
        +   * projects/{project_id}/locations/{location}/keyRings/{key_ring_name}/cryptoKeys/{key_name}.
        +   * 
        + * + * + * optional string kms_key = 10 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The kmsKey. + */ + @java.lang.Override + public java.lang.String getKmsKey() { + java.lang.Object ref = kmsKey_; + 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(); + kmsKey_ = s; + return s; + } + } + + /** + * + * + *
        +   * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +   * Conversation resources. Encryption will happen at Titan layer, we will pass
        +   * the KMS key to Titan.
        +   *
        +   * Format:
        +   * projects/{project_id}/locations/{location}/keyRings/{key_ring_name}/cryptoKeys/{key_name}.
        +   * 
        + * + * + * optional string kms_key = 10 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for kmsKey. + */ + @java.lang.Override + public com.google.protobuf.ByteString getKmsKeyBytes() { + java.lang.Object ref = kmsKey_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int MEMORY_PAUSED_FIELD_NUMBER = 11; + private boolean memoryPaused_ = false; + + /** + * + * + *
        +   * Optional. Whether memory is paused for this conversation.
        +   * 
        + * + * optional bool memory_paused = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return Whether the memoryPaused field is set. + */ + @java.lang.Override + public boolean hasMemoryPaused() { + return ((bitField0_ & 0x00000008) != 0); + } + + /** + * + * + *
        +   * Optional. Whether memory is paused for this conversation.
        +   * 
        + * + * optional bool memory_paused = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The memoryPaused. + */ + @java.lang.Override + public boolean getMemoryPaused() { + return memoryPaused_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -497,6 +623,12 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io } com.google.protobuf.GeneratedMessage.serializeStringMapTo( output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 9); + if (((bitField0_ & 0x00000004) != 0)) { + com.google.protobuf.GeneratedMessage.writeString(output, 10, kmsKey_); + } + if (((bitField0_ & 0x00000008) != 0)) { + output.writeBool(11, memoryPaused_); + } getUnknownFields().writeTo(output); } @@ -533,6 +665,12 @@ public int getSerializedSize() { .build(); size += com.google.protobuf.CodedOutputStream.computeMessageSize(9, labels__); } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(10, kmsKey_); + } + if (((bitField0_ & 0x00000008) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(11, memoryPaused_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -560,6 +698,14 @@ public boolean equals(final java.lang.Object obj) { if (!getLastUsedTime().equals(other.getLastUsedTime())) return false; } if (!internalGetLabels().equals(other.internalGetLabels())) return false; + if (hasKmsKey() != other.hasKmsKey()) return false; + if (hasKmsKey()) { + if (!getKmsKey().equals(other.getKmsKey())) return false; + } + if (hasMemoryPaused() != other.hasMemoryPaused()) return false; + if (hasMemoryPaused()) { + if (getMemoryPaused() != other.getMemoryPaused()) return false; + } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -589,6 +735,14 @@ public int hashCode() { hash = (37 * hash) + LABELS_FIELD_NUMBER; hash = (53 * hash) + internalGetLabels().hashCode(); } + if (hasKmsKey()) { + hash = (37 * hash) + KMS_KEY_FIELD_NUMBER; + hash = (53 * hash) + getKmsKey().hashCode(); + } + if (hasMemoryPaused()) { + hash = (37 * hash) + MEMORY_PAUSED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getMemoryPaused()); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -775,6 +929,8 @@ public Builder clear() { lastUsedTimeBuilder_ = null; } internalGetMutableLabels().clear(); + kmsKey_ = ""; + memoryPaused_ = false; return this; } @@ -832,6 +988,14 @@ private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.Conversat result.labels_ = internalGetLabels(); result.labels_.makeImmutable(); } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.kmsKey_ = kmsKey_; + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.memoryPaused_ = memoryPaused_; + to_bitField0_ |= 0x00000008; + } result.bitField0_ |= to_bitField0_; } @@ -871,6 +1035,14 @@ public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.Conversatio } internalGetMutableLabels().mergeFrom(other.internalGetLabels()); bitField0_ |= 0x00000010; + if (other.hasKmsKey()) { + kmsKey_ = other.kmsKey_; + bitField0_ |= 0x00000020; + onChanged(); + } + if (other.hasMemoryPaused()) { + setMemoryPaused(other.getMemoryPaused()); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -936,6 +1108,18 @@ public Builder mergeFrom( bitField0_ |= 0x00000010; break; } // case 74 + case 82: + { + kmsKey_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000020; + break; + } // case 82 + case 88: + { + memoryPaused_ = input.readBool(); + bitField0_ |= 0x00000040; + break; + } // case 88 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -1951,6 +2135,246 @@ public Builder putAllLabels(java.util.Map va return this; } + private java.lang.Object kmsKey_ = ""; + + /** + * + * + *
        +     * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +     * Conversation resources. Encryption will happen at Titan layer, we will pass
        +     * the KMS key to Titan.
        +     *
        +     * Format:
        +     * projects/{project_id}/locations/{location}/keyRings/{key_ring_name}/cryptoKeys/{key_name}.
        +     * 
        + * + * + * optional string kms_key = 10 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return Whether the kmsKey field is set. + */ + public boolean hasKmsKey() { + return ((bitField0_ & 0x00000020) != 0); + } + + /** + * + * + *
        +     * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +     * Conversation resources. Encryption will happen at Titan layer, we will pass
        +     * the KMS key to Titan.
        +     *
        +     * Format:
        +     * projects/{project_id}/locations/{location}/keyRings/{key_ring_name}/cryptoKeys/{key_name}.
        +     * 
        + * + * + * optional string kms_key = 10 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The kmsKey. + */ + public java.lang.String getKmsKey() { + java.lang.Object ref = kmsKey_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + kmsKey_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +     * Conversation resources. Encryption will happen at Titan layer, we will pass
        +     * the KMS key to Titan.
        +     *
        +     * Format:
        +     * projects/{project_id}/locations/{location}/keyRings/{key_ring_name}/cryptoKeys/{key_name}.
        +     * 
        + * + * + * optional string kms_key = 10 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for kmsKey. + */ + public com.google.protobuf.ByteString getKmsKeyBytes() { + java.lang.Object ref = kmsKey_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +     * Conversation resources. Encryption will happen at Titan layer, we will pass
        +     * the KMS key to Titan.
        +     *
        +     * Format:
        +     * projects/{project_id}/locations/{location}/keyRings/{key_ring_name}/cryptoKeys/{key_name}.
        +     * 
        + * + * + * optional string kms_key = 10 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param value The kmsKey to set. + * @return This builder for chaining. + */ + public Builder setKmsKey(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + kmsKey_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +     * Conversation resources. Encryption will happen at Titan layer, we will pass
        +     * the KMS key to Titan.
        +     *
        +     * Format:
        +     * projects/{project_id}/locations/{location}/keyRings/{key_ring_name}/cryptoKeys/{key_name}.
        +     * 
        + * + * + * optional string kms_key = 10 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearKmsKey() { + kmsKey_ = getDefaultInstance().getKmsKey(); + bitField0_ = (bitField0_ & ~0x00000020); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +     * Conversation resources. Encryption will happen at Titan layer, we will pass
        +     * the KMS key to Titan.
        +     *
        +     * Format:
        +     * projects/{project_id}/locations/{location}/keyRings/{key_ring_name}/cryptoKeys/{key_name}.
        +     * 
        + * + * + * optional string kms_key = 10 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param value The bytes for kmsKey to set. + * @return This builder for chaining. + */ + public Builder setKmsKeyBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + kmsKey_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + private boolean memoryPaused_; + + /** + * + * + *
        +     * Optional. Whether memory is paused for this conversation.
        +     * 
        + * + * optional bool memory_paused = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return Whether the memoryPaused field is set. + */ + @java.lang.Override + public boolean hasMemoryPaused() { + return ((bitField0_ & 0x00000040) != 0); + } + + /** + * + * + *
        +     * Optional. Whether memory is paused for this conversation.
        +     * 
        + * + * optional bool memory_paused = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The memoryPaused. + */ + @java.lang.Override + public boolean getMemoryPaused() { + return memoryPaused_; + } + + /** + * + * + *
        +     * Optional. Whether memory is paused for this conversation.
        +     * 
        + * + * optional bool memory_paused = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The memoryPaused to set. + * @return This builder for chaining. + */ + public Builder setMemoryPaused(boolean value) { + + memoryPaused_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. Whether memory is paused for this conversation.
        +     * 
        + * + * optional bool memory_paused = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearMemoryPaused() { + bitField0_ = (bitField0_ & ~0x00000040); + memoryPaused_ = false; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.Conversation) } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationOptions.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationOptions.java index 1918ab9fbbde..d69ae9db00b1 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationOptions.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationOptions.java @@ -51,7 +51,9 @@ private ConversationOptions(com.google.protobuf.GeneratedMessage.Builder buil super(builder); } - private ConversationOptions() {} + private ConversationOptions() { + model_ = 0; + } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.cloud.geminidataanalytics.v1beta.ContextProto @@ -68,6 +70,158 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { com.google.cloud.geminidataanalytics.v1beta.ConversationOptions.Builder.class); } + /** + * + * + *
        +   * Allowed models for the agent/conversation.
        +   * 
        + * + * Protobuf enum {@code google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model} + */ + public enum Model implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
        +     * No model specified. The model may be set on the chat request, or the
        +     * default model will be used.
        +     * 
        + * + * MODEL_UNSPECIFIED = 0; + */ + MODEL_UNSPECIFIED(0), + /** + * + * + *
        +     * Use the most up-to-date non-preview model. This may constrain certain
        +     * request level settings.
        +     * 
        + * + * LATEST_GA_MODEL = 1; + */ + LATEST_GA_MODEL(1), + UNRECOGNIZED(-1), + ; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "Model"); + } + + /** + * + * + *
        +     * No model specified. The model may be set on the chat request, or the
        +     * default model will be used.
        +     * 
        + * + * MODEL_UNSPECIFIED = 0; + */ + public static final int MODEL_UNSPECIFIED_VALUE = 0; + + /** + * + * + *
        +     * Use the most up-to-date non-preview model. This may constrain certain
        +     * request level settings.
        +     * 
        + * + * LATEST_GA_MODEL = 1; + */ + public static final int LATEST_GA_MODEL_VALUE = 1; + + 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 Model 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 Model forNumber(int value) { + switch (value) { + case 0: + return MODEL_UNSPECIFIED; + case 1: + return LATEST_GA_MODEL; + default: + return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap internalGetValueMap() { + return internalValueMap; + } + + private static final com.google.protobuf.Internal.EnumLiteMap internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public Model findValueByNumber(int number) { + return Model.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + + public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { + return getDescriptor(); + } + + public static com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ConversationOptions.getDescriptor() + .getEnumTypes() + .get(0); + } + + private static final Model[] VALUES = values(); + + public static Model valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException("EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private Model(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model) + } + private int bitField0_; public static final int CHART_FIELD_NUMBER = 1; private com.google.cloud.geminidataanalytics.v1beta.ChartOptions chart_; @@ -248,6 +402,67 @@ public com.google.cloud.geminidataanalytics.v1beta.DatasourceOptions getDatasour : datasource_; } + public static final int MODEL_FIELD_NUMBER = 6; + private int model_ = 0; + + /** + * + * + *
        +   * Optional. The model to use for the agent loop.
        +   * 
        + * + * + * optional .google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model model = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the model field is set. + */ + @java.lang.Override + public boolean hasModel() { + return ((bitField0_ & 0x00000008) != 0); + } + + /** + * + * + *
        +   * Optional. The model to use for the agent loop.
        +   * 
        + * + * + * optional .google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model model = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for model. + */ + @java.lang.Override + public int getModelValue() { + return model_; + } + + /** + * + * + *
        +   * Optional. The model to use for the agent loop.
        +   * 
        + * + * + * optional .google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model model = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The model. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model getModel() { + com.google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model result = + com.google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model.forNumber(model_); + return result == null + ? com.google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model.UNRECOGNIZED + : result; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -271,6 +486,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (((bitField0_ & 0x00000004) != 0)) { output.writeMessage(3, getDatasource()); } + if (((bitField0_ & 0x00000008) != 0)) { + output.writeEnum(6, model_); + } getUnknownFields().writeTo(output); } @@ -289,6 +507,9 @@ public int getSerializedSize() { if (((bitField0_ & 0x00000004) != 0)) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, getDatasource()); } + if (((bitField0_ & 0x00000008) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(6, model_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -317,6 +538,10 @@ public boolean equals(final java.lang.Object obj) { if (hasDatasource()) { if (!getDatasource().equals(other.getDatasource())) return false; } + if (hasModel() != other.hasModel()) return false; + if (hasModel()) { + if (model_ != other.model_) return false; + } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -340,6 +565,10 @@ public int hashCode() { hash = (37 * hash) + DATASOURCE_FIELD_NUMBER; hash = (53 * hash) + getDatasource().hashCode(); } + if (hasModel()) { + hash = (37 * hash) + MODEL_FIELD_NUMBER; + hash = (53 * hash) + model_; + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -507,6 +736,7 @@ public Builder clear() { datasourceBuilder_.dispose(); datasourceBuilder_ = null; } + model_ = 0; return this; } @@ -558,6 +788,10 @@ private void buildPartial0( result.datasource_ = datasourceBuilder_ == null ? datasource_ : datasourceBuilder_.build(); to_bitField0_ |= 0x00000004; } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.model_ = model_; + to_bitField0_ |= 0x00000008; + } result.bitField0_ |= to_bitField0_; } @@ -585,6 +819,9 @@ public Builder mergeFrom( if (other.hasDatasource()) { mergeDatasource(other.getDatasource()); } + if (other.hasModel()) { + setModelValue(other.getModelValue()); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -631,6 +868,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000004; break; } // case 26 + case 48: + { + model_ = input.readEnum(); + bitField0_ |= 0x00000008; + break; + } // case 48 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -1301,6 +1544,132 @@ public Builder clearDatasource() { return datasourceBuilder_; } + private int model_ = 0; + + /** + * + * + *
        +     * Optional. The model to use for the agent loop.
        +     * 
        + * + * + * optional .google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model model = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the model field is set. + */ + @java.lang.Override + public boolean hasModel() { + return ((bitField0_ & 0x00000008) != 0); + } + + /** + * + * + *
        +     * Optional. The model to use for the agent loop.
        +     * 
        + * + * + * optional .google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model model = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for model. + */ + @java.lang.Override + public int getModelValue() { + return model_; + } + + /** + * + * + *
        +     * Optional. The model to use for the agent loop.
        +     * 
        + * + * + * optional .google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model model = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The enum numeric value on the wire for model to set. + * @return This builder for chaining. + */ + public Builder setModelValue(int value) { + model_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The model to use for the agent loop.
        +     * 
        + * + * + * optional .google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model model = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The model. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model getModel() { + com.google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model result = + com.google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model.forNumber(model_); + return result == null + ? com.google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model.UNRECOGNIZED + : result; + } + + /** + * + * + *
        +     * Optional. The model to use for the agent loop.
        +     * 
        + * + * + * optional .google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model model = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The model to set. + * @return This builder for chaining. + */ + public Builder setModel( + com.google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000008; + model_ = value.getNumber(); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The model to use for the agent loop.
        +     * 
        + * + * + * optional .google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model model = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearModel() { + bitField0_ = (bitField0_ & ~0x00000008); + model_ = 0; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.ConversationOptions) } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationOptionsOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationOptionsOrBuilder.java index 3c333dfd7101..7d1710e1411c 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationOptionsOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationOptionsOrBuilder.java @@ -154,4 +154,49 @@ public interface ConversationOptionsOrBuilder *
        */ com.google.cloud.geminidataanalytics.v1beta.DatasourceOptionsOrBuilder getDatasourceOrBuilder(); + + /** + * + * + *
        +   * Optional. The model to use for the agent loop.
        +   * 
        + * + * + * optional .google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model model = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the model field is set. + */ + boolean hasModel(); + + /** + * + * + *
        +   * Optional. The model to use for the agent loop.
        +   * 
        + * + * + * optional .google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model model = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for model. + */ + int getModelValue(); + + /** + * + * + *
        +   * Optional. The model to use for the agent loop.
        +   * 
        + * + * + * optional .google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model model = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The model. + */ + com.google.cloud.geminidataanalytics.v1beta.ConversationOptions.Model getModel(); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationOrBuilder.java index 880603be731a..a32ca1e5b33c 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationOrBuilder.java @@ -299,4 +299,90 @@ java.lang.String getLabelsOrDefault( * map<string, string> labels = 9 [(.google.api.field_behavior) = OPTIONAL]; */ java.lang.String getLabelsOrThrow(java.lang.String key); + + /** + * + * + *
        +   * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +   * Conversation resources. Encryption will happen at Titan layer, we will pass
        +   * the KMS key to Titan.
        +   *
        +   * Format:
        +   * projects/{project_id}/locations/{location}/keyRings/{key_ring_name}/cryptoKeys/{key_name}.
        +   * 
        + * + * + * optional string kms_key = 10 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return Whether the kmsKey field is set. + */ + boolean hasKmsKey(); + + /** + * + * + *
        +   * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +   * Conversation resources. Encryption will happen at Titan layer, we will pass
        +   * the KMS key to Titan.
        +   *
        +   * Format:
        +   * projects/{project_id}/locations/{location}/keyRings/{key_ring_name}/cryptoKeys/{key_name}.
        +   * 
        + * + * + * optional string kms_key = 10 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The kmsKey. + */ + java.lang.String getKmsKey(); + + /** + * + * + *
        +   * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +   * Conversation resources. Encryption will happen at Titan layer, we will pass
        +   * the KMS key to Titan.
        +   *
        +   * Format:
        +   * projects/{project_id}/locations/{location}/keyRings/{key_ring_name}/cryptoKeys/{key_name}.
        +   * 
        + * + * + * optional string kms_key = 10 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for kmsKey. + */ + com.google.protobuf.ByteString getKmsKeyBytes(); + + /** + * + * + *
        +   * Optional. Whether memory is paused for this conversation.
        +   * 
        + * + * optional bool memory_paused = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return Whether the memoryPaused field is set. + */ + boolean hasMemoryPaused(); + + /** + * + * + *
        +   * Optional. Whether memory is paused for this conversation.
        +   * 
        + * + * optional bool memory_paused = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The memoryPaused. + */ + boolean getMemoryPaused(); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationProto.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationProto.java index a4e17a0ebdbc..b3a49b5a2fa2 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationProto.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ConversationProto.java @@ -81,7 +81,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + ":google/cloud/geminidataanalytics/v1beta/conversation.proto\022\'google.cloud.gemin" + "idataanalytics.v1beta\032\037google/api/field_" + "behavior.proto\032\033google/api/field_info.pr" - + "oto\032\031google/api/resource.proto\032\037google/protobuf/timestamp.proto\"\312\003\n" + + "oto\032\031google/api/resource.proto\032\037google/protobuf/timestamp.proto\"\312\004\n" + "\014Conversation\022\024\n" + "\004name\030\001 \001(\tB\006\340A\001\340A\010\022\023\n" + "\006agents\030\002 \003(\tB\003\340A\002\0224\n" @@ -89,26 +89,32 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\016last_used_time\030\004" + " \001(\0132\032.google.protobuf.TimestampB\003\340A\003\022V\n" + "\006labels\030\t \003(\0132A.google.cloud.geminidataanal" - + "ytics.v1beta.Conversation.LabelsEntryB\003\340A\001\032-\n" + + "ytics.v1beta.Conversation.LabelsEntryB\003\340A\001\022?\n" + + "\007kms_key\030\n" + + " \001(\tB)\340A\001\372A#\n" + + "!cloudkms.googleapis.com/CryptoKeyH\000\210\001\001\022\037\n\r" + + "memory_paused\030\013 \001(\010B\003\340A\001H\001\210\001\001\032-\n" + "\013LabelsEntry\022\013\n" + "\003key\030\001 \001(\t\022\r\n" + "\005value\030\002 \001(\t:\0028\001:\230\001\352A\224\001\n" - + "/geminidataanalytics.googleapis.com/Conversation\022Dprojects/{pro" - + "ject}/locations/{location}/conversations/{conversation}*\r" - + "conversations2\014conversation\"\365\001\n" + + "/geminidataanalytics.googleapis.com/Conversat" + + "ion\022Dprojects/{project}/locations/{location}/conversations/{conversation}*\r" + + "conversations2\014conversationB\n\n" + + "\010_kms_keyB\020\n" + + "\016_memory_paused\"\365\001\n" + "\031CreateConversationRequest\022G\n" + "\006parent\030\001 \001(" + "\tB7\340A\002\372A1\022/geminidataanalytics.googleapis.com/Conversation\022\034\n" + "\017conversation_id\030\002 \001(\tB\003\340A\001\022P\n" - + "\014conversation\030\003 \001(\0132" - + "5.google.cloud.geminidataanalytics.v1beta.ConversationB\003\340A\002\022\037\n\n" + + "\014conversation\030\003" + + " \001(\01325.google.cloud.geminidataanalytics.v1beta.ConversationB\003\340A\002\022\037\n\n" + "request_id\030\004 \001(\tB\013\340A\001\342\214\317\327\010\002\010\001\"_\n" + "\026GetConversationRequest\022E\n" + "\004name\030\001 \001(\tB7\340A\002\372A1\n" + "/geminidataanalytics.googleapis.com/Conversation\"\251\001\n" + "\030ListConversationsRequest\022G\n" - + "\006parent\030\001 \001(\tB7\340A\002\372" - + "A1\022/geminidataanalytics.googleapis.com/Conversation\022\026\n" + + "\006parent\030\001 \001(" + + "\tB7\340A\002\372A1\022/geminidataanalytics.googleapis.com/Conversation\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\022\023\n" + "\006filter\030\004 \001(\tB\003\340A\001\"\202\001\n" @@ -118,13 +124,15 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\017next_page_token\030\002 \001(\t\"b\n" + "\031DeleteConversationRequest\022E\n" + "\004name\030\001 \001(\tB7\340A\002\372A1\n" - + "/geminidataanalytics.googleapis.com/ConversationB\242\002\n" - + "+com.google.cloud.geminidataanalytics.v1be" - + "taB\021ConversationProtoP\001Z]cloud.google.com/go/geminidataanalytics/apiv1beta/gemin" - + "idataanalyticspb;geminidataanalyticspb\252\002" - + "\'Google.Cloud.GeminiDataAnalytics.V1Beta" - + "\312\002\'Google\\Cloud\\GeminiDataAnalytics\\V1be" - + "ta\352\002*Google::Cloud::GeminiDataAnalytics::V1betab\006proto3" + + "/geminidataanalytics.googleapis.com/ConversationB\265\003\n" + + "+com.google.cloud.geminidataanalytics.v1betaB\021ConversationProtoP\001Z]cloud.g" + + "oogle.com/go/geminidataanalytics/apiv1beta/geminidataanalyticspb;geminidataanaly" + + "ticspb\252\002\'Google.Cloud.GeminiDataAnalytic" + + "s.V1Beta\312\002\'Google\\Cloud\\GeminiDataAnalyt" + + "ics\\V1beta\352\002*Google::Cloud::GeminiDataAnalytics::V1beta\352A\217\001\n" + + "!cloudkms.googleapis.com/CryptoKey\022Sprojects/{project}/locat" + + "ions/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}*\n" + + "cryptoKeys2\tcryptoKeyb\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -141,7 +149,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_Conversation_descriptor, new java.lang.String[] { - "Name", "Agents", "CreateTime", "LastUsedTime", "Labels", + "Name", "Agents", "CreateTime", "LastUsedTime", "Labels", "KmsKey", "MemoryPaused", }); internal_static_google_cloud_geminidataanalytics_v1beta_Conversation_LabelsEntry_descriptor = internal_static_google_cloud_geminidataanalytics_v1beta_Conversation_descriptor @@ -202,6 +210,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { registry.add(com.google.api.FieldBehaviorProto.fieldBehavior); registry.add(com.google.api.FieldInfoProto.fieldInfo); registry.add(com.google.api.ResourceProto.resource); + registry.add(com.google.api.ResourceProto.resourceDefinition); registry.add(com.google.api.ResourceProto.resourceReference); com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor( descriptor, registry); diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgent.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgent.java index 2000e1f99e6a..d32dc40a7ab2 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgent.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgent.java @@ -55,6 +55,7 @@ private DataAgent() { name_ = ""; displayName_ = ""; description_ = ""; + kmsKey_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -724,6 +725,90 @@ public com.google.protobuf.TimestampOrBuilder getPurgeTimeOrBuilder() { return purgeTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : purgeTime_; } + public static final int KMS_KEY_FIELD_NUMBER = 14; + + @SuppressWarnings("serial") + private volatile java.lang.Object kmsKey_ = ""; + + /** + * + * + *
        +   * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +   * DataAgent resources. Cloud KMS CryptoKeys must reside in the same location
        +   * as the DataAgent. The expected format is
        +   * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
        +   * 
        + * + * + * optional string kms_key = 14 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return Whether the kmsKey field is set. + */ + @java.lang.Override + public boolean hasKmsKey() { + return ((bitField0_ & 0x00000010) != 0); + } + + /** + * + * + *
        +   * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +   * DataAgent resources. Cloud KMS CryptoKeys must reside in the same location
        +   * as the DataAgent. The expected format is
        +   * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
        +   * 
        + * + * + * optional string kms_key = 14 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The kmsKey. + */ + @java.lang.Override + public java.lang.String getKmsKey() { + java.lang.Object ref = kmsKey_; + 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(); + kmsKey_ = s; + return s; + } + } + + /** + * + * + *
        +   * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +   * DataAgent resources. Cloud KMS CryptoKeys must reside in the same location
        +   * as the DataAgent. The expected format is
        +   * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
        +   * 
        + * + * + * optional string kms_key = 14 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for kmsKey. + */ + @java.lang.Override + public com.google.protobuf.ByteString getKmsKeyBytes() { + java.lang.Object ref = kmsKey_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -761,6 +846,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (((bitField0_ & 0x00000008) != 0)) { output.writeMessage(13, getPurgeTime()); } + if (((bitField0_ & 0x00000010) != 0)) { + com.google.protobuf.GeneratedMessage.writeString(output, 14, kmsKey_); + } if (typeCase_ == 101) { output.writeMessage( 101, (com.google.cloud.geminidataanalytics.v1beta.DataAnalyticsAgent) type_); @@ -805,6 +893,9 @@ public int getSerializedSize() { if (((bitField0_ & 0x00000008) != 0)) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(13, getPurgeTime()); } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(14, kmsKey_); + } if (typeCase_ == 101) { size += com.google.protobuf.CodedOutputStream.computeMessageSize( @@ -846,6 +937,10 @@ public boolean equals(final java.lang.Object obj) { if (hasPurgeTime()) { if (!getPurgeTime().equals(other.getPurgeTime())) return false; } + if (hasKmsKey() != other.hasKmsKey()) return false; + if (hasKmsKey()) { + if (!getKmsKey().equals(other.getKmsKey())) return false; + } if (!getTypeCase().equals(other.getTypeCase())) return false; switch (typeCase_) { case 101: @@ -891,6 +986,10 @@ public int hashCode() { hash = (37 * hash) + PURGE_TIME_FIELD_NUMBER; hash = (53 * hash) + getPurgeTime().hashCode(); } + if (hasKmsKey()) { + hash = (37 * hash) + KMS_KEY_FIELD_NUMBER; + hash = (53 * hash) + getKmsKey().hashCode(); + } switch (typeCase_) { case 101: hash = (37 * hash) + DATA_ANALYTICS_AGENT_FIELD_NUMBER; @@ -1101,6 +1200,7 @@ public Builder clear() { purgeTimeBuilder_.dispose(); purgeTimeBuilder_ = null; } + kmsKey_ = ""; typeCase_ = 0; type_ = null; return this; @@ -1170,6 +1270,10 @@ private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.DataAgent result.purgeTime_ = purgeTimeBuilder_ == null ? purgeTime_ : purgeTimeBuilder_.build(); to_bitField0_ |= 0x00000008; } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.kmsKey_ = kmsKey_; + to_bitField0_ |= 0x00000010; + } result.bitField0_ |= to_bitField0_; } @@ -1223,6 +1327,11 @@ public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.DataAgent o if (other.hasPurgeTime()) { mergePurgeTime(other.getPurgeTime()); } + if (other.hasKmsKey()) { + kmsKey_ = other.kmsKey_; + bitField0_ |= 0x00000200; + onChanged(); + } switch (other.getTypeCase()) { case DATA_ANALYTICS_AGENT: { @@ -1318,6 +1427,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000100; break; } // case 106 + case 114: + { + kmsKey_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000200; + break; + } // case 114 case 810: { input.readMessage( @@ -3079,6 +3194,162 @@ public com.google.protobuf.TimestampOrBuilder getPurgeTimeOrBuilder() { return purgeTimeBuilder_; } + private java.lang.Object kmsKey_ = ""; + + /** + * + * + *
        +     * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +     * DataAgent resources. Cloud KMS CryptoKeys must reside in the same location
        +     * as the DataAgent. The expected format is
        +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
        +     * 
        + * + * + * optional string kms_key = 14 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return Whether the kmsKey field is set. + */ + public boolean hasKmsKey() { + return ((bitField0_ & 0x00000200) != 0); + } + + /** + * + * + *
        +     * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +     * DataAgent resources. Cloud KMS CryptoKeys must reside in the same location
        +     * as the DataAgent. The expected format is
        +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
        +     * 
        + * + * + * optional string kms_key = 14 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The kmsKey. + */ + public java.lang.String getKmsKey() { + java.lang.Object ref = kmsKey_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + kmsKey_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +     * DataAgent resources. Cloud KMS CryptoKeys must reside in the same location
        +     * as the DataAgent. The expected format is
        +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
        +     * 
        + * + * + * optional string kms_key = 14 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for kmsKey. + */ + public com.google.protobuf.ByteString getKmsKeyBytes() { + java.lang.Object ref = kmsKey_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +     * DataAgent resources. Cloud KMS CryptoKeys must reside in the same location
        +     * as the DataAgent. The expected format is
        +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
        +     * 
        + * + * + * optional string kms_key = 14 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param value The kmsKey to set. + * @return This builder for chaining. + */ + public Builder setKmsKey(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + kmsKey_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +     * DataAgent resources. Cloud KMS CryptoKeys must reside in the same location
        +     * as the DataAgent. The expected format is
        +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
        +     * 
        + * + * + * optional string kms_key = 14 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearKmsKey() { + kmsKey_ = getDefaultInstance().getKmsKey(); + bitField0_ = (bitField0_ & ~0x00000200); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +     * DataAgent resources. Cloud KMS CryptoKeys must reside in the same location
        +     * as the DataAgent. The expected format is
        +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
        +     * 
        + * + * + * optional string kms_key = 14 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param value The bytes for kmsKey to set. + * @return This builder for chaining. + */ + public Builder setKmsKeyBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + kmsKey_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.DataAgent) } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentContext.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentContext.java index db286b163c25..23daf9f35cac 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentContext.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentContext.java @@ -313,7 +313,8 @@ public com.google.protobuf.ByteString getDataAgentBytes() { * * *
        -   * Optional. The credentials to use when calling the Looker data source.
        +   * Optional. Deprecated: Use credentials in ChatRequest.
        +   * The credentials to use when calling the Looker data source.
            *
            * Currently supports both OAuth token and API key-based credentials, as
            * described in
        @@ -322,12 +323,15 @@ public com.google.protobuf.ByteString getDataAgentBytes() {
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.DataAgentContext.credentials is deprecated. + * See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=436 * @return Whether the credentials field is set. */ @java.lang.Override + @java.lang.Deprecated public boolean hasCredentials() { return ((bitField0_ & 0x00000001) != 0); } @@ -336,7 +340,8 @@ public boolean hasCredentials() { * * *
        -   * Optional. The credentials to use when calling the Looker data source.
        +   * Optional. Deprecated: Use credentials in ChatRequest.
        +   * The credentials to use when calling the Looker data source.
            *
            * Currently supports both OAuth token and API key-based credentials, as
            * described in
        @@ -345,12 +350,15 @@ public boolean hasCredentials() {
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.DataAgentContext.credentials is deprecated. + * See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=436 * @return The credentials. */ @java.lang.Override + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials() { return credentials_ == null ? com.google.cloud.geminidataanalytics.v1beta.Credentials.getDefaultInstance() @@ -361,7 +369,8 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials() * * *
        -   * Optional. The credentials to use when calling the Looker data source.
        +   * Optional. Deprecated: Use credentials in ChatRequest.
        +   * The credentials to use when calling the Looker data source.
            *
            * Currently supports both OAuth token and API key-based credentials, as
            * described in
        @@ -370,10 +379,11 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials()
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.CredentialsOrBuilder getCredentialsOrBuilder() { return credentials_ == null @@ -945,7 +955,8 @@ public Builder setDataAgentBytes(com.google.protobuf.ByteString value) { * * *
        -     * Optional. The credentials to use when calling the Looker data source.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker data source.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -954,11 +965,14 @@ public Builder setDataAgentBytes(com.google.protobuf.ByteString value) {
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.DataAgentContext.credentials is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=436 * @return Whether the credentials field is set. */ + @java.lang.Deprecated public boolean hasCredentials() { return ((bitField0_ & 0x00000002) != 0); } @@ -967,7 +981,8 @@ public boolean hasCredentials() { * * *
        -     * Optional. The credentials to use when calling the Looker data source.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker data source.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -976,11 +991,14 @@ public boolean hasCredentials() {
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.DataAgentContext.credentials is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=436 * @return The credentials. */ + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials() { if (credentialsBuilder_ == null) { return credentials_ == null @@ -995,7 +1013,8 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials() * * *
        -     * Optional. The credentials to use when calling the Looker data source.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker data source.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1004,9 +1023,10 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials()
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public Builder setCredentials(com.google.cloud.geminidataanalytics.v1beta.Credentials value) { if (credentialsBuilder_ == null) { if (value == null) { @@ -1025,7 +1045,8 @@ public Builder setCredentials(com.google.cloud.geminidataanalytics.v1beta.Creden * * *
        -     * Optional. The credentials to use when calling the Looker data source.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker data source.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1034,9 +1055,10 @@ public Builder setCredentials(com.google.cloud.geminidataanalytics.v1beta.Creden
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public Builder setCredentials( com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder builderForValue) { if (credentialsBuilder_ == null) { @@ -1053,7 +1075,8 @@ public Builder setCredentials( * * *
        -     * Optional. The credentials to use when calling the Looker data source.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker data source.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1062,9 +1085,10 @@ public Builder setCredentials(
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public Builder mergeCredentials(com.google.cloud.geminidataanalytics.v1beta.Credentials value) { if (credentialsBuilder_ == null) { if (((bitField0_ & 0x00000002) != 0) @@ -1089,7 +1113,8 @@ public Builder mergeCredentials(com.google.cloud.geminidataanalytics.v1beta.Cred * * *
        -     * Optional. The credentials to use when calling the Looker data source.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker data source.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1098,9 +1123,10 @@ public Builder mergeCredentials(com.google.cloud.geminidataanalytics.v1beta.Cred
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public Builder clearCredentials() { bitField0_ = (bitField0_ & ~0x00000002); credentials_ = null; @@ -1116,7 +1142,8 @@ public Builder clearCredentials() { * * *
        -     * Optional. The credentials to use when calling the Looker data source.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker data source.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1125,9 +1152,10 @@ public Builder clearCredentials() {
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder getCredentialsBuilder() { bitField0_ |= 0x00000002; onChanged(); @@ -1138,7 +1166,8 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder getCreden * * *
        -     * Optional. The credentials to use when calling the Looker data source.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker data source.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1147,9 +1176,10 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder getCreden
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.CredentialsOrBuilder getCredentialsOrBuilder() { if (credentialsBuilder_ != null) { @@ -1165,7 +1195,8 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder getCreden * * *
        -     * Optional. The credentials to use when calling the Looker data source.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker data source.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1174,7 +1205,7 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder getCreden
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ private com.google.protobuf.SingleFieldBuilder< diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentContextOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentContextOrBuilder.java index 15347c1d3d9d..db2670f34dbe 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentContextOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentContextOrBuilder.java @@ -60,7 +60,8 @@ public interface DataAgentContextOrBuilder * * *
        -   * Optional. The credentials to use when calling the Looker data source.
        +   * Optional. Deprecated: Use credentials in ChatRequest.
        +   * The credentials to use when calling the Looker data source.
            *
            * Currently supports both OAuth token and API key-based credentials, as
            * described in
        @@ -69,18 +70,22 @@ public interface DataAgentContextOrBuilder
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.DataAgentContext.credentials is deprecated. + * See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=436 * @return Whether the credentials field is set. */ + @java.lang.Deprecated boolean hasCredentials(); /** * * *
        -   * Optional. The credentials to use when calling the Looker data source.
        +   * Optional. Deprecated: Use credentials in ChatRequest.
        +   * The credentials to use when calling the Looker data source.
            *
            * Currently supports both OAuth token and API key-based credentials, as
            * described in
        @@ -89,18 +94,22 @@ public interface DataAgentContextOrBuilder
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.DataAgentContext.credentials is deprecated. + * See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=436 * @return The credentials. */ + @java.lang.Deprecated com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials(); /** * * *
        -   * Optional. The credentials to use when calling the Looker data source.
        +   * Optional. Deprecated: Use credentials in ChatRequest.
        +   * The credentials to use when calling the Looker data source.
            *
            * Currently supports both OAuth token and API key-based credentials, as
            * described in
        @@ -109,9 +118,10 @@ public interface DataAgentContextOrBuilder
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated com.google.cloud.geminidataanalytics.v1beta.CredentialsOrBuilder getCredentialsOrBuilder(); /** diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentOrBuilder.java index 58e7fbec8ec3..e89255027360 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentOrBuilder.java @@ -433,5 +433,59 @@ java.lang.String getLabelsOrDefault( */ com.google.protobuf.TimestampOrBuilder getPurgeTimeOrBuilder(); + /** + * + * + *
        +   * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +   * DataAgent resources. Cloud KMS CryptoKeys must reside in the same location
        +   * as the DataAgent. The expected format is
        +   * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
        +   * 
        + * + * + * optional string kms_key = 14 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return Whether the kmsKey field is set. + */ + boolean hasKmsKey(); + + /** + * + * + *
        +   * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +   * DataAgent resources. Cloud KMS CryptoKeys must reside in the same location
        +   * as the DataAgent. The expected format is
        +   * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
        +   * 
        + * + * + * optional string kms_key = 14 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The kmsKey. + */ + java.lang.String getKmsKey(); + + /** + * + * + *
        +   * Optional. Customer managed encryption key (CMEK) to use for encrypting the
        +   * DataAgent resources. Cloud KMS CryptoKeys must reside in the same location
        +   * as the DataAgent. The expected format is
        +   * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
        +   * 
        + * + * + * optional string kms_key = 14 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for kmsKey. + */ + com.google.protobuf.ByteString getKmsKeyBytes(); + com.google.cloud.geminidataanalytics.v1beta.DataAgent.TypeCase getTypeCase(); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentProto.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentProto.java index 657a8b7a4312..6e7bd5e92bcf 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentProto.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataAgentProto.java @@ -62,7 +62,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "ataanalytics.v1beta\032\037google/api/field_be" + "havior.proto\032\031google/api/resource.proto\032" + "Bgoogle/cloud/geminidataanalytics/v1beta" - + "/data_analytics_agent.proto\032\037google/protobuf/timestamp.proto\"\243\005\n" + + "/data_analytics_agent.proto\032\037google/protobuf/timestamp.proto\"\360\005\n" + "\tDataAgent\022[\n" + "\024data_analytics_agent\030e \001(\0132;.google.cloud." + "geminidataanalytics.v1beta.DataAnalyticsAgentH\000\022\024\n" @@ -76,19 +76,22 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\013delete_time\030\014" + " \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0223\n\n" + "purge_time\030\r" - + " \001(\0132\032.google.protobuf.TimestampB\003\340A\003\032-\n" + + " \001(\0132\032.google.protobuf.TimestampB\003\340A\003\022?\n" + + "\007kms_key\030\016 \001(\tB)\340A\001\372A#\n" + + "!cloudkms.googleapis.com/CryptoKeyH\001\210\001\001\032-\n" + "\013LabelsEntry\022\013\n" + "\003key\030\001 \001(\t\022\r\n" + "\005value\030\002 \001(\t:\0028\001:\212\001\352A\206\001\n" - + ",geminidataanalytics.googleapis.com/DataAge" - + "nt\022?projects/{project}/locations/{location}/dataAgents/{data_agent}*\n" + + ",geminidataanalytics.googleapis.com/DataAgent\022?projects/{p" + + "roject}/locations/{location}/dataAgents/{data_agent}*\n" + "dataAgents2\tdataAgentB\006\n" - + "\004typeB\237\002\n" - + "+com.google.cloud.geminidataanalytics.v1betaB\016DataAgentPro" - + "toP\001Z]cloud.google.com/go/geminidataanalytics/apiv1beta/geminidataanalyticspb;ge" - + "minidataanalyticspb\252\002\'Google.Cloud.Gemin" - + "iDataAnalytics.V1Beta\312\002\'Google\\Cloud\\Gem" - + "iniDataAnalytics\\V1beta\352\002*Google::Cloud::GeminiDataAnalytics::V1betab\006proto3" + + "\004typeB\n\n" + + "\010_kms_keyB\237\002\n" + + "+com.google.cloud.geminidataanalytics.v1betaB\016DataAgentProtoP" + + "\001Z]cloud.google.com/go/geminidataanalytics/apiv1beta/geminidataanalyticspb;gemin" + + "idataanalyticspb\252\002\'Google.Cloud.GeminiDa" + + "taAnalytics.V1Beta\312\002\'Google\\Cloud\\Gemini" + + "DataAnalytics\\V1beta\352\002*Google::Cloud::GeminiDataAnalytics::V1betab\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -114,6 +117,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "UpdateTime", "DeleteTime", "PurgeTime", + "KmsKey", "Type", }); internal_static_google_cloud_geminidataanalytics_v1beta_DataAgent_LabelsEntry_descriptor = @@ -134,6 +138,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { 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); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceProto.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceProto.java index 92e66569577e..893455ee23d4 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceProto.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataChatServiceProto.java @@ -57,9 +57,9 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor - internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_ParametersEntry_descriptor; + internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_Parameter_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable - internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_ParametersEntry_fieldAccessorTable; + internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_Parameter_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_geminidataanalytics_v1beta_QueryDataResponse_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -112,6 +112,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_geminidataanalytics_v1beta_Message_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_geminidataanalytics_v1beta_Message_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_geminidataanalytics_v1beta_LookerSettings_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_geminidataanalytics_v1beta_LookerSettings_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_geminidataanalytics_v1beta_UserMessage_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -232,25 +236,25 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\025datasource_references\030\001 \001(\0132=.google.cloud.gemin" + "idataanalytics.v1beta.DatasourceReferencesB\003\340A\002\022}\n" + "$parameterized_secure_view_parameters\030\002 \001(\0132J.google.cloud.geminidataa" - + "nalytics.v1beta.ParameterizedSecureViewParametersB\003\340A\001\"\313\001\n" - + "!ParameterizedSecureViewParameters\022s\n\n" - + "parameters\030\001 \003(\0132Z.google.cloud.geminidataanalytics.v1beta.Param" - + "eterizedSecureViewParameters.ParametersEntryB\003\340A\001\0321\n" - + "\017ParametersEntry\022\013\n" - + "\003key\030\001 \001(\t\022\r\n" - + "\005value\030\002 \001(\t:\0028\001\"\336\001\n" + + "nalytics.v1beta.ParameterizedSecureViewParametersB\003\340A\001\"\305\001\n" + + "!ParameterizedSecureViewParameters\022m\n\n" + + "parameters\030\001 \003(\0132T.google.cloud.geminidataanalytics.v1beta.Param" + + "eterizedSecureViewParameters.ParameterB\003\340A\001\0321\n" + + "\tParameter\022\020\n" + + "\003key\030\001 \001(\tB\003\340A\002\022\022\n" + + "\005value\030\002 \001(\tB\003\340A\002\"\336\001\n" + "\021QueryDataResponse\022\027\n" + "\017generated_query\030\001 \001(\t\022\032\n" + "\022intent_explanation\030\002 \001(\t\022R\n" - + "\014query_result\030\003 \001(\0132<." - + "google.cloud.geminidataanalytics.v1beta.ExecutedQueryResult\022\037\n" + + "\014query_result\030\003 \001(\0132<.google" + + ".cloud.geminidataanalytics.v1beta.ExecutedQueryResult\022\037\n" + "\027natural_language_answer\030\004 \001(\t\022\037\n" + "\027disambiguation_question\030\005 \003(\t\"\244\003\n" + "\023ExecutedQueryResult\022T\n" - + "\007columns\030\001" - + " \003(\0132C.google.cloud.geminidataanalytics.v1beta.ExecutedQueryResult.Column\022N\n" - + "\004rows\030\002" - + " \003(\0132@.google.cloud.geminidataanalytics.v1beta.ExecutedQueryResult.Row\022\027\n" + + "\007columns\030\001 \003(\013" + + "2C.google.cloud.geminidataanalytics.v1beta.ExecutedQueryResult.Column\022N\n" + + "\004rows\030\002 " + + "\003(\0132@.google.cloud.geminidataanalytics.v1beta.ExecutedQueryResult.Row\022\027\n" + "\017total_row_count\030\003 \001(\003\022\026\n" + "\016partial_result\030\004 \001(\010\022\035\n" + "\025query_execution_error\030\005 \001(\t\032$\n" @@ -260,8 +264,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\005Value\022\r\n" + "\005value\030\001 \001(\t\032Y\n" + "\003Row\022R\n" - + "\006values\030\001 \003(\013" - + "2B.google.cloud.geminidataanalytics.v1beta.ExecutedQueryResult.Value\"\244\001\n" + + "\006values\030\001 \003(\0132B.goo" + + "gle.cloud.geminidataanalytics.v1beta.ExecutedQueryResult.Value\"\244\001\n" + "\023ListMessagesRequest\022G\n" + "\006parent\030\001 \001(\tB7\340A\002\372A1\n" + "/geminidataanalytics.googleapis.com/Conversation\022\026\n" @@ -269,41 +273,52 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "page_token\030\004 \001(\tB\003\340A\001\022\023\n" + "\006filter\030\005 \001(\tB\003\340A\001\"z\n" + "\024ListMessagesResponse\022I\n" - + "\010messages\030\001 \003(\01327." - + "google.cloud.geminidataanalytics.v1beta.StorageMessage\022\027\n" + + "\010messages\030\001 \003(\01327.google" + + ".cloud.geminidataanalytics.v1beta.StorageMessage\022\027\n" + "\017next_page_token\030\002 \001(\t\"g\n" + "\016StorageMessage\022\022\n\n" + "message_id\030\001 \001(\t\022A\n" + "\007message\030\002" - + " \001(\01320.google.cloud.geminidataanalytics.v1beta.Message\"\372\005\n" + + " \001(\01320.google.cloud.geminidataanalytics.v1beta.Message\"\277\010\n" + "\013ChatRequest\022O\n" - + "\016inline_context\030e \001(\01320.google.cloud." - + "geminidataanalytics.v1beta.ContextB\003\340A\001H\000\022e\n" - + "\026conversation_reference\030g \001(\0132>.goog" - + "le.cloud.geminidataanalytics.v1beta.ConversationReferenceB\003\340A\001H\000\022\\\n" - + "\022data_agent_context\030h \001(\01329.google.cloud.geminidataan" - + "alytics.v1beta.DataAgentContextB\003\340A\001H\000\022u\n" - + "\037client_managed_resource_context\030i \001(\0132" - + "E.google.cloud.geminidataanalytics.v1beta.ClientManagedResourceContextB\003\340A\001H\000\022F\n" + + "\016inline_context\030e" + + " \001(\01320.google.cloud.geminidataanalytics.v1beta.ContextB\003\340A\001H\000\022e\n" + + "\026conversation_reference\030g \001(\0132>.google.clo" + + "ud.geminidataanalytics.v1beta.ConversationReferenceB\003\340A\001H\000\022\\\n" + + "\022data_agent_context\030h" + + " \001(\01329.google.cloud.geminidataanalytics.v1beta.DataAgentContextB\003\340A\001H\000\022u\n" + + "\037client_managed_resource_context\030i \001(\0132E.goog" + + "le.cloud.geminidataanalytics.v1beta.ClientManagedResourceContextB\003\340A\001H\000\022W\n" + + "\017looker_settings\030\r" + + " \001(\01327.google.cloud.geminida" + + "taanalytics.v1beta.LookerSettingsB\003\340A\001H\001\022F\n" + "\007project\030\001 \001(\tB5\030\001\340A\001\372A-\n" + "+cloudresourcemanager.googleapis.com/Project\022\023\n" + "\006parent\030\003 \001(\tB\003\340A\002\022G\n" - + "\010messages\030\002 \003(\01320.google.cl" - + "oud.geminidataanalytics.v1beta.MessageB\003\340A\002\022]\n\r" - + "thinking_mode\030\t \001(\0162A.google.clou" - + "d.geminidataanalytics.v1beta.ChatRequest.ThinkingModeB\003\340A\001\"E\n" + + "\010messages\030\002 \003(\01320.google" + + ".cloud.geminidataanalytics.v1beta.MessageB\003\340A\002\022N\n" + + "\013credentials\030\007 \001(\01324.google.clo" + + "ud.geminidataanalytics.v1beta.CredentialsB\003\340A\001\022]\n\r" + + "thinking_mode\030\t \001(\0162A.google.c" + + "loud.geminidataanalytics.v1beta.ChatRequest.ThinkingModeB\003\340A\001\022N\n" + + "\005model\030\013 \001(\0162:.g" + + "oogle.cloud.geminidataanalytics.v1beta.ChatRequest.ModelB\003\340A\001\"E\n" + "\014ThinkingMode\022\035\n" + "\031THINKING_MODE_UNSPECIFIED\020\000\022\010\n" + "\004FAST\020\001\022\014\n" - + "\010THINKING\020\002B\022\n" - + "\020context_provider\"\343\002\n" + + "\010THINKING\020\002\"3\n" + + "\005Model\022\025\n" + + "\021MODEL_UNSPECIFIED\020\000\022\023\n" + + "\017LATEST_GA_MODEL\020\001B\022\n" + + "\020context_providerB\025\n" + + "\023datasource_settings\"\345\002\n" + "\020DataAgentContext\022H\n\n" + "data_agent\030\001 \001(\tB4\340A\002\372A.\n" - + ",geminidataanalytics.googleapis.com/DataAgent\022N\n" - + "\013credentials\030\002 \001(\01324.google.cloud" - + ".geminidataanalytics.v1beta.CredentialsB\003\340A\001\022f\n" - + "\017context_version\030\003 \001(\0162H.google.c" - + "loud.geminidataanalytics.v1beta.DataAgentContext.ContextVersionB\003\340A\001\"M\n" + + ",geminidataanalytics.googleapis.com/DataAgent\022P\n" + + "\013credentials\030\002 \001(\01324.google.cloud." + + "geminidataanalytics.v1beta.CredentialsB\005\030\001\340A\001\022f\n" + + "\017context_version\030\003 \001(\0162H.google." + + "cloud.geminidataanalytics.v1beta.DataAgentContext.ContextVersionB\003\340A\001\"M\n" + "\016ContextVersion\022\037\n" + "\033CONTEXT_VERSION_UNSPECIFIED\020\000\022\013\n" + "\007STAGING\020\001\022\r\n" @@ -311,88 +326,96 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\025ConversationReference\022M\n" + "\014conversation\030\001 \001(\tB7\340A\002\372A1\n" + "/geminidataanalytics.googleapis.com/Conversation\022Z\n" - + "\022data_agent_context\030\003 \001(\013" - + "29.google.cloud.geminidataanalytics.v1beta.DataAgentContextB\003\340A\002\"\242\001\n" + + "\022data_agent_context\030\003 \001(" + + "\01329.google.cloud.geminidataanalytics.v1beta.DataAgentContextB\003\340A\002\"\242\001\n" + "\034ClientManagedResourceContext\022M\n" - + "\016inline_context\030\001 \001(" - + "\01320.google.cloud.geminidataanalytics.v1beta.ContextB\003\340A\002\022\034\n" + + "\016inline_context\030\001 \001" + + "(\01320.google.cloud.geminidataanalytics.v1beta.ContextB\003\340A\002\022\034\n" + "\017conversation_id\030\002 \001(\tB\003\340A\001\022\025\n" + "\010agent_id\030\003 \001(\tB\003\340A\001\"\376\001\n" + "\007Message\022L\n" - + "\014user_message\030\002 \001(\01324.google.cloud.g" - + "eminidataanalytics.v1beta.UserMessageH\000\022P\n" - + "\016system_message\030\003 \001(\01326.google.cloud.g" - + "eminidataanalytics.v1beta.SystemMessageH\000\0222\n" + + "\014user_message\030\002 \001(\01324.google.cloud." + + "geminidataanalytics.v1beta.UserMessageH\000\022P\n" + + "\016system_message\030\003 \001(\01326.google.cloud." + + "geminidataanalytics.v1beta.SystemMessageH\000\0222\n" + "\ttimestamp\030\001 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\022\027\n\n" + "message_id\030\004 \001(\tB\003\340A\001B\006\n" - + "\004kind\"%\n" + + "\004kind\".\n" + + "\016LookerSettings\022\034\n" + + "\017enable_dev_mode\030\001 \001(\010B\003\340A\001\"%\n" + "\013UserMessage\022\016\n" + "\004text\030\001 \001(\tH\000B\006\n" - + "\004kind\"\245\005\n\r" + + "\004kind\"\361\005\n\r" + "SystemMessage\022D\n" - + "\004text\030\001 \001(\01324." - + "google.cloud.geminidataanalytics.v1beta.TextMessageH\000\022H\n" - + "\006schema\030\002 \001(\01326.google.c" - + "loud.geminidataanalytics.v1beta.SchemaMessageH\000\022D\n" - + "\004data\030\003" - + " \001(\01324.google.cloud.geminidataanalytics.v1beta.DataMessageH\000\022L\n" - + "\010analysis\030\004" - + " \001(\01328.google.cloud.geminidataanalytics.v1beta.AnalysisMessageH\000\022F\n" + + "\004text\030\001" + + " \001(\01324.google.cloud.geminidataanalytics.v1beta.TextMessageH\000\022H\n" + + "\006schema\030\002 \001(\01326" + + ".google.cloud.geminidataanalytics.v1beta.SchemaMessageH\000\022D\n" + + "\004data\030\003 \001(\01324.google." + + "cloud.geminidataanalytics.v1beta.DataMessageH\000\022L\n" + + "\010analysis\030\004 \001(\01328.google.cloud." + + "geminidataanalytics.v1beta.AnalysisMessageH\000\022F\n" + "\005chart\030\005" + " \001(\01325.google.cloud.geminidataanalytics.v1beta.ChartMessageH\000\022F\n" - + "\005error\030\006 \001" - + "(\01325.google.cloud.geminidataanalytics.v1beta.ErrorMessageH\000\022W\n" + + "\005error\030\006" + + " \001(\01325.google.cloud.geminidataanalytics.v1beta.ErrorMessageH\000\022W\n" + "\017example_queries\030\r" - + " \001(\01327.google.cloud.geminidataanalytics.v1beta.ExampleQueriesB\003\340A\001H\000\022[\n\r" - + "clarification\030\016 \001(\0132=.google.cloud.geminidataana" - + "lytics.v1beta.ClarificationMessageB\003\340A\001H\000\022\025\n" - + "\010group_id\030\014 \001(\005H\001\210\001\001B\006\n" + + " \001(\01327.google.cloud.geminidataanalytics.v1beta.ExampleQueriesB\003\340A\001H\000\022]\n" + + "\r" + + "clarification\030\016 \001(\0132=.google.cloud.gemi" + + "nidataanalytics.v1beta.ClarificationMessageB\005\030\001\340A\001H\000\022\025\n" + + "\010group_id\030\014 \001(\005H\001\210\001\001\022H\n" + + "\010citation\030\017" + + " \001(\01321.google.cloud.geminidataanalytics.v1beta.CitationB\003\340A\003B\006\n" + "\004kindB\013\n" - + "\t_group_id\"\356\001\n" + + "\t_group_id\"\206\002\n" + "\013TextMessage\022\022\n" + "\005parts\030\001 \003(\tB\003\340A\001\022U\n" - + "\ttext_type\030\002 \001(\0162=.google.cloud.gemi" - + "nidataanalytics.v1beta.TextMessage.TextTypeB\003\340A\001\022\036\n" - + "\021thought_signature\030\003 \001(\014B\003\340A\001\"T\n" + + "\ttext_type\030\002 \001(\0162=.google.cloud" + + ".geminidataanalytics.v1beta.TextMessage.TextTypeB\003\340A\001\022\036\n" + + "\021thought_signature\030\003 \001(\014B\003\340A\001\"l\n" + "\010TextType\022\031\n" + "\025TEXT_TYPE_UNSPECIFIED\020\000\022\022\n" + "\016FINAL_RESPONSE\020\001\022\013\n" + "\007THOUGHT\020\002\022\014\n" - + "\010PROGRESS\020\003\"\247\001\n\r" + + "\010PROGRESS\020\003\022\026\n" + + "\022FOLLOWUP_QUESTIONS\020\004\"\247\001\n\r" + "SchemaMessage\022E\n" - + "\005query\030\001 \001(\0132" - + "4.google.cloud.geminidataanalytics.v1beta.SchemaQueryH\000\022G\n" - + "\006result\030\002 \001(\01325.google" - + ".cloud.geminidataanalytics.v1beta.SchemaResultH\000B\006\n" + + "\005query\030\001 \001(\01324.google.cl" + + "oud.geminidataanalytics.v1beta.SchemaQueryH\000\022G\n" + + "\006result\030\002" + + " \001(\01325.google.cloud.geminidataanalytics.v1beta.SchemaResultH\000B\006\n" + "\004kind\"$\n" + "\013SchemaQuery\022\025\n" + "\010question\030\001 \001(\tB\003\340A\001\"]\n" + "\014SchemaResult\022M\n" - + "\013datasources\030\001" - + " \003(\01323.google.cloud.geminidataanalytics.v1beta.DatasourceB\003\340A\001\"\345\002\n" + + "\013datasources\030\001 \003(\013" + + "23.google.cloud.geminidataanalytics.v1beta.DatasourceB\003\340A\001\"\265\003\n" + "\013DataMessage\022C\n" + "\005query\030\001" + " \001(\01322.google.cloud.geminidataanalytics.v1beta.DataQueryH\000\022\027\n\r" + "generated_sql\030\002 \001(\tH\000\022E\n" - + "\006result\030\003 \001(\01323.go" - + "ogle.cloud.geminidataanalytics.v1beta.DataResultH\000\022Z\n" - + "\026generated_looker_query\030\004 \001" - + "(\01324.google.cloud.geminidataanalytics.v1beta.LookerQueryB\002\030\001H\000\022M\n\r" - + "big_query_job\030\005" - + " \001(\01324.google.cloud.geminidataanalytics.v1beta.BigQueryJobH\000B\006\n" + + "\006result\030\003 \001(\01323.google.cloud." + + "geminidataanalytics.v1beta.DataResultH\000\022Z\n" + + "\026generated_looker_query\030\004 \001(\01324.google" + + ".cloud.geminidataanalytics.v1beta.LookerQueryB\002\030\001H\000\022M\n\r" + + "big_query_job\030\005 \001(\01324.goo" + + "gle.cloud.geminidataanalytics.v1beta.BigQueryJobH\000\022N\n\r" + + "matched_query\030\006 \001(\01325.goog" + + "le.cloud.geminidataanalytics.v1beta.MatchedQueryH\000B\006\n" + "\004kind\"\337\001\n" + "\tDataQuery\022K\n" - + "\006looker\030\004 \001(\01324.google.cloud.gemin" - + "idataanalytics.v1beta.LookerQueryB\003\340A\001H\000\022\025\n" + + "\006looker\030\004" + + " \001(\01324.google.cloud.geminidataanalytics.v1beta.LookerQueryB\003\340A\001H\000\022\025\n" + "\010question\030\001 \001(\tB\003\340A\001\022\021\n" + "\004name\030\003 \001(\tB\003\340A\001\022M\n" - + "\013datasources\030\002 \003(\01323.google.cloud.g" - + "eminidataanalytics.v1beta.DatasourceB\003\340A\001B\014\n\n" + + "\013datasources\030\002" + + " \003(\01323.google.cloud.geminidataanalytics.v1beta.DatasourceB\003\340A\001B\014\n\n" + "query_type\"\307\001\n\n" + "DataResult\022\021\n" + "\004name\030\003 \001(\tB\003\340A\001\022D\n" - + "\006schema\030\005 \001(\0132/.google.cloud" - + ".geminidataanalytics.v1beta.SchemaB\003\340A\001\022*\n" + + "\006schema\030\005" + + " \001(\0132/.google.cloud.geminidataanalytics.v1beta.SchemaB\003\340A\001\022*\n" + "\004data\030\002 \003(\0132\027.google.protobuf.StructB\003\340A\001\0224\n" + "\016formatted_data\030\006" + " \003(\0132\027.google.protobuf.StructB\003\340A\001\"\371\001\n" @@ -400,15 +423,15 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "project_id\030\001 \001(\tB\003\340A\002\022\023\n" + "\006job_id\030\002 \001(\tB\003\340A\002\022\025\n" + "\010location\030\005 \001(\tB\003\340A\001\022_\n" - + "\021destination_table\030\003 \001(\0132?.google.cloud.geminidataanaly" - + "tics.v1beta.BigQueryTableReferenceB\003\340A\001\022D\n" + + "\021destination_table\030\003 \001(\0132?" + + ".google.cloud.geminidataanalytics.v1beta.BigQueryTableReferenceB\003\340A\001\022D\n" + "\006schema\030\007" + " \001(\0132/.google.cloud.geminidataanalytics.v1beta.SchemaB\003\340A\001\"\264\001\n" + "\017AnalysisMessage\022G\n" - + "\005query\030\001 \001(\01326.google.cloud." - + "geminidataanalytics.v1beta.AnalysisQueryH\000\022P\n" - + "\016progress_event\030\002 \001(\01326.google.clou" - + "d.geminidataanalytics.v1beta.AnalysisEventH\000B\006\n" + + "\005query\030\001" + + " \001(\01326.google.cloud.geminidataanalytics.v1beta.AnalysisQueryH\000\022P\n" + + "\016progress_event\030\002" + + " \001(\01326.google.cloud.geminidataanalytics.v1beta.AnalysisEventH\000B\006\n" + "\004kind\"F\n\r" + "AnalysisQuery\022\025\n" + "\010question\030\001 \001(\tB\003\340A\001\022\036\n" @@ -429,36 +452,36 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\014ChartMessage\022D\n" + "\005query\030\001" + " \001(\01323.google.cloud.geminidataanalytics.v1beta.ChartQueryH\000\022F\n" - + "\006result\030\002" - + " \001(\01324.google.cloud.geminidataanalytics.v1beta.ChartResultH\000B\006\n" + + "\006result\030\002 \001(\01324." + + "google.cloud.geminidataanalytics.v1beta.ChartResultH\000B\006\n" + "\004kind\"F\n\n" + "ChartQuery\022\031\n" + "\014instructions\030\001 \001(\tB\003\340A\001\022\035\n" + "\020data_result_name\030\002 \001(\tB\003\340A\001\"\203\001\n" + "\013ChartResult\0221\n" + "\013vega_config\030\002 \001(\0132\027.google.protobuf.StructB\003\340A\001\022A\n" - + "\005image\030\003 \001(\0132-.google.clou" - + "d.geminidataanalytics.v1beta.BlobB\003\340A\001\"!\n" + + "\005image\030\003" + + " \001(\0132-.google.cloud.geminidataanalytics.v1beta.BlobB\003\340A\001\"!\n" + "\014ErrorMessage\022\021\n" - + "\004text\030\001 \001(\tB\003\340A\003\"\363\003\n" - + "\025ClarificationQuestion\022\025\n" - + "\010question\030\001 \001(\tB\003\340A\002\022i\n" - + "\016selection_mode\030\002 \001(\0162L.google.clou" - + "d.geminidataanalytics.v1beta.ClarificationQuestion.SelectionModeB\003\340A\002\022\024\n" - + "\007options\030\003 \003(\tB\003\340A\002\022\202\001\n" - + "\033clarification_question_type\030\004 \001(\0162X.google.cloud.geminidataanaly" - + "tics.v1beta.ClarificationQuestion.ClarificationQuestionTypeB\003\340A\001\"T\n\r" - + "SelectionMode\022\036\n" - + "\032SELECTION_MODE_UNSPECIFIED\020\000\022\021\n\r" - + "SINGLE_SELECT\020\001\022\020\n" - + "\014MULTI_SELECT\020\002\"g\n" - + "\031ClarificationQuestionType\022+\n" - + "\'CLARIFICATION_QUESTION_TYPE_UNSPECIFIED\020\000\022\021\n\r" - + "FILTER_VALUES\020\001\022\n\n" - + "\006FIELDS\020\002\"n\n" - + "\024ClarificationMessage\022V\n" - + "\tquestions\030\001 \003(\0132>.google.cloud.gemini" - + "dataanalytics.v1beta.ClarificationQuestionB\003\340A\002\"e\n" + + "\004text\030\001 \001(\tB\003\340A\003\"\237\004\n" + + "\025ClarificationQuestion\022\027\n" + + "\010question\030\001 \001(\tB\005\030\001\340A\002\022k\n" + + "\016selection_mode\030\002 \001(\0162L.google.cloud.geminid" + + "ataanalytics.v1beta.ClarificationQuestion.SelectionModeB\005\030\001\340A\002\022\026\n" + + "\007options\030\003 \003(\tB\005\030\001\340A\002\022\204\001\n" + + "\033clarification_question_type\030\004 \001(\0162X.google.cloud.geminidataanalytics." + + "v1beta.ClarificationQuestion.ClarificationQuestionTypeB\005\030\001\340A\001\"d\n\r" + + "SelectionMode\022\"\n" + + "\032SELECTION_MODE_UNSPECIFIED\020\000\032\002\010\001\022\025\n\r" + + "SINGLE_SELECT\020\001\032\002\010\001\022\024\n" + + "\014MULTI_SELECT\020\002\032\002\010\001\032\002\030\001\"w\n" + + "\031ClarificationQuestionType\022/\n" + + "\'CLARIFICATION_QUESTION_TYPE_UNSPECIFIED\020\000\032\002\010\001\022\025\n\r" + + "FILTER_VALUES\020\001\032\002\010\001\022\016\n" + + "\006FIELDS\020\002\032\002\010\001\032\002\030\001:\002\030\001\"t\n" + + "\024ClarificationMessage\022X\n" + + "\tquestions\030\001 \003(\0132>.google.cloud.geminidataana" + + "lytics.v1beta.ClarificationQuestionB\005\030\001\340A\002:\002\030\001\"e\n" + "\016ExampleQueries\022S\n" + "\017example_queries\030\001" + " \003(\01325.google.cloud.geminidataanalytics.v1beta.ExampleQueryB\003\340A\001\"1\n" @@ -466,42 +489,42 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\tmime_type\030\001 \001(\tB\003\340A\002\022\021\n" + "\004data\030\002 \001(\014B\003\340A\0022\256\014\n" + "\017DataChatService\022\251\001\n" - + "\004Chat\0224.google.cloud.geminidataanalytics.v1beta.ChatReq" - + "uest\0320.google.cloud.geminidataanalytics." - + "v1beta.Message\"7\202\323\344\223\0021\",/v1beta/{parent=projects/*/locations/*}:chat:\001*0\001\022\202\002\n" - + "\022CreateConversation\022B.google.cloud.geminida" - + "taanalytics.v1beta.CreateConversationRequest\0325.google.cloud.geminidataanalytics." - + "v1beta.Conversation\"q\332A#parent,conversat" - + "ion,conversation_id\202\323\344\223\002E\"5/v1beta/{pare" - + "nt=projects/*/locations/*}/conversations:\014conversation\022\266\001\n" - + "\022DeleteConversation\022B.google.cloud.geminidataanalytics.v1beta." - + "DeleteConversationRequest\032\026.google.proto" - + "buf.Empty\"D\332A\004name\202\323\344\223\0027*5/v1beta/{name=" - + "projects/*/locations/*/conversations/*}\022\317\001\n" - + "\017GetConversation\022?.google.cloud.geminidataanalytics.v1beta.GetConversationReq" - + "uest\0325.google.cloud.geminidataanalytics." - + "v1beta.Conversation\"D\332A\004name\202\323\344\223\0027\0225/v1b" - + "eta/{name=projects/*/locations/*/conversations/*}\022\342\001\n" - + "\021ListConversations\022A.google.cloud.geminidataanalytics.v1beta.ListCo" - + "nversationsRequest\032B.google.cloud.geminidataanalytics.v1beta.ListConversationsRe" - + "sponse\"F\332A\006parent\202\323\344\223\0027\0225/v1beta/{parent" - + "=projects/*/locations/*}/conversations\022\336\001\n" - + "\014ListMessages\022<.google.cloud.geminidat" - + "aanalytics.v1beta.ListMessagesRequest\032=.google.cloud.geminidataanalytics.v1beta." - + "ListMessagesResponse\"Q\332A\006parent\202\323\344\223\002B\022@/" - + "v1beta/{parent=projects/*/locations/*/conversations/*}/messages\022\300\001\n" - + "\tQueryData\0229.google.cloud.geminidataanalytics.v1beta." - + "QueryDataRequest\032:.google.cloud.geminida" - + "taanalytics.v1beta.QueryDataResponse\"<\202\323" - + "\344\223\0026\"1/v1beta/{parent=projects/*/locatio" - + "ns/*}:queryData:\001*\032V\312A\"geminidataanalyti" - + "cs.googleapis.com\322A.https://www.googleapis.com/auth/cloud-platformB\245\002\n" - + "+com.google.cloud.geminidataanalytics.v1betaB\024Data" - + "ChatServiceProtoP\001Z]cloud.google.com/go/geminidataanalytics/apiv1beta/geminidata" - + "analyticspb;geminidataanalyticspb\252\002\'Goog" - + "le.Cloud.GeminiDataAnalytics.V1Beta\312\002\'Go" - + "ogle\\Cloud\\GeminiDataAnalytics\\V1beta\352\002*" - + "Google::Cloud::GeminiDataAnalytics::V1betab\006proto3" + + "\004Chat\0224.google.cloud.geminidataanalytics.v1beta.ChatRequ" + + "est\0320.google.cloud.geminidataanalytics.v" + + "1beta.Message\"7\202\323\344\223\0021\",/v1beta/{parent=projects/*/locations/*}:chat:\001*0\001\022\202\002\n" + + "\022CreateConversation\022B.google.cloud.geminidat" + + "aanalytics.v1beta.CreateConversationRequest\0325.google.cloud.geminidataanalytics.v" + + "1beta.Conversation\"q\332A#parent,conversati" + + "on,conversation_id\202\323\344\223\002E\"5/v1beta/{paren" + + "t=projects/*/locations/*}/conversations:\014conversation\022\266\001\n" + + "\022DeleteConversation\022B.google.cloud.geminidataanalytics.v1beta.D" + + "eleteConversationRequest\032\026.google.protob" + + "uf.Empty\"D\332A\004name\202\323\344\223\0027*5/v1beta/{name=p" + + "rojects/*/locations/*/conversations/*}\022\317\001\n" + + "\017GetConversation\022?.google.cloud.geminidataanalytics.v1beta.GetConversationRequ" + + "est\0325.google.cloud.geminidataanalytics.v" + + "1beta.Conversation\"D\332A\004name\202\323\344\223\0027\0225/v1be" + + "ta/{name=projects/*/locations/*/conversations/*}\022\342\001\n" + + "\021ListConversations\022A.google.cloud.geminidataanalytics.v1beta.ListCon" + + "versationsRequest\032B.google.cloud.geminidataanalytics.v1beta.ListConversationsRes" + + "ponse\"F\332A\006parent\202\323\344\223\0027\0225/v1beta/{parent=" + + "projects/*/locations/*}/conversations\022\336\001\n" + + "\014ListMessages\022<.google.cloud.geminidata" + + "analytics.v1beta.ListMessagesRequest\032=.google.cloud.geminidataanalytics.v1beta.L" + + "istMessagesResponse\"Q\332A\006parent\202\323\344\223\002B\022@/v" + + "1beta/{parent=projects/*/locations/*/conversations/*}/messages\022\300\001\n" + + "\tQueryData\0229.google.cloud.geminidataanalytics.v1beta.Q" + + "ueryDataRequest\032:.google.cloud.geminidat" + + "aanalytics.v1beta.QueryDataResponse\"<\202\323\344" + + "\223\0026\"1/v1beta/{parent=projects/*/location" + + "s/*}:queryData:\001*\032V\312A\"geminidataanalytic" + + "s.googleapis.com\322A.https://www.googleapis.com/auth/cloud-platformB\245\002\n" + + "+com.google.cloud.geminidataanalytics.v1betaB\024DataC" + + "hatServiceProtoP\001Z]cloud.google.com/go/geminidataanalytics/apiv1beta/geminidataa" + + "nalyticspb;geminidataanalyticspb\252\002\'Googl" + + "e.Cloud.GeminiDataAnalytics.V1Beta\312\002\'Goo" + + "gle\\Cloud\\GeminiDataAnalytics\\V1beta\352\002*G" + + "oogle::Cloud::GeminiDataAnalytics::V1betab\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -554,12 +577,12 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "Parameters", }); - internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_ParametersEntry_descriptor = + internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_Parameter_descriptor = internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_descriptor .getNestedType(0); - internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_ParametersEntry_fieldAccessorTable = + internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_Parameter_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( - internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_ParametersEntry_descriptor, + internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_Parameter_descriptor, new java.lang.String[] { "Key", "Value", }); @@ -644,11 +667,15 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ConversationReference", "DataAgentContext", "ClientManagedResourceContext", + "LookerSettings", "Project", "Parent", "Messages", + "Credentials", "ThinkingMode", + "Model", "ContextProvider", + "DatasourceSettings", }); internal_static_google_cloud_geminidataanalytics_v1beta_DataAgentContext_descriptor = getDescriptor().getMessageType(10); @@ -682,8 +709,16 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "UserMessage", "SystemMessage", "Timestamp", "MessageId", "Kind", }); - internal_static_google_cloud_geminidataanalytics_v1beta_UserMessage_descriptor = + internal_static_google_cloud_geminidataanalytics_v1beta_LookerSettings_descriptor = getDescriptor().getMessageType(14); + internal_static_google_cloud_geminidataanalytics_v1beta_LookerSettings_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_geminidataanalytics_v1beta_LookerSettings_descriptor, + new java.lang.String[] { + "EnableDevMode", + }); + internal_static_google_cloud_geminidataanalytics_v1beta_UserMessage_descriptor = + getDescriptor().getMessageType(15); internal_static_google_cloud_geminidataanalytics_v1beta_UserMessage_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_UserMessage_descriptor, @@ -691,7 +726,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Text", "Kind", }); internal_static_google_cloud_geminidataanalytics_v1beta_SystemMessage_descriptor = - getDescriptor().getMessageType(15); + getDescriptor().getMessageType(16); internal_static_google_cloud_geminidataanalytics_v1beta_SystemMessage_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_SystemMessage_descriptor, @@ -705,10 +740,11 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ExampleQueries", "Clarification", "GroupId", + "Citation", "Kind", }); internal_static_google_cloud_geminidataanalytics_v1beta_TextMessage_descriptor = - getDescriptor().getMessageType(16); + getDescriptor().getMessageType(17); internal_static_google_cloud_geminidataanalytics_v1beta_TextMessage_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_TextMessage_descriptor, @@ -716,7 +752,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Parts", "TextType", "ThoughtSignature", }); internal_static_google_cloud_geminidataanalytics_v1beta_SchemaMessage_descriptor = - getDescriptor().getMessageType(17); + getDescriptor().getMessageType(18); internal_static_google_cloud_geminidataanalytics_v1beta_SchemaMessage_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_SchemaMessage_descriptor, @@ -724,7 +760,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Query", "Result", "Kind", }); internal_static_google_cloud_geminidataanalytics_v1beta_SchemaQuery_descriptor = - getDescriptor().getMessageType(18); + getDescriptor().getMessageType(19); internal_static_google_cloud_geminidataanalytics_v1beta_SchemaQuery_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_SchemaQuery_descriptor, @@ -732,7 +768,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Question", }); internal_static_google_cloud_geminidataanalytics_v1beta_SchemaResult_descriptor = - getDescriptor().getMessageType(19); + getDescriptor().getMessageType(20); internal_static_google_cloud_geminidataanalytics_v1beta_SchemaResult_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_SchemaResult_descriptor, @@ -740,15 +776,21 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Datasources", }); internal_static_google_cloud_geminidataanalytics_v1beta_DataMessage_descriptor = - getDescriptor().getMessageType(20); + getDescriptor().getMessageType(21); internal_static_google_cloud_geminidataanalytics_v1beta_DataMessage_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_DataMessage_descriptor, new java.lang.String[] { - "Query", "GeneratedSql", "Result", "GeneratedLookerQuery", "BigQueryJob", "Kind", + "Query", + "GeneratedSql", + "Result", + "GeneratedLookerQuery", + "BigQueryJob", + "MatchedQuery", + "Kind", }); internal_static_google_cloud_geminidataanalytics_v1beta_DataQuery_descriptor = - getDescriptor().getMessageType(21); + getDescriptor().getMessageType(22); internal_static_google_cloud_geminidataanalytics_v1beta_DataQuery_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_DataQuery_descriptor, @@ -756,7 +798,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Looker", "Question", "Name", "Datasources", "QueryType", }); internal_static_google_cloud_geminidataanalytics_v1beta_DataResult_descriptor = - getDescriptor().getMessageType(22); + getDescriptor().getMessageType(23); internal_static_google_cloud_geminidataanalytics_v1beta_DataResult_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_DataResult_descriptor, @@ -764,7 +806,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Name", "Schema", "Data", "FormattedData", }); internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryJob_descriptor = - getDescriptor().getMessageType(23); + getDescriptor().getMessageType(24); internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryJob_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryJob_descriptor, @@ -772,7 +814,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ProjectId", "JobId", "Location", "DestinationTable", "Schema", }); internal_static_google_cloud_geminidataanalytics_v1beta_AnalysisMessage_descriptor = - getDescriptor().getMessageType(24); + getDescriptor().getMessageType(25); internal_static_google_cloud_geminidataanalytics_v1beta_AnalysisMessage_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_AnalysisMessage_descriptor, @@ -780,7 +822,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Query", "ProgressEvent", "Kind", }); internal_static_google_cloud_geminidataanalytics_v1beta_AnalysisQuery_descriptor = - getDescriptor().getMessageType(25); + getDescriptor().getMessageType(26); internal_static_google_cloud_geminidataanalytics_v1beta_AnalysisQuery_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_AnalysisQuery_descriptor, @@ -788,7 +830,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Question", "DataResultNames", }); internal_static_google_cloud_geminidataanalytics_v1beta_AnalysisEvent_descriptor = - getDescriptor().getMessageType(26); + getDescriptor().getMessageType(27); internal_static_google_cloud_geminidataanalytics_v1beta_AnalysisEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_AnalysisEvent_descriptor, @@ -806,7 +848,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Kind", }); internal_static_google_cloud_geminidataanalytics_v1beta_ChartMessage_descriptor = - getDescriptor().getMessageType(27); + getDescriptor().getMessageType(28); internal_static_google_cloud_geminidataanalytics_v1beta_ChartMessage_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_ChartMessage_descriptor, @@ -814,7 +856,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Query", "Result", "Kind", }); internal_static_google_cloud_geminidataanalytics_v1beta_ChartQuery_descriptor = - getDescriptor().getMessageType(28); + getDescriptor().getMessageType(29); internal_static_google_cloud_geminidataanalytics_v1beta_ChartQuery_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_ChartQuery_descriptor, @@ -822,7 +864,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Instructions", "DataResultName", }); internal_static_google_cloud_geminidataanalytics_v1beta_ChartResult_descriptor = - getDescriptor().getMessageType(29); + getDescriptor().getMessageType(30); internal_static_google_cloud_geminidataanalytics_v1beta_ChartResult_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_ChartResult_descriptor, @@ -830,7 +872,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "VegaConfig", "Image", }); internal_static_google_cloud_geminidataanalytics_v1beta_ErrorMessage_descriptor = - getDescriptor().getMessageType(30); + getDescriptor().getMessageType(31); internal_static_google_cloud_geminidataanalytics_v1beta_ErrorMessage_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_ErrorMessage_descriptor, @@ -838,7 +880,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Text", }); internal_static_google_cloud_geminidataanalytics_v1beta_ClarificationQuestion_descriptor = - getDescriptor().getMessageType(31); + getDescriptor().getMessageType(32); internal_static_google_cloud_geminidataanalytics_v1beta_ClarificationQuestion_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_ClarificationQuestion_descriptor, @@ -846,7 +888,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Question", "SelectionMode", "Options", "ClarificationQuestionType", }); internal_static_google_cloud_geminidataanalytics_v1beta_ClarificationMessage_descriptor = - getDescriptor().getMessageType(32); + getDescriptor().getMessageType(33); internal_static_google_cloud_geminidataanalytics_v1beta_ClarificationMessage_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_ClarificationMessage_descriptor, @@ -854,7 +896,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Questions", }); internal_static_google_cloud_geminidataanalytics_v1beta_ExampleQueries_descriptor = - getDescriptor().getMessageType(33); + getDescriptor().getMessageType(34); internal_static_google_cloud_geminidataanalytics_v1beta_ExampleQueries_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_ExampleQueries_descriptor, @@ -862,7 +904,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ExampleQueries", }); internal_static_google_cloud_geminidataanalytics_v1beta_Blob_descriptor = - getDescriptor().getMessageType(34); + getDescriptor().getMessageType(35); internal_static_google_cloud_geminidataanalytics_v1beta_Blob_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_Blob_descriptor, diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataMessage.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataMessage.java index 8c7b298ba72a..58983e0aeba8 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataMessage.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataMessage.java @@ -83,6 +83,7 @@ public enum KindCase @java.lang.Deprecated GENERATED_LOOKER_QUERY(4), BIG_QUERY_JOB(5), + MATCHED_QUERY(6), KIND_NOT_SET(0); private final int value; @@ -112,6 +113,8 @@ public static KindCase forNumber(int value) { return GENERATED_LOOKER_QUERY; case 5: return BIG_QUERY_JOB; + case 6: + return MATCHED_QUERY; case 0: return KIND_NOT_SET; default: @@ -315,8 +318,8 @@ public com.google.cloud.geminidataanalytics.v1beta.DataResultOrBuilder getResult * * *
        -   * Looker Query generated by the system to retrieve data.
            * Deprecated: generated looker query is now under DataQuery.looker.
        +   * Looker Query generated by the system to retrieve data.
            * 
        * * @@ -324,7 +327,7 @@ public com.google.cloud.geminidataanalytics.v1beta.DataResultOrBuilder getResult * * * @deprecated google.cloud.geminidataanalytics.v1beta.DataMessage.generated_looker_query is - * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=575 + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=637 * @return Whether the generatedLookerQuery field is set. */ @java.lang.Override @@ -337,8 +340,8 @@ public boolean hasGeneratedLookerQuery() { * * *
        -   * Looker Query generated by the system to retrieve data.
            * Deprecated: generated looker query is now under DataQuery.looker.
        +   * Looker Query generated by the system to retrieve data.
            * 
        * * @@ -346,7 +349,7 @@ public boolean hasGeneratedLookerQuery() { * * * @deprecated google.cloud.geminidataanalytics.v1beta.DataMessage.generated_looker_query is - * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=575 + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=637 * @return The generatedLookerQuery. */ @java.lang.Override @@ -362,8 +365,8 @@ public com.google.cloud.geminidataanalytics.v1beta.LookerQuery getGeneratedLooke * * *
        -   * Looker Query generated by the system to retrieve data.
            * Deprecated: generated looker query is now under DataQuery.looker.
        +   * Looker Query generated by the system to retrieve data.
            * 
        * * @@ -435,6 +438,61 @@ public com.google.cloud.geminidataanalytics.v1beta.BigQueryJob getBigQueryJob() return com.google.cloud.geminidataanalytics.v1beta.BigQueryJob.getDefaultInstance(); } + public static final int MATCHED_QUERY_FIELD_NUMBER = 6; + + /** + * + * + *
        +   * A pre-existing query that was matched to retrieve data.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + * + * @return Whether the matchedQuery field is set. + */ + @java.lang.Override + public boolean hasMatchedQuery() { + return kindCase_ == 6; + } + + /** + * + * + *
        +   * A pre-existing query that was matched to retrieve data.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + * + * @return The matchedQuery. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.MatchedQuery getMatchedQuery() { + if (kindCase_ == 6) { + return (com.google.cloud.geminidataanalytics.v1beta.MatchedQuery) kind_; + } + return com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.getDefaultInstance(); + } + + /** + * + * + *
        +   * A pre-existing query that was matched to retrieve data.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.MatchedQueryOrBuilder + getMatchedQueryOrBuilder() { + if (kindCase_ == 6) { + return (com.google.cloud.geminidataanalytics.v1beta.MatchedQuery) kind_; + } + return com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.getDefaultInstance(); + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -464,6 +522,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (kindCase_ == 5) { output.writeMessage(5, (com.google.cloud.geminidataanalytics.v1beta.BigQueryJob) kind_); } + if (kindCase_ == 6) { + output.writeMessage(6, (com.google.cloud.geminidataanalytics.v1beta.MatchedQuery) kind_); + } getUnknownFields().writeTo(output); } @@ -496,6 +557,11 @@ public int getSerializedSize() { com.google.protobuf.CodedOutputStream.computeMessageSize( 5, (com.google.cloud.geminidataanalytics.v1beta.BigQueryJob) kind_); } + if (kindCase_ == 6) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 6, (com.google.cloud.geminidataanalytics.v1beta.MatchedQuery) kind_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -529,6 +595,9 @@ public boolean equals(final java.lang.Object obj) { case 5: if (!getBigQueryJob().equals(other.getBigQueryJob())) return false; break; + case 6: + if (!getMatchedQuery().equals(other.getMatchedQuery())) return false; + break; case 0: default: } @@ -564,6 +633,10 @@ public int hashCode() { hash = (37 * hash) + BIG_QUERY_JOB_FIELD_NUMBER; hash = (53 * hash) + getBigQueryJob().hashCode(); break; + case 6: + hash = (37 * hash) + MATCHED_QUERY_FIELD_NUMBER; + hash = (53 * hash) + getMatchedQuery().hashCode(); + break; case 0: default: } @@ -720,6 +793,9 @@ public Builder clear() { if (bigQueryJobBuilder_ != null) { bigQueryJobBuilder_.clear(); } + if (matchedQueryBuilder_ != null) { + matchedQueryBuilder_.clear(); + } kindCase_ = 0; kind_ = null; return this; @@ -777,6 +853,9 @@ private void buildPartialOneofs( if (kindCase_ == 5 && bigQueryJobBuilder_ != null) { result.kind_ = bigQueryJobBuilder_.build(); } + if (kindCase_ == 6 && matchedQueryBuilder_ != null) { + result.kind_ = matchedQueryBuilder_.build(); + } } @java.lang.Override @@ -820,6 +899,11 @@ public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.DataMessage mergeBigQueryJob(other.getBigQueryJob()); break; } + case MATCHED_QUERY: + { + mergeMatchedQuery(other.getMatchedQuery()); + break; + } case KIND_NOT_SET: { break; @@ -884,6 +968,13 @@ public Builder mergeFrom( kindCase_ = 5; break; } // case 42 + case 50: + { + input.readMessage( + internalGetMatchedQueryFieldBuilder().getBuilder(), extensionRegistry); + kindCase_ = 6; + break; + } // case 50 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -1504,8 +1595,8 @@ public com.google.cloud.geminidataanalytics.v1beta.DataResultOrBuilder getResult * * *
        -     * Looker Query generated by the system to retrieve data.
              * Deprecated: generated looker query is now under DataQuery.looker.
        +     * Looker Query generated by the system to retrieve data.
              * 
        * * @@ -1513,7 +1604,7 @@ public com.google.cloud.geminidataanalytics.v1beta.DataResultOrBuilder getResult * * * @deprecated google.cloud.geminidataanalytics.v1beta.DataMessage.generated_looker_query is - * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=575 + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=637 * @return Whether the generatedLookerQuery field is set. */ @java.lang.Override @@ -1526,8 +1617,8 @@ public boolean hasGeneratedLookerQuery() { * * *
        -     * Looker Query generated by the system to retrieve data.
              * Deprecated: generated looker query is now under DataQuery.looker.
        +     * Looker Query generated by the system to retrieve data.
              * 
        * * @@ -1535,7 +1626,7 @@ public boolean hasGeneratedLookerQuery() { * * * @deprecated google.cloud.geminidataanalytics.v1beta.DataMessage.generated_looker_query is - * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=575 + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=637 * @return The generatedLookerQuery. */ @java.lang.Override @@ -1558,8 +1649,8 @@ public com.google.cloud.geminidataanalytics.v1beta.LookerQuery getGeneratedLooke * * *
        -     * Looker Query generated by the system to retrieve data.
              * Deprecated: generated looker query is now under DataQuery.looker.
        +     * Looker Query generated by the system to retrieve data.
              * 
        * * @@ -1586,8 +1677,8 @@ public Builder setGeneratedLookerQuery( * * *
        -     * Looker Query generated by the system to retrieve data.
              * Deprecated: generated looker query is now under DataQuery.looker.
        +     * Looker Query generated by the system to retrieve data.
              * 
        * * @@ -1611,8 +1702,8 @@ public Builder setGeneratedLookerQuery( * * *
        -     * Looker Query generated by the system to retrieve data.
              * Deprecated: generated looker query is now under DataQuery.looker.
        +     * Looker Query generated by the system to retrieve data.
              * 
        * * @@ -1650,8 +1741,8 @@ public Builder mergeGeneratedLookerQuery( * * *
        -     * Looker Query generated by the system to retrieve data.
              * Deprecated: generated looker query is now under DataQuery.looker.
        +     * Looker Query generated by the system to retrieve data.
              * 
        * * @@ -1680,8 +1771,8 @@ public Builder clearGeneratedLookerQuery() { * * *
        -     * Looker Query generated by the system to retrieve data.
              * Deprecated: generated looker query is now under DataQuery.looker.
        +     * Looker Query generated by the system to retrieve data.
              * 
        * * @@ -1698,8 +1789,8 @@ public Builder clearGeneratedLookerQuery() { * * *
        -     * Looker Query generated by the system to retrieve data.
              * Deprecated: generated looker query is now under DataQuery.looker.
        +     * Looker Query generated by the system to retrieve data.
              * 
        * * @@ -1724,8 +1815,8 @@ public Builder clearGeneratedLookerQuery() { * * *
        -     * Looker Query generated by the system to retrieve data.
              * Deprecated: generated looker query is now under DataQuery.looker.
        +     * Looker Query generated by the system to retrieve data.
              * 
        * * @@ -1976,6 +2067,228 @@ public com.google.cloud.geminidataanalytics.v1beta.BigQueryJob.Builder getBigQue return bigQueryJobBuilder_; } + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery, + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.Builder, + com.google.cloud.geminidataanalytics.v1beta.MatchedQueryOrBuilder> + matchedQueryBuilder_; + + /** + * + * + *
        +     * A pre-existing query that was matched to retrieve data.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + * + * @return Whether the matchedQuery field is set. + */ + @java.lang.Override + public boolean hasMatchedQuery() { + return kindCase_ == 6; + } + + /** + * + * + *
        +     * A pre-existing query that was matched to retrieve data.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + * + * @return The matchedQuery. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.MatchedQuery getMatchedQuery() { + if (matchedQueryBuilder_ == null) { + if (kindCase_ == 6) { + return (com.google.cloud.geminidataanalytics.v1beta.MatchedQuery) kind_; + } + return com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.getDefaultInstance(); + } else { + if (kindCase_ == 6) { + return matchedQueryBuilder_.getMessage(); + } + return com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.getDefaultInstance(); + } + } + + /** + * + * + *
        +     * A pre-existing query that was matched to retrieve data.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + */ + public Builder setMatchedQuery(com.google.cloud.geminidataanalytics.v1beta.MatchedQuery value) { + if (matchedQueryBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + kind_ = value; + onChanged(); + } else { + matchedQueryBuilder_.setMessage(value); + } + kindCase_ = 6; + return this; + } + + /** + * + * + *
        +     * A pre-existing query that was matched to retrieve data.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + */ + public Builder setMatchedQuery( + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.Builder builderForValue) { + if (matchedQueryBuilder_ == null) { + kind_ = builderForValue.build(); + onChanged(); + } else { + matchedQueryBuilder_.setMessage(builderForValue.build()); + } + kindCase_ = 6; + return this; + } + + /** + * + * + *
        +     * A pre-existing query that was matched to retrieve data.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + */ + public Builder mergeMatchedQuery( + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery value) { + if (matchedQueryBuilder_ == null) { + if (kindCase_ == 6 + && kind_ + != com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.getDefaultInstance()) { + kind_ = + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.newBuilder( + (com.google.cloud.geminidataanalytics.v1beta.MatchedQuery) kind_) + .mergeFrom(value) + .buildPartial(); + } else { + kind_ = value; + } + onChanged(); + } else { + if (kindCase_ == 6) { + matchedQueryBuilder_.mergeFrom(value); + } else { + matchedQueryBuilder_.setMessage(value); + } + } + kindCase_ = 6; + return this; + } + + /** + * + * + *
        +     * A pre-existing query that was matched to retrieve data.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + */ + public Builder clearMatchedQuery() { + if (matchedQueryBuilder_ == null) { + if (kindCase_ == 6) { + kindCase_ = 0; + kind_ = null; + onChanged(); + } + } else { + if (kindCase_ == 6) { + kindCase_ = 0; + kind_ = null; + } + matchedQueryBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * A pre-existing query that was matched to retrieve data.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + */ + public com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.Builder + getMatchedQueryBuilder() { + return internalGetMatchedQueryFieldBuilder().getBuilder(); + } + + /** + * + * + *
        +     * A pre-existing query that was matched to retrieve data.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.MatchedQueryOrBuilder + getMatchedQueryOrBuilder() { + if ((kindCase_ == 6) && (matchedQueryBuilder_ != null)) { + return matchedQueryBuilder_.getMessageOrBuilder(); + } else { + if (kindCase_ == 6) { + return (com.google.cloud.geminidataanalytics.v1beta.MatchedQuery) kind_; + } + return com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.getDefaultInstance(); + } + } + + /** + * + * + *
        +     * A pre-existing query that was matched to retrieve data.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery, + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.Builder, + com.google.cloud.geminidataanalytics.v1beta.MatchedQueryOrBuilder> + internalGetMatchedQueryFieldBuilder() { + if (matchedQueryBuilder_ == null) { + if (!(kindCase_ == 6)) { + kind_ = com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.getDefaultInstance(); + } + matchedQueryBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery, + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.Builder, + com.google.cloud.geminidataanalytics.v1beta.MatchedQueryOrBuilder>( + (com.google.cloud.geminidataanalytics.v1beta.MatchedQuery) kind_, + getParentForChildren(), + isClean()); + kind_ = null; + } + kindCase_ = 6; + onChanged(); + return matchedQueryBuilder_; + } + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.DataMessage) } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataMessageOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataMessageOrBuilder.java index cbeac7fd424e..b8eadc54d9f5 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataMessageOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DataMessageOrBuilder.java @@ -143,8 +143,8 @@ public interface DataMessageOrBuilder * * *
        -   * Looker Query generated by the system to retrieve data.
            * Deprecated: generated looker query is now under DataQuery.looker.
        +   * Looker Query generated by the system to retrieve data.
            * 
        * * @@ -152,7 +152,7 @@ public interface DataMessageOrBuilder * * * @deprecated google.cloud.geminidataanalytics.v1beta.DataMessage.generated_looker_query is - * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=575 + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=637 * @return Whether the generatedLookerQuery field is set. */ @java.lang.Deprecated @@ -162,8 +162,8 @@ public interface DataMessageOrBuilder * * *
        -   * Looker Query generated by the system to retrieve data.
            * Deprecated: generated looker query is now under DataQuery.looker.
        +   * Looker Query generated by the system to retrieve data.
            * 
        * * @@ -171,7 +171,7 @@ public interface DataMessageOrBuilder * * * @deprecated google.cloud.geminidataanalytics.v1beta.DataMessage.generated_looker_query is - * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=575 + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=637 * @return The generatedLookerQuery. */ @java.lang.Deprecated @@ -181,8 +181,8 @@ public interface DataMessageOrBuilder * * *
        -   * Looker Query generated by the system to retrieve data.
            * Deprecated: generated looker query is now under DataQuery.looker.
        +   * Looker Query generated by the system to retrieve data.
            * 
        * * @@ -230,5 +230,42 @@ public interface DataMessageOrBuilder */ com.google.cloud.geminidataanalytics.v1beta.BigQueryJobOrBuilder getBigQueryJobOrBuilder(); + /** + * + * + *
        +   * A pre-existing query that was matched to retrieve data.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + * + * @return Whether the matchedQuery field is set. + */ + boolean hasMatchedQuery(); + + /** + * + * + *
        +   * A pre-existing query that was matched to retrieve data.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + * + * @return The matchedQuery. + */ + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery getMatchedQuery(); + + /** + * + * + *
        +   * A pre-existing query that was matched to retrieve data.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.MatchedQuery matched_query = 6; + */ + com.google.cloud.geminidataanalytics.v1beta.MatchedQueryOrBuilder getMatchedQueryOrBuilder(); + com.google.cloud.geminidataanalytics.v1beta.DataMessage.KindCase getKindCase(); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DatabaseTableReference.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DatabaseTableReference.java new file mode 100644 index 000000000000..d9d1cbbe07b0 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DatabaseTableReference.java @@ -0,0 +1,1099 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/datasource.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +/** + * + * + *
        + * Message representing a table including its schema.
        + * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.DatabaseTableReference} + */ +@com.google.protobuf.Generated +public final class DatabaseTableReference extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.DatabaseTableReference) + DatabaseTableReferenceOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "DatabaseTableReference"); + } + + // Use DatabaseTableReference.newBuilder() to construct. + private DatabaseTableReference(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private DatabaseTableReference() { + tableId_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.DatasourceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_DatabaseTableReference_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.DatasourceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_DatabaseTableReference_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.class, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder.class); + } + + private int bitField0_; + public static final int TABLE_ID_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object tableId_ = ""; + + /** + * + * + *
        +   * Required. The name of the table as defined in the database.
        +   *
        +   * Note: The precise rules for table naming, including valid characters,
        +   * length limits, and case sensitivity, are determined by the specific
        +   * database system.
        +   *
        +   * Requirements:
        +   * - Exact Match: The provided name must be identical to the name stored
        +   * in the database.
        +   * - Case Sensitivity: Respect the case sensitivity rules of the specific
        +   * database system and how the table was created. For example, "Orders"
        +   * and "orders" may be distinct table names.
        +   * - Special Characters/Keywords: If the table name includes spaces, special
        +   * characters, or is a database reserved keyword, provide the literal name
        +   * as it is stored. Do not add any database-specific identifier quoting
        +   * characters (e.g., ", `, []).
        +   *
        +   * Examples:
        +   * - Simple name: "orders", "UserActivity"
        +   * - Case sensitive: "MyTable"
        +   * - Name with spaces: "Order Details"
        +   * - Name with other special characters: "user/data", "order-items"
        +   * - Name that is a keyword: "Group", "Order"
        +   *
        +   * Permissions: The caller's credentials must have the necessary database
        +   * permissions to access the table's schema and data.
        +   * 
        + * + * string table_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The tableId. + */ + @java.lang.Override + public java.lang.String getTableId() { + java.lang.Object ref = tableId_; + 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(); + tableId_ = s; + return s; + } + } + + /** + * + * + *
        +   * Required. The name of the table as defined in the database.
        +   *
        +   * Note: The precise rules for table naming, including valid characters,
        +   * length limits, and case sensitivity, are determined by the specific
        +   * database system.
        +   *
        +   * Requirements:
        +   * - Exact Match: The provided name must be identical to the name stored
        +   * in the database.
        +   * - Case Sensitivity: Respect the case sensitivity rules of the specific
        +   * database system and how the table was created. For example, "Orders"
        +   * and "orders" may be distinct table names.
        +   * - Special Characters/Keywords: If the table name includes spaces, special
        +   * characters, or is a database reserved keyword, provide the literal name
        +   * as it is stored. Do not add any database-specific identifier quoting
        +   * characters (e.g., ", `, []).
        +   *
        +   * Examples:
        +   * - Simple name: "orders", "UserActivity"
        +   * - Case sensitive: "MyTable"
        +   * - Name with spaces: "Order Details"
        +   * - Name with other special characters: "user/data", "order-items"
        +   * - Name that is a keyword: "Group", "Order"
        +   *
        +   * Permissions: The caller's credentials must have the necessary database
        +   * permissions to access the table's schema and data.
        +   * 
        + * + * string table_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for tableId. + */ + @java.lang.Override + public com.google.protobuf.ByteString getTableIdBytes() { + java.lang.Object ref = tableId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + tableId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SCHEMA_FIELD_NUMBER = 2; + private com.google.cloud.geminidataanalytics.v1beta.Schema schema_; + + /** + * + * + *
        +   * Optional. The schema of the table.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the schema field is set. + */ + @java.lang.Override + public boolean hasSchema() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
        +   * Optional. The schema of the table.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The schema. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.Schema getSchema() { + return schema_ == null + ? com.google.cloud.geminidataanalytics.v1beta.Schema.getDefaultInstance() + : schema_; + } + + /** + * + * + *
        +   * Optional. The schema of the table.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.SchemaOrBuilder getSchemaOrBuilder() { + return schema_ == null + ? com.google.cloud.geminidataanalytics.v1beta.Schema.getDefaultInstance() + : schema_; + } + + 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(tableId_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, tableId_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(2, getSchema()); + } + 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(tableId_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, tableId_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getSchema()); + } + 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.cloud.geminidataanalytics.v1beta.DatabaseTableReference)) { + return super.equals(obj); + } + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference other = + (com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference) obj; + + if (!getTableId().equals(other.getTableId())) return false; + if (hasSchema() != other.hasSchema()) return false; + if (hasSchema()) { + if (!getSchema().equals(other.getSchema())) 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) + TABLE_ID_FIELD_NUMBER; + hash = (53 * hash) + getTableId().hashCode(); + if (hasSchema()) { + hash = (37 * hash) + SCHEMA_FIELD_NUMBER; + hash = (53 * hash) + getSchema().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference 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.cloud.geminidataanalytics.v1beta.DatabaseTableReference parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference 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.cloud.geminidataanalytics.v1beta.DatabaseTableReference + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + 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.cloud.geminidataanalytics.v1beta.DatabaseTableReference parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference 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.cloud.geminidataanalytics.v1beta.DatabaseTableReference 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; + } + + /** + * + * + *
        +   * Message representing a table including its schema.
        +   * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.DatabaseTableReference} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.geminidataanalytics.v1beta.DatabaseTableReference) + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.DatasourceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_DatabaseTableReference_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.DatasourceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_DatabaseTableReference_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.class, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder.class); + } + + // Construct using + // com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetSchemaFieldBuilder(); + } + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + tableId_ = ""; + schema_ = null; + if (schemaBuilder_ != null) { + schemaBuilder_.dispose(); + schemaBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.geminidataanalytics.v1beta.DatasourceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_DatabaseTableReference_descriptor; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + getDefaultInstanceForType() { + return com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference build() { + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference buildPartial() { + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference result = + new com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.tableId_ = tableId_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.schema_ = schemaBuilder_ == null ? schema_ : schemaBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference) { + return mergeFrom( + (com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference other) { + if (other + == com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + .getDefaultInstance()) return this; + if (!other.getTableId().isEmpty()) { + tableId_ = other.tableId_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.hasSchema()) { + mergeSchema(other.getSchema()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + tableId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + input.readMessage(internalGetSchemaFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000002; + break; + } // case 18 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object tableId_ = ""; + + /** + * + * + *
        +     * Required. The name of the table as defined in the database.
        +     *
        +     * Note: The precise rules for table naming, including valid characters,
        +     * length limits, and case sensitivity, are determined by the specific
        +     * database system.
        +     *
        +     * Requirements:
        +     * - Exact Match: The provided name must be identical to the name stored
        +     * in the database.
        +     * - Case Sensitivity: Respect the case sensitivity rules of the specific
        +     * database system and how the table was created. For example, "Orders"
        +     * and "orders" may be distinct table names.
        +     * - Special Characters/Keywords: If the table name includes spaces, special
        +     * characters, or is a database reserved keyword, provide the literal name
        +     * as it is stored. Do not add any database-specific identifier quoting
        +     * characters (e.g., ", `, []).
        +     *
        +     * Examples:
        +     * - Simple name: "orders", "UserActivity"
        +     * - Case sensitive: "MyTable"
        +     * - Name with spaces: "Order Details"
        +     * - Name with other special characters: "user/data", "order-items"
        +     * - Name that is a keyword: "Group", "Order"
        +     *
        +     * Permissions: The caller's credentials must have the necessary database
        +     * permissions to access the table's schema and data.
        +     * 
        + * + * string table_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The tableId. + */ + public java.lang.String getTableId() { + java.lang.Object ref = tableId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + tableId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * Required. The name of the table as defined in the database.
        +     *
        +     * Note: The precise rules for table naming, including valid characters,
        +     * length limits, and case sensitivity, are determined by the specific
        +     * database system.
        +     *
        +     * Requirements:
        +     * - Exact Match: The provided name must be identical to the name stored
        +     * in the database.
        +     * - Case Sensitivity: Respect the case sensitivity rules of the specific
        +     * database system and how the table was created. For example, "Orders"
        +     * and "orders" may be distinct table names.
        +     * - Special Characters/Keywords: If the table name includes spaces, special
        +     * characters, or is a database reserved keyword, provide the literal name
        +     * as it is stored. Do not add any database-specific identifier quoting
        +     * characters (e.g., ", `, []).
        +     *
        +     * Examples:
        +     * - Simple name: "orders", "UserActivity"
        +     * - Case sensitive: "MyTable"
        +     * - Name with spaces: "Order Details"
        +     * - Name with other special characters: "user/data", "order-items"
        +     * - Name that is a keyword: "Group", "Order"
        +     *
        +     * Permissions: The caller's credentials must have the necessary database
        +     * permissions to access the table's schema and data.
        +     * 
        + * + * string table_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for tableId. + */ + public com.google.protobuf.ByteString getTableIdBytes() { + java.lang.Object ref = tableId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + tableId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * Required. The name of the table as defined in the database.
        +     *
        +     * Note: The precise rules for table naming, including valid characters,
        +     * length limits, and case sensitivity, are determined by the specific
        +     * database system.
        +     *
        +     * Requirements:
        +     * - Exact Match: The provided name must be identical to the name stored
        +     * in the database.
        +     * - Case Sensitivity: Respect the case sensitivity rules of the specific
        +     * database system and how the table was created. For example, "Orders"
        +     * and "orders" may be distinct table names.
        +     * - Special Characters/Keywords: If the table name includes spaces, special
        +     * characters, or is a database reserved keyword, provide the literal name
        +     * as it is stored. Do not add any database-specific identifier quoting
        +     * characters (e.g., ", `, []).
        +     *
        +     * Examples:
        +     * - Simple name: "orders", "UserActivity"
        +     * - Case sensitive: "MyTable"
        +     * - Name with spaces: "Order Details"
        +     * - Name with other special characters: "user/data", "order-items"
        +     * - Name that is a keyword: "Group", "Order"
        +     *
        +     * Permissions: The caller's credentials must have the necessary database
        +     * permissions to access the table's schema and data.
        +     * 
        + * + * string table_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The tableId to set. + * @return This builder for chaining. + */ + public Builder setTableId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + tableId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Required. The name of the table as defined in the database.
        +     *
        +     * Note: The precise rules for table naming, including valid characters,
        +     * length limits, and case sensitivity, are determined by the specific
        +     * database system.
        +     *
        +     * Requirements:
        +     * - Exact Match: The provided name must be identical to the name stored
        +     * in the database.
        +     * - Case Sensitivity: Respect the case sensitivity rules of the specific
        +     * database system and how the table was created. For example, "Orders"
        +     * and "orders" may be distinct table names.
        +     * - Special Characters/Keywords: If the table name includes spaces, special
        +     * characters, or is a database reserved keyword, provide the literal name
        +     * as it is stored. Do not add any database-specific identifier quoting
        +     * characters (e.g., ", `, []).
        +     *
        +     * Examples:
        +     * - Simple name: "orders", "UserActivity"
        +     * - Case sensitive: "MyTable"
        +     * - Name with spaces: "Order Details"
        +     * - Name with other special characters: "user/data", "order-items"
        +     * - Name that is a keyword: "Group", "Order"
        +     *
        +     * Permissions: The caller's credentials must have the necessary database
        +     * permissions to access the table's schema and data.
        +     * 
        + * + * string table_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearTableId() { + tableId_ = getDefaultInstance().getTableId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Required. The name of the table as defined in the database.
        +     *
        +     * Note: The precise rules for table naming, including valid characters,
        +     * length limits, and case sensitivity, are determined by the specific
        +     * database system.
        +     *
        +     * Requirements:
        +     * - Exact Match: The provided name must be identical to the name stored
        +     * in the database.
        +     * - Case Sensitivity: Respect the case sensitivity rules of the specific
        +     * database system and how the table was created. For example, "Orders"
        +     * and "orders" may be distinct table names.
        +     * - Special Characters/Keywords: If the table name includes spaces, special
        +     * characters, or is a database reserved keyword, provide the literal name
        +     * as it is stored. Do not add any database-specific identifier quoting
        +     * characters (e.g., ", `, []).
        +     *
        +     * Examples:
        +     * - Simple name: "orders", "UserActivity"
        +     * - Case sensitive: "MyTable"
        +     * - Name with spaces: "Order Details"
        +     * - Name with other special characters: "user/data", "order-items"
        +     * - Name that is a keyword: "Group", "Order"
        +     *
        +     * Permissions: The caller's credentials must have the necessary database
        +     * permissions to access the table's schema and data.
        +     * 
        + * + * string table_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The bytes for tableId to set. + * @return This builder for chaining. + */ + public Builder setTableIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + tableId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private com.google.cloud.geminidataanalytics.v1beta.Schema schema_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.Schema, + com.google.cloud.geminidataanalytics.v1beta.Schema.Builder, + com.google.cloud.geminidataanalytics.v1beta.SchemaOrBuilder> + schemaBuilder_; + + /** + * + * + *
        +     * Optional. The schema of the table.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the schema field is set. + */ + public boolean hasSchema() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
        +     * Optional. The schema of the table.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The schema. + */ + public com.google.cloud.geminidataanalytics.v1beta.Schema getSchema() { + if (schemaBuilder_ == null) { + return schema_ == null + ? com.google.cloud.geminidataanalytics.v1beta.Schema.getDefaultInstance() + : schema_; + } else { + return schemaBuilder_.getMessage(); + } + } + + /** + * + * + *
        +     * Optional. The schema of the table.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setSchema(com.google.cloud.geminidataanalytics.v1beta.Schema value) { + if (schemaBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + schema_ = value; + } else { + schemaBuilder_.setMessage(value); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The schema of the table.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setSchema( + com.google.cloud.geminidataanalytics.v1beta.Schema.Builder builderForValue) { + if (schemaBuilder_ == null) { + schema_ = builderForValue.build(); + } else { + schemaBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The schema of the table.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeSchema(com.google.cloud.geminidataanalytics.v1beta.Schema value) { + if (schemaBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0) + && schema_ != null + && schema_ != com.google.cloud.geminidataanalytics.v1beta.Schema.getDefaultInstance()) { + getSchemaBuilder().mergeFrom(value); + } else { + schema_ = value; + } + } else { + schemaBuilder_.mergeFrom(value); + } + if (schema_ != null) { + bitField0_ |= 0x00000002; + onChanged(); + } + return this; + } + + /** + * + * + *
        +     * Optional. The schema of the table.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearSchema() { + bitField0_ = (bitField0_ & ~0x00000002); + schema_ = null; + if (schemaBuilder_ != null) { + schemaBuilder_.dispose(); + schemaBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The schema of the table.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.Schema.Builder getSchemaBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return internalGetSchemaFieldBuilder().getBuilder(); + } + + /** + * + * + *
        +     * Optional. The schema of the table.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.SchemaOrBuilder getSchemaOrBuilder() { + if (schemaBuilder_ != null) { + return schemaBuilder_.getMessageOrBuilder(); + } else { + return schema_ == null + ? com.google.cloud.geminidataanalytics.v1beta.Schema.getDefaultInstance() + : schema_; + } + } + + /** + * + * + *
        +     * Optional. The schema of the table.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.Schema, + com.google.cloud.geminidataanalytics.v1beta.Schema.Builder, + com.google.cloud.geminidataanalytics.v1beta.SchemaOrBuilder> + internalGetSchemaFieldBuilder() { + if (schemaBuilder_ == null) { + schemaBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.Schema, + com.google.cloud.geminidataanalytics.v1beta.Schema.Builder, + com.google.cloud.geminidataanalytics.v1beta.SchemaOrBuilder>( + getSchema(), getParentForChildren(), isClean()); + schema_ = null; + } + return schemaBuilder_; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.DatabaseTableReference) + } + + // @@protoc_insertion_point(class_scope:google.cloud.geminidataanalytics.v1beta.DatabaseTableReference) + private static final com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference(); + } + + public static com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public DatabaseTableReference parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DatabaseTableReferenceOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DatabaseTableReferenceOrBuilder.java new file mode 100644 index 000000000000..b69d67068a23 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DatabaseTableReferenceOrBuilder.java @@ -0,0 +1,147 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/datasource.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +@com.google.protobuf.Generated +public interface DatabaseTableReferenceOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.DatabaseTableReference) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
        +   * Required. The name of the table as defined in the database.
        +   *
        +   * Note: The precise rules for table naming, including valid characters,
        +   * length limits, and case sensitivity, are determined by the specific
        +   * database system.
        +   *
        +   * Requirements:
        +   * - Exact Match: The provided name must be identical to the name stored
        +   * in the database.
        +   * - Case Sensitivity: Respect the case sensitivity rules of the specific
        +   * database system and how the table was created. For example, "Orders"
        +   * and "orders" may be distinct table names.
        +   * - Special Characters/Keywords: If the table name includes spaces, special
        +   * characters, or is a database reserved keyword, provide the literal name
        +   * as it is stored. Do not add any database-specific identifier quoting
        +   * characters (e.g., ", `, []).
        +   *
        +   * Examples:
        +   * - Simple name: "orders", "UserActivity"
        +   * - Case sensitive: "MyTable"
        +   * - Name with spaces: "Order Details"
        +   * - Name with other special characters: "user/data", "order-items"
        +   * - Name that is a keyword: "Group", "Order"
        +   *
        +   * Permissions: The caller's credentials must have the necessary database
        +   * permissions to access the table's schema and data.
        +   * 
        + * + * string table_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The tableId. + */ + java.lang.String getTableId(); + + /** + * + * + *
        +   * Required. The name of the table as defined in the database.
        +   *
        +   * Note: The precise rules for table naming, including valid characters,
        +   * length limits, and case sensitivity, are determined by the specific
        +   * database system.
        +   *
        +   * Requirements:
        +   * - Exact Match: The provided name must be identical to the name stored
        +   * in the database.
        +   * - Case Sensitivity: Respect the case sensitivity rules of the specific
        +   * database system and how the table was created. For example, "Orders"
        +   * and "orders" may be distinct table names.
        +   * - Special Characters/Keywords: If the table name includes spaces, special
        +   * characters, or is a database reserved keyword, provide the literal name
        +   * as it is stored. Do not add any database-specific identifier quoting
        +   * characters (e.g., ", `, []).
        +   *
        +   * Examples:
        +   * - Simple name: "orders", "UserActivity"
        +   * - Case sensitive: "MyTable"
        +   * - Name with spaces: "Order Details"
        +   * - Name with other special characters: "user/data", "order-items"
        +   * - Name that is a keyword: "Group", "Order"
        +   *
        +   * Permissions: The caller's credentials must have the necessary database
        +   * permissions to access the table's schema and data.
        +   * 
        + * + * string table_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for tableId. + */ + com.google.protobuf.ByteString getTableIdBytes(); + + /** + * + * + *
        +   * Optional. The schema of the table.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the schema field is set. + */ + boolean hasSchema(); + + /** + * + * + *
        +   * Optional. The schema of the table.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The schema. + */ + com.google.cloud.geminidataanalytics.v1beta.Schema getSchema(); + + /** + * + * + *
        +   * Optional. The schema of the table.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Schema schema = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.SchemaOrBuilder getSchemaOrBuilder(); +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Datasource.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Datasource.java index 6b021e3e327f..6f030b7eebda 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Datasource.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Datasource.java @@ -84,6 +84,7 @@ public enum ReferenceCase ALLOY_DB_REFERENCE(12), SPANNER_REFERENCE(13), CLOUD_SQL_REFERENCE(14), + BIGQUERY_PROPERTY_GRAPH_REFERENCE(16), REFERENCE_NOT_SET(0); private final int value; @@ -115,6 +116,8 @@ public static ReferenceCase forNumber(int value) { return SPANNER_REFERENCE; case 14: return CLOUD_SQL_REFERENCE; + case 16: + return BIGQUERY_PROPERTY_GRAPH_REFERENCE; case 0: return REFERENCE_NOT_SET; default: @@ -496,6 +499,72 @@ public com.google.cloud.geminidataanalytics.v1beta.CloudSqlReference getCloudSql return com.google.cloud.geminidataanalytics.v1beta.CloudSqlReference.getDefaultInstance(); } + public static final int BIGQUERY_PROPERTY_GRAPH_REFERENCE_FIELD_NUMBER = 16; + + /** + * + * + *
        +   * A reference to a BigQuery property graph.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + * + * @return Whether the bigqueryPropertyGraphReference field is set. + */ + @java.lang.Override + public boolean hasBigqueryPropertyGraphReference() { + return referenceCase_ == 16; + } + + /** + * + * + *
        +   * A reference to a BigQuery property graph.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + * + * @return The bigqueryPropertyGraphReference. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + getBigqueryPropertyGraphReference() { + if (referenceCase_ == 16) { + return (com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) + reference_; + } + return com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + .getDefaultInstance(); + } + + /** + * + * + *
        +   * A reference to a BigQuery property graph.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceOrBuilder + getBigqueryPropertyGraphReferenceOrBuilder() { + if (referenceCase_ == 16) { + return (com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) + reference_; + } + return com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + .getDefaultInstance(); + } + public static final int SCHEMA_FIELD_NUMBER = 7; private com.google.cloud.geminidataanalytics.v1beta.Schema schema_; @@ -665,6 +734,11 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io output.writeMessage( 14, (com.google.cloud.geminidataanalytics.v1beta.CloudSqlReference) reference_); } + if (referenceCase_ == 16) { + output.writeMessage( + 16, + (com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) reference_); + } getUnknownFields().writeTo(output); } @@ -708,6 +782,13 @@ public int getSerializedSize() { com.google.protobuf.CodedOutputStream.computeMessageSize( 14, (com.google.cloud.geminidataanalytics.v1beta.CloudSqlReference) reference_); } + if (referenceCase_ == 16) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 16, + (com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) + reference_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -752,6 +833,10 @@ public boolean equals(final java.lang.Object obj) { case 14: if (!getCloudSqlReference().equals(other.getCloudSqlReference())) return false; break; + case 16: + if (!getBigqueryPropertyGraphReference().equals(other.getBigqueryPropertyGraphReference())) + return false; + break; case 0: default: } @@ -799,6 +884,10 @@ public int hashCode() { hash = (37 * hash) + CLOUD_SQL_REFERENCE_FIELD_NUMBER; hash = (53 * hash) + getCloudSqlReference().hashCode(); break; + case 16: + hash = (37 * hash) + BIGQUERY_PROPERTY_GRAPH_REFERENCE_FIELD_NUMBER; + hash = (53 * hash) + getBigqueryPropertyGraphReference().hashCode(); + break; case 0: default: } @@ -968,6 +1057,9 @@ public Builder clear() { if (cloudSqlReferenceBuilder_ != null) { cloudSqlReferenceBuilder_.clear(); } + if (bigqueryPropertyGraphReferenceBuilder_ != null) { + bigqueryPropertyGraphReferenceBuilder_.clear(); + } schema_ = null; if (schemaBuilder_ != null) { schemaBuilder_.dispose(); @@ -1018,11 +1110,11 @@ public com.google.cloud.geminidataanalytics.v1beta.Datasource buildPartial() { private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.Datasource result) { int from_bitField0_ = bitField0_; int to_bitField0_ = 0; - if (((from_bitField0_ & 0x00000040) != 0)) { + if (((from_bitField0_ & 0x00000080) != 0)) { result.schema_ = schemaBuilder_ == null ? schema_ : schemaBuilder_.build(); to_bitField0_ |= 0x00000001; } - if (((from_bitField0_ & 0x00000080) != 0)) { + if (((from_bitField0_ & 0x00000100) != 0)) { result.structSchema_ = structSchemaBuilder_ == null ? structSchema_ : structSchemaBuilder_.build(); to_bitField0_ |= 0x00000002; @@ -1048,6 +1140,9 @@ private void buildPartialOneofs(com.google.cloud.geminidataanalytics.v1beta.Data if (referenceCase_ == 14 && cloudSqlReferenceBuilder_ != null) { result.reference_ = cloudSqlReferenceBuilder_.build(); } + if (referenceCase_ == 16 && bigqueryPropertyGraphReferenceBuilder_ != null) { + result.reference_ = bigqueryPropertyGraphReferenceBuilder_.build(); + } } @java.lang.Override @@ -1102,6 +1197,11 @@ public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.Datasource mergeCloudSqlReference(other.getCloudSqlReference()); break; } + case BIGQUERY_PROPERTY_GRAPH_REFERENCE: + { + mergeBigqueryPropertyGraphReference(other.getBigqueryPropertyGraphReference()); + break; + } case REFERENCE_NOT_SET: { break; @@ -1159,14 +1259,14 @@ public Builder mergeFrom( case 58: { input.readMessage(internalGetSchemaFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000040; + bitField0_ |= 0x00000080; break; } // case 58 case 82: { input.readMessage( internalGetStructSchemaFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000080; + bitField0_ |= 0x00000100; break; } // case 82 case 98: @@ -1190,6 +1290,14 @@ public Builder mergeFrom( referenceCase_ = 14; break; } // case 114 + case 130: + { + input.readMessage( + internalGetBigqueryPropertyGraphReferenceFieldBuilder().getBuilder(), + extensionRegistry); + referenceCase_ = 16; + break; + } // case 130 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -2564,6 +2672,260 @@ public Builder clearCloudSqlReference() { return cloudSqlReferenceBuilder_; } + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceOrBuilder> + bigqueryPropertyGraphReferenceBuilder_; + + /** + * + * + *
        +     * A reference to a BigQuery property graph.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + * + * @return Whether the bigqueryPropertyGraphReference field is set. + */ + @java.lang.Override + public boolean hasBigqueryPropertyGraphReference() { + return referenceCase_ == 16; + } + + /** + * + * + *
        +     * A reference to a BigQuery property graph.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + * + * @return The bigqueryPropertyGraphReference. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + getBigqueryPropertyGraphReference() { + if (bigqueryPropertyGraphReferenceBuilder_ == null) { + if (referenceCase_ == 16) { + return (com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) + reference_; + } + return com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + .getDefaultInstance(); + } else { + if (referenceCase_ == 16) { + return bigqueryPropertyGraphReferenceBuilder_.getMessage(); + } + return com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + .getDefaultInstance(); + } + } + + /** + * + * + *
        +     * A reference to a BigQuery property graph.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + */ + public Builder setBigqueryPropertyGraphReference( + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference value) { + if (bigqueryPropertyGraphReferenceBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + reference_ = value; + onChanged(); + } else { + bigqueryPropertyGraphReferenceBuilder_.setMessage(value); + } + referenceCase_ = 16; + return this; + } + + /** + * + * + *
        +     * A reference to a BigQuery property graph.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + */ + public Builder setBigqueryPropertyGraphReference( + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder + builderForValue) { + if (bigqueryPropertyGraphReferenceBuilder_ == null) { + reference_ = builderForValue.build(); + onChanged(); + } else { + bigqueryPropertyGraphReferenceBuilder_.setMessage(builderForValue.build()); + } + referenceCase_ = 16; + return this; + } + + /** + * + * + *
        +     * A reference to a BigQuery property graph.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + */ + public Builder mergeBigqueryPropertyGraphReference( + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference value) { + if (bigqueryPropertyGraphReferenceBuilder_ == null) { + if (referenceCase_ == 16 + && reference_ + != com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + .getDefaultInstance()) { + reference_ = + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.newBuilder( + (com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) + reference_) + .mergeFrom(value) + .buildPartial(); + } else { + reference_ = value; + } + onChanged(); + } else { + if (referenceCase_ == 16) { + bigqueryPropertyGraphReferenceBuilder_.mergeFrom(value); + } else { + bigqueryPropertyGraphReferenceBuilder_.setMessage(value); + } + } + referenceCase_ = 16; + return this; + } + + /** + * + * + *
        +     * A reference to a BigQuery property graph.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + */ + public Builder clearBigqueryPropertyGraphReference() { + if (bigqueryPropertyGraphReferenceBuilder_ == null) { + if (referenceCase_ == 16) { + referenceCase_ = 0; + reference_ = null; + onChanged(); + } + } else { + if (referenceCase_ == 16) { + referenceCase_ = 0; + reference_ = null; + } + bigqueryPropertyGraphReferenceBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * A reference to a BigQuery property graph.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder + getBigqueryPropertyGraphReferenceBuilder() { + return internalGetBigqueryPropertyGraphReferenceFieldBuilder().getBuilder(); + } + + /** + * + * + *
        +     * A reference to a BigQuery property graph.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceOrBuilder + getBigqueryPropertyGraphReferenceOrBuilder() { + if ((referenceCase_ == 16) && (bigqueryPropertyGraphReferenceBuilder_ != null)) { + return bigqueryPropertyGraphReferenceBuilder_.getMessageOrBuilder(); + } else { + if (referenceCase_ == 16) { + return (com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) + reference_; + } + return com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + .getDefaultInstance(); + } + } + + /** + * + * + *
        +     * A reference to a BigQuery property graph.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceOrBuilder> + internalGetBigqueryPropertyGraphReferenceFieldBuilder() { + if (bigqueryPropertyGraphReferenceBuilder_ == null) { + if (!(referenceCase_ == 16)) { + reference_ = + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + .getDefaultInstance(); + } + bigqueryPropertyGraphReferenceBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference, + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference.Builder, + com.google.cloud.geminidataanalytics.v1beta + .BigQueryPropertyGraphReferenceOrBuilder>( + (com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference) + reference_, + getParentForChildren(), + isClean()); + reference_ = null; + } + referenceCase_ = 16; + onChanged(); + return bigqueryPropertyGraphReferenceBuilder_; + } + private com.google.cloud.geminidataanalytics.v1beta.Schema schema_; private com.google.protobuf.SingleFieldBuilder< com.google.cloud.geminidataanalytics.v1beta.Schema, @@ -2585,7 +2947,7 @@ public Builder clearCloudSqlReference() { * @return Whether the schema field is set. */ public boolean hasSchema() { - return ((bitField0_ & 0x00000040) != 0); + return ((bitField0_ & 0x00000080) != 0); } /** @@ -2631,7 +2993,7 @@ public Builder setSchema(com.google.cloud.geminidataanalytics.v1beta.Schema valu } else { schemaBuilder_.setMessage(value); } - bitField0_ |= 0x00000040; + bitField0_ |= 0x00000080; onChanged(); return this; } @@ -2654,7 +3016,7 @@ public Builder setSchema( } else { schemaBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00000040; + bitField0_ |= 0x00000080; onChanged(); return this; } @@ -2672,7 +3034,7 @@ public Builder setSchema( */ public Builder mergeSchema(com.google.cloud.geminidataanalytics.v1beta.Schema value) { if (schemaBuilder_ == null) { - if (((bitField0_ & 0x00000040) != 0) + if (((bitField0_ & 0x00000080) != 0) && schema_ != null && schema_ != com.google.cloud.geminidataanalytics.v1beta.Schema.getDefaultInstance()) { getSchemaBuilder().mergeFrom(value); @@ -2683,7 +3045,7 @@ public Builder mergeSchema(com.google.cloud.geminidataanalytics.v1beta.Schema va schemaBuilder_.mergeFrom(value); } if (schema_ != null) { - bitField0_ |= 0x00000040; + bitField0_ |= 0x00000080; onChanged(); } return this; @@ -2701,7 +3063,7 @@ public Builder mergeSchema(com.google.cloud.geminidataanalytics.v1beta.Schema va *
        */ public Builder clearSchema() { - bitField0_ = (bitField0_ & ~0x00000040); + bitField0_ = (bitField0_ & ~0x00000080); schema_ = null; if (schemaBuilder_ != null) { schemaBuilder_.dispose(); @@ -2723,7 +3085,7 @@ public Builder clearSchema() { *
        */ public com.google.cloud.geminidataanalytics.v1beta.Schema.Builder getSchemaBuilder() { - bitField0_ |= 0x00000040; + bitField0_ |= 0x00000080; onChanged(); return internalGetSchemaFieldBuilder().getBuilder(); } @@ -2802,7 +3164,7 @@ public com.google.cloud.geminidataanalytics.v1beta.SchemaOrBuilder getSchemaOrBu * @return Whether the structSchema field is set. */ public boolean hasStructSchema() { - return ((bitField0_ & 0x00000080) != 0); + return ((bitField0_ & 0x00000100) != 0); } /** @@ -2856,7 +3218,7 @@ public Builder setStructSchema(com.google.protobuf.Struct value) { } else { structSchemaBuilder_.setMessage(value); } - bitField0_ |= 0x00000080; + bitField0_ |= 0x00000100; onChanged(); return this; } @@ -2882,7 +3244,7 @@ public Builder setStructSchema(com.google.protobuf.Struct.Builder builderForValu } else { structSchemaBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00000080; + bitField0_ |= 0x00000100; onChanged(); return this; } @@ -2904,7 +3266,7 @@ public Builder setStructSchema(com.google.protobuf.Struct.Builder builderForValu */ public Builder mergeStructSchema(com.google.protobuf.Struct value) { if (structSchemaBuilder_ == null) { - if (((bitField0_ & 0x00000080) != 0) + if (((bitField0_ & 0x00000100) != 0) && structSchema_ != null && structSchema_ != com.google.protobuf.Struct.getDefaultInstance()) { getStructSchemaBuilder().mergeFrom(value); @@ -2915,7 +3277,7 @@ public Builder mergeStructSchema(com.google.protobuf.Struct value) { structSchemaBuilder_.mergeFrom(value); } if (structSchema_ != null) { - bitField0_ |= 0x00000080; + bitField0_ |= 0x00000100; onChanged(); } return this; @@ -2937,7 +3299,7 @@ public Builder mergeStructSchema(com.google.protobuf.Struct value) { *
        */ public Builder clearStructSchema() { - bitField0_ = (bitField0_ & ~0x00000080); + bitField0_ = (bitField0_ & ~0x00000100); structSchema_ = null; if (structSchemaBuilder_ != null) { structSchemaBuilder_.dispose(); @@ -2963,7 +3325,7 @@ public Builder clearStructSchema() { *
        */ public com.google.protobuf.Struct.Builder getStructSchemaBuilder() { - bitField0_ |= 0x00000080; + bitField0_ |= 0x00000100; onChanged(); return internalGetStructSchemaFieldBuilder().getBuilder(); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DatasourceOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DatasourceOrBuilder.java index 21652a4d40eb..ef418850414e 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DatasourceOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DatasourceOrBuilder.java @@ -270,6 +270,51 @@ public interface DatasourceOrBuilder com.google.cloud.geminidataanalytics.v1beta.CloudSqlReferenceOrBuilder getCloudSqlReferenceOrBuilder(); + /** + * + * + *
        +   * A reference to a BigQuery property graph.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + * + * @return Whether the bigqueryPropertyGraphReference field is set. + */ + boolean hasBigqueryPropertyGraphReference(); + + /** + * + * + *
        +   * A reference to a BigQuery property graph.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + * + * @return The bigqueryPropertyGraphReference. + */ + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference + getBigqueryPropertyGraphReference(); + + /** + * + * + *
        +   * A reference to a BigQuery property graph.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; + * + */ + com.google.cloud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceOrBuilder + getBigqueryPropertyGraphReferenceOrBuilder(); + /** * * diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DatasourceProto.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DatasourceProto.java index af9b0cca1ecb..450a3f85d674 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DatasourceProto.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/DatasourceProto.java @@ -64,6 +64,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_geminidataanalytics_v1beta_AlloyDbReference_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_geminidataanalytics_v1beta_AlloyDbReference_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_geminidataanalytics_v1beta_DatabaseTableReference_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_geminidataanalytics_v1beta_DatabaseTableReference_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_geminidataanalytics_v1beta_AlloyDbDatabaseReference_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -92,6 +96,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_geminidataanalytics_v1beta_LookerExploreReference_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_geminidataanalytics_v1beta_LookerExploreReference_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryPropertyGraphReference_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryPropertyGraphReference_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_geminidataanalytics_v1beta_PrivateLookerInstanceInfo_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -140,99 +148,118 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "eminidataanalytics.v1beta.SpannerReferenceH\000\022Y\n" + "\023cloud_sql_reference\030\n" + " \001(\0132:.google.cloud.geminidataanalytics.v1beta.CloudSqlReferenceH\000B\014\n\n" - + "references\"y\n" + + "references\"\352\001\n" + "\027BigQueryTableReferences\022^\n" - + "\020table_references\030\001 \003" - + "(\0132?.google.cloud.geminidataanalytics.v1beta.BigQueryTableReferenceB\003\340A\001\"\247\001\n" + + "\020table_references\030\001 " + + "\003(\0132?.google.cloud.geminidataanalytics.v1beta.BigQueryTableReferenceB\003\340A\001\022o\n" + + "\031property_graph_references\030\002 \003(\0132G.google.cl" + + "oud.geminidataanalytics.v1beta.BigQueryPropertyGraphReferenceB\003\340A\001\"\247\001\n" + "\026BigQueryTableReference\022\027\n\n" + "project_id\030\001 \001(\tB\003\340A\002\022\027\n\n" + "dataset_id\030\003 \001(\tB\003\340A\002\022\025\n" + "\010table_id\030\004 \001(\tB\003\340A\002\022D\n" - + "\006schema\030\006 \001(\0132/.google.cl" - + "oud.geminidataanalytics.v1beta.SchemaB\003\340A\001\"{\n" - + "\032StudioDatasourceReferences\022]\n" - + "\021studio_references\030\002 \003(\0132B.google.cloud.gemin" - + "idataanalytics.v1beta.StudioDatasourceReference\"7\n" + + "\006schema\030\006" + + " \001(\0132/.google.cloud.geminidataanalytics.v1beta.SchemaB\003\340A\001\"\200\001\n" + + "\032StudioDatasourceReferences\022b\n" + + "\021studio_references\030\002 \003(\0132B.google.cloud.geminidata" + + "analytics.v1beta.StudioDatasourceReferenceB\003\340A\001\"7\n" + "\031StudioDatasourceReference\022\032\n\r" + "datasource_id\030\001 \001(\tB\003\340A\002\"\334\001\n" + "\020AlloyDbReference\022b\n" + "\022database_reference\030\001 \001(\0132A.goog" + "le.cloud.geminidataanalytics.v1beta.AlloyDbDatabaseReferenceB\003\340A\002\022d\n" + "\027agent_context_reference\030\003 \001(\0132>.google.cloud.gemini" - + "dataanalytics.v1beta.AgentContextReferenceB\003\340A\001\"\255\001\n" + + "dataanalytics.v1beta.AgentContextReferenceB\003\340A\001\"u\n" + + "\026DatabaseTableReference\022\025\n" + + "\010table_id\030\001 \001(\tB\003\340A\002\022D\n" + + "\006schema\030\002 \001(\0132/.googl" + + "e.cloud.geminidataanalytics.v1beta.SchemaB\003\340A\001\"\226\002\n" + "\030AlloyDbDatabaseReference\022\027\n\n" + "project_id\030\001 \001(\tB\003\340A\002\022\023\n" + "\006region\030\002 \001(\tB\003\340A\002\022\027\n\n" + "cluster_id\030\003 \001(\tB\003\340A\002\022\030\n" + "\013instance_id\030\004 \001(\tB\003\340A\002\022\030\n" + "\013database_id\030\005 \001(\tB\003\340A\002\022\026\n" - + "\ttable_ids\030\006 \003(\tB\003\340A\001\"\334\001\n" + + "\ttable_ids\030\006 \003(\tB\003\340A\001\022g\n" + + "\031database_table_references\030\007 \003(\0132?.google.cloud.geminid" + + "ataanalytics.v1beta.DatabaseTableReferenceB\003\340A\001\"\334\001\n" + "\020SpannerReference\022b\n" - + "\022database_reference\030\001 \001(\0132A.googl" - + "e.cloud.geminidataanalytics.v1beta.SpannerDatabaseReferenceB\003\340A\002\022d\n" - + "\027agent_context_reference\030\002 \001(\0132>.google.cloud.geminid" - + "ataanalytics.v1beta.AgentContextReferenceB\003\340A\001\"\265\002\n" + + "\022database_reference\030\001 \001(\0132A.google.cloud.geminida" + + "taanalytics.v1beta.SpannerDatabaseReferenceB\003\340A\002\022d\n" + + "\027agent_context_reference\030\002 \001(" + + "\0132>.google.cloud.geminidataanalytics.v1beta.AgentContextReferenceB\003\340A\001\"\265\003\n" + "\030SpannerDatabaseReference\022]\n" - + "\006engine\030\006 \001(\0162H.google.cloud.geminidataana" - + "lytics.v1beta.SpannerDatabaseReference.EngineB\003\340A\002\022\027\n\n" - + "project_id\030\001 \001(\tB\003\340A\002\022\023\n" - + "\006region\030\002 \001(\tB\003\340A\002\022\030\n" + + "\006engine\030\006 \001(\0162H.go" + + "ogle.cloud.geminidataanalytics.v1beta.SpannerDatabaseReference.EngineB\003\340A\002\022\027\n\n" + + "project_id\030\001 \001(\tB\003\340A\002\022\030\n" + "\013instance_id\030\003 \001(\tB\003\340A\002\022\030\n" + "\013database_id\030\004 \001(\tB\003\340A\002\022\026\n" - + "\ttable_ids\030\005 \003(\tB\003\340A\001\"@\n" + + "\ttable_ids\030\005 \003(\tB\003\340A\001\022g\n" + + "\031database_table_references\030\007 \003(\0132?.google.cloud.geminidataanal" + + "ytics.v1beta.DatabaseTableReferenceB\003\340A\001\022\025\n" + + "\010priority\030\010 \001(\tB\003\340A\001\022\023\n" + + "\013request_tag\030\t \001(\t\"@\n" + "\006Engine\022\026\n" + "\022ENGINE_UNSPECIFIED\020\000\022\016\n\n" + "GOOGLE_SQL\020\001\022\016\n\n" + "POSTGRESQL\020\002\"\336\001\n" + "\021CloudSqlReference\022c\n" - + "\022database_reference\030\001 \001(\0132B.google.cloud.geminidataanalyt" - + "ics.v1beta.CloudSqlDatabaseReferenceB\003\340A\002\022d\n" - + "\027agent_context_reference\030\002 \001(\0132>.goo" - + "gle.cloud.geminidataanalytics.v1beta.AgentContextReferenceB\003\340A\001\"\262\002\n" + + "\022database_reference\030\001 \001(\013" + + "2B.google.cloud.geminidataanalytics.v1beta.CloudSqlDatabaseReferenceB\003\340A\002\022d\n" + + "\027agent_context_reference\030\002 \001(\0132>.google.clou" + + "d.geminidataanalytics.v1beta.AgentContextReferenceB\003\340A\001\"\233\003\n" + "\031CloudSqlDatabaseReference\022^\n" - + "\006engine\030\001 \001(\0162I.google.c" - + "loud.geminidataanalytics.v1beta.CloudSqlDatabaseReference.EngineB\003\340A\002\022\027\n\n" + + "\006engine\030\001 \001(\0162I.google.cloud.gem" + + "inidataanalytics.v1beta.CloudSqlDatabaseReference.EngineB\003\340A\002\022\027\n\n" + "project_id\030\002 \001(\tB\003\340A\002\022\023\n" + "\006region\030\003 \001(\tB\003\340A\002\022\030\n" + "\013instance_id\030\004 \001(\tB\003\340A\002\022\030\n" + "\013database_id\030\005 \001(\tB\003\340A\002\022\026\n" - + "\ttable_ids\030\007 \003(\tB\003\340A\001\";\n" + + "\ttable_ids\030\007 \003(\tB\003\340A\001\022g\n" + + "\031database_table_references\030\010 \003(\0132?.google.cloud.gemini" + + "dataanalytics.v1beta.DatabaseTableReferenceB\003\340A\001\";\n" + "\006Engine\022\026\n" + "\022ENGINE_UNSPECIFIED\020\000\022\016\n\n" + "POSTGRESQL\020\001\022\t\n" - + "\005MYSQL\020\002\"\313\001\n" + + "\005MYSQL\020\002\"\315\001\n" + "\027LookerExploreReferences\022`\n" - + "\022explore_references\030\001 \003(\0132?.google.cl" - + "oud.geminidataanalytics.v1beta.LookerExploreReferenceB\003\340A\002\022N\n" - + "\013credentials\030\002 \001(\0132" - + "4.google.cloud.geminidataanalytics.v1beta.CredentialsB\003\340A\001\"\246\002\n" + + "\022explore_references\030\001" + + " \003(\0132?.google.cloud.geminidataanalytics.v1beta.LookerExploreReferenceB\003\340A\002\022P\n" + + "\013credentials\030\002 \001(\01324.google.cloud.geminida" + + "taanalytics.v1beta.CredentialsB\005\030\001\340A\001\"\246\002\n" + "\026LookerExploreReference\022\035\n" + "\023looker_instance_uri\030\t \001(\tH\000\022j\n" + "\034private_looker_instance_info\030\n" - + " \001(\0132B.goo" - + "gle.cloud.geminidataanalytics.v1beta.PrivateLookerInstanceInfoH\000\022\031\n" + + " \001(\0132B.google.cloud.geminidataa" + + "nalytics.v1beta.PrivateLookerInstanceInfoH\000\022\031\n" + "\014lookml_model\030\004 \001(\tB\003\340A\002\022\024\n" + "\007explore\030\005 \001(\tB\003\340A\002\022D\n" - + "\006schema\030\010" - + " \001(\0132/.google.cloud.geminidataanalytics.v1beta.SchemaB\003\340A\001B\n\n" - + "\010instance\"W\n" + + "\006schema\030\010 \001(\0132/.google.cl" + + "oud.geminidataanalytics.v1beta.SchemaB\003\340A\001B\n\n" + + "\010instance\"r\n" + + "\036BigQueryPropertyGraphReference\022\027\n\n" + + "project_id\030\001 \001(\tB\003\340A\002\022\027\n\n" + + "dataset_id\030\002 \001(\tB\003\340A\002\022\036\n" + + "\021property_graph_id\030\003 \001(\tB\003\340A\002\"W\n" + "\031PrivateLookerInstanceInfo\022\032\n" + "\022looker_instance_id\030\001 \001(\t\022\036\n" - + "\026service_directory_name\030\002 \001(\t\"\212\005\n\n" + + "\026service_directory_name\030\002 \001(\t\"\200\006\n\n" + "Datasource\022c\n" - + "\030bigquery_table_reference\030\001 \001(\0132?.google.cloud.geminidataa" - + "nalytics.v1beta.BigQueryTableReferenceH\000\022\036\n" + + "\030bigquery_table_reference\030\001 \001(\0132?.google.cl" + + "oud.geminidataanalytics.v1beta.BigQueryTableReferenceH\000\022\036\n" + "\024studio_datasource_id\030\002 \001(\tH\000\022c\n" - + "\030looker_explore_reference\030\004 \001(\0132?.google.clou" - + "d.geminidataanalytics.v1beta.LookerExploreReferenceH\000\022W\n" - + "\022alloy_db_reference\030\014 \001(" - + "\01329.google.cloud.geminidataanalytics.v1beta.AlloyDbReferenceH\000\022V\n" + + "\030looker_explore_reference\030\004 \001(" + + "\0132?.google.cloud.geminidataanalytics.v1beta.LookerExploreReferenceH\000\022W\n" + + "\022alloy_db_reference\030\014" + + " \001(\01329.google.cloud.geminidataanalytics.v1beta.AlloyDbReferenceH\000\022V\n" + "\021spanner_reference\030\r" + " \001(\01329.google.cloud.geminidataanalytics.v1beta.SpannerReferenceH\000\022Y\n" - + "\023cloud_sql_reference\030\016 \001(\0132:.google.cloud.gemin" - + "idataanalytics.v1beta.CloudSqlReferenceH\000\022D\n" - + "\006schema\030\007" - + " \001(\0132/.google.cloud.geminidataanalytics.v1beta.SchemaB\003\340A\001\0223\n\r" + + "\023cloud_sql_reference\030\016 \001(\0132:.goo" + + "gle.cloud.geminidataanalytics.v1beta.CloudSqlReferenceH\000\022t\n" + + "!bigquery_property_graph_reference\030\020 \001(\0132G.google.cloud.gemin" + + "idataanalytics.v1beta.BigQueryPropertyGraphReferenceH\000\022D\n" + + "\006schema\030\007 \001(\0132/.google." + + "cloud.geminidataanalytics.v1beta.SchemaB\003\340A\001\0223\n\r" + "struct_schema\030\n" + " \001(\0132\027.google.protobuf.StructB\003\340A\001B\013\n" + "\treference\"\367\001\n" @@ -243,8 +270,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\010synonyms\030\003 \003(\tB\003\340A\001\022\021\n" + "\004tags\030\004 \003(\tB\003\340A\001\022\031\n" + "\014display_name\030\005 \001(\tB\003\340A\001\022I\n" - + "\007filters\030\006" - + " \003(\01323.google.cloud.geminidataanalytics.v1beta.DataFilterB\003\340A\001\"\231\002\n" + + "\007filters\030\006 \003(\01323.google.cloud.ge" + + "minidataanalytics.v1beta.DataFilterB\003\340A\001\"\231\002\n" + "\005Field\022\021\n" + "\004name\030\001 \001(\tB\003\340A\001\022\021\n" + "\004type\030\002 \001(\tB\003\340A\001\022\030\n" @@ -261,17 +288,16 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "DataFilter\022\022\n" + "\005field\030\001 \001(\tB\003\340A\001\022\022\n" + "\005value\030\002 \001(\tB\003\340A\001\022J\n" - + "\004type\030\003 \001(\01627.google.cloud.gemi" - + "nidataanalytics.v1beta.DataFilterTypeB\003\340A\001*E\n" + + "\004type\030\003 \001(\01627.goog" + + "le.cloud.geminidataanalytics.v1beta.DataFilterTypeB\003\340A\001*E\n" + "\016DataFilterType\022 \n" + "\034DATA_FILTER_TYPE_UNSPECIFIED\020\000\022\021\n\r" + "ALWAYS_FILTER\020\001B\240\002\n" - + "+com.google.cloud.geminidataanalytics.v1bet" - + "aB\017DatasourceProtoP\001Z]cloud.google.com/go/geminidataanalytics/apiv1beta/geminida" - + "taanalyticspb;geminidataanalyticspb\252\002\'Go" - + "ogle.Cloud.GeminiDataAnalytics.V1Beta\312\002\'" - + "Google\\Cloud\\GeminiDataAnalytics\\V1beta\352" - + "\002*Google::Cloud::GeminiDataAnalytics::V1betab\006proto3" + + "+com.google.cloud.geminidataanalytics.v1betaB\017DatasourceProtoP\001Z]cloud" + + ".google.com/go/geminidataanalytics/apiv1beta/geminidataanalyticspb;geminidataana" + + "lyticspb\252\002\'Google.Cloud.GeminiDataAnalyt" + + "ics.V1Beta\312\002\'Google\\Cloud\\GeminiDataAnal" + + "ytics\\V1beta\352\002*Google::Cloud::GeminiDataAnalytics::V1betab\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -302,7 +328,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryTableReferences_descriptor, new java.lang.String[] { - "TableReferences", + "TableReferences", "PropertyGraphReferences", }); internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryTableReference_descriptor = getDescriptor().getMessageType(2); @@ -336,16 +362,30 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "DatabaseReference", "AgentContextReference", }); - internal_static_google_cloud_geminidataanalytics_v1beta_AlloyDbDatabaseReference_descriptor = + internal_static_google_cloud_geminidataanalytics_v1beta_DatabaseTableReference_descriptor = getDescriptor().getMessageType(6); + internal_static_google_cloud_geminidataanalytics_v1beta_DatabaseTableReference_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_geminidataanalytics_v1beta_DatabaseTableReference_descriptor, + new java.lang.String[] { + "TableId", "Schema", + }); + internal_static_google_cloud_geminidataanalytics_v1beta_AlloyDbDatabaseReference_descriptor = + getDescriptor().getMessageType(7); internal_static_google_cloud_geminidataanalytics_v1beta_AlloyDbDatabaseReference_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_AlloyDbDatabaseReference_descriptor, new java.lang.String[] { - "ProjectId", "Region", "ClusterId", "InstanceId", "DatabaseId", "TableIds", + "ProjectId", + "Region", + "ClusterId", + "InstanceId", + "DatabaseId", + "TableIds", + "DatabaseTableReferences", }); internal_static_google_cloud_geminidataanalytics_v1beta_SpannerReference_descriptor = - getDescriptor().getMessageType(7); + getDescriptor().getMessageType(8); internal_static_google_cloud_geminidataanalytics_v1beta_SpannerReference_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_SpannerReference_descriptor, @@ -353,15 +393,22 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "DatabaseReference", "AgentContextReference", }); internal_static_google_cloud_geminidataanalytics_v1beta_SpannerDatabaseReference_descriptor = - getDescriptor().getMessageType(8); + getDescriptor().getMessageType(9); internal_static_google_cloud_geminidataanalytics_v1beta_SpannerDatabaseReference_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_SpannerDatabaseReference_descriptor, new java.lang.String[] { - "Engine", "ProjectId", "Region", "InstanceId", "DatabaseId", "TableIds", + "Engine", + "ProjectId", + "InstanceId", + "DatabaseId", + "TableIds", + "DatabaseTableReferences", + "Priority", + "RequestTag", }); internal_static_google_cloud_geminidataanalytics_v1beta_CloudSqlReference_descriptor = - getDescriptor().getMessageType(9); + getDescriptor().getMessageType(10); internal_static_google_cloud_geminidataanalytics_v1beta_CloudSqlReference_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_CloudSqlReference_descriptor, @@ -369,15 +416,21 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "DatabaseReference", "AgentContextReference", }); internal_static_google_cloud_geminidataanalytics_v1beta_CloudSqlDatabaseReference_descriptor = - getDescriptor().getMessageType(10); + getDescriptor().getMessageType(11); internal_static_google_cloud_geminidataanalytics_v1beta_CloudSqlDatabaseReference_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_CloudSqlDatabaseReference_descriptor, new java.lang.String[] { - "Engine", "ProjectId", "Region", "InstanceId", "DatabaseId", "TableIds", + "Engine", + "ProjectId", + "Region", + "InstanceId", + "DatabaseId", + "TableIds", + "DatabaseTableReferences", }); internal_static_google_cloud_geminidataanalytics_v1beta_LookerExploreReferences_descriptor = - getDescriptor().getMessageType(11); + getDescriptor().getMessageType(12); internal_static_google_cloud_geminidataanalytics_v1beta_LookerExploreReferences_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_LookerExploreReferences_descriptor, @@ -385,7 +438,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ExploreReferences", "Credentials", }); internal_static_google_cloud_geminidataanalytics_v1beta_LookerExploreReference_descriptor = - getDescriptor().getMessageType(12); + getDescriptor().getMessageType(13); internal_static_google_cloud_geminidataanalytics_v1beta_LookerExploreReference_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_LookerExploreReference_descriptor, @@ -397,8 +450,16 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Schema", "Instance", }); + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryPropertyGraphReference_descriptor = + getDescriptor().getMessageType(14); + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryPropertyGraphReference_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_geminidataanalytics_v1beta_BigQueryPropertyGraphReference_descriptor, + new java.lang.String[] { + "ProjectId", "DatasetId", "PropertyGraphId", + }); internal_static_google_cloud_geminidataanalytics_v1beta_PrivateLookerInstanceInfo_descriptor = - getDescriptor().getMessageType(13); + getDescriptor().getMessageType(15); internal_static_google_cloud_geminidataanalytics_v1beta_PrivateLookerInstanceInfo_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_PrivateLookerInstanceInfo_descriptor, @@ -406,7 +467,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "LookerInstanceId", "ServiceDirectoryName", }); internal_static_google_cloud_geminidataanalytics_v1beta_Datasource_descriptor = - getDescriptor().getMessageType(14); + getDescriptor().getMessageType(16); internal_static_google_cloud_geminidataanalytics_v1beta_Datasource_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_Datasource_descriptor, @@ -417,12 +478,13 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "AlloyDbReference", "SpannerReference", "CloudSqlReference", + "BigqueryPropertyGraphReference", "Schema", "StructSchema", "Reference", }); internal_static_google_cloud_geminidataanalytics_v1beta_Schema_descriptor = - getDescriptor().getMessageType(15); + getDescriptor().getMessageType(17); internal_static_google_cloud_geminidataanalytics_v1beta_Schema_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_Schema_descriptor, @@ -430,7 +492,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Fields", "Description", "Synonyms", "Tags", "DisplayName", "Filters", }); internal_static_google_cloud_geminidataanalytics_v1beta_Field_descriptor = - getDescriptor().getMessageType(16); + getDescriptor().getMessageType(18); internal_static_google_cloud_geminidataanalytics_v1beta_Field_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_Field_descriptor, @@ -447,7 +509,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ValueFormat", }); internal_static_google_cloud_geminidataanalytics_v1beta_DataFilter_descriptor = - getDescriptor().getMessageType(17); + getDescriptor().getMessageType(19); internal_static_google_cloud_geminidataanalytics_v1beta_DataFilter_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_geminidataanalytics_v1beta_DataFilter_descriptor, diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ExampleQuery.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ExampleQuery.java index c4256d56fe8e..1c1e493a1dc6 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ExampleQuery.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ExampleQuery.java @@ -55,6 +55,7 @@ private ExampleQuery(com.google.protobuf.GeneratedMessage.Builder builder) { private ExampleQuery() { naturalLanguageQuestion_ = ""; + parameters_ = java.util.Collections.emptyList(); } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -253,6 +254,110 @@ public com.google.protobuf.ByteString getNaturalLanguageQuestionBytes() { } } + public static final int PARAMETERS_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private java.util.List parameters_; + + /** + * + * + *
        +   * Optional. The list of query parameters.
        +   * Example: The parameterized SQL query
        +   * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +   * id.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getParametersList() { + return parameters_; + } + + /** + * + * + *
        +   * Optional. The list of query parameters.
        +   * Example: The parameterized SQL query
        +   * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +   * id.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.QueryParameterOrBuilder> + getParametersOrBuilderList() { + return parameters_; + } + + /** + * + * + *
        +   * Optional. The list of query parameters.
        +   * Example: The parameterized SQL query
        +   * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +   * id.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getParametersCount() { + return parameters_.size(); + } + + /** + * + * + *
        +   * Optional. The list of query parameters.
        +   * Example: The parameterized SQL query
        +   * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +   * id.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.QueryParameter getParameters(int index) { + return parameters_.get(index); + } + + /** + * + * + *
        +   * Optional. The list of query parameters.
        +   * Example: The parameterized SQL query
        +   * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +   * id.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.QueryParameterOrBuilder getParametersOrBuilder( + int index) { + return parameters_.get(index); + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -270,6 +375,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessage.isStringEmpty(naturalLanguageQuestion_)) { com.google.protobuf.GeneratedMessage.writeString(output, 1, naturalLanguageQuestion_); } + for (int i = 0; i < parameters_.size(); i++) { + output.writeMessage(3, parameters_.get(i)); + } if (queryCase_ == 101) { com.google.protobuf.GeneratedMessage.writeString(output, 101, query_); } @@ -285,6 +393,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessage.isStringEmpty(naturalLanguageQuestion_)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(1, naturalLanguageQuestion_); } + for (int i = 0; i < parameters_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, parameters_.get(i)); + } if (queryCase_ == 101) { size += com.google.protobuf.GeneratedMessage.computeStringSize(101, query_); } @@ -305,6 +416,7 @@ public boolean equals(final java.lang.Object obj) { (com.google.cloud.geminidataanalytics.v1beta.ExampleQuery) obj; if (!getNaturalLanguageQuestion().equals(other.getNaturalLanguageQuestion())) return false; + if (!getParametersList().equals(other.getParametersList())) return false; if (!getQueryCase().equals(other.getQueryCase())) return false; switch (queryCase_) { case 101: @@ -326,6 +438,10 @@ public int hashCode() { hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + NATURAL_LANGUAGE_QUESTION_FIELD_NUMBER; hash = (53 * hash) + getNaturalLanguageQuestion().hashCode(); + if (getParametersCount() > 0) { + hash = (37 * hash) + PARAMETERS_FIELD_NUMBER; + hash = (53 * hash) + getParametersList().hashCode(); + } switch (queryCase_) { case 101: hash = (37 * hash) + SQL_QUERY_FIELD_NUMBER; @@ -478,6 +594,13 @@ public Builder clear() { super.clear(); bitField0_ = 0; naturalLanguageQuestion_ = ""; + if (parametersBuilder_ == null) { + parameters_ = java.util.Collections.emptyList(); + } else { + parameters_ = null; + parametersBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000004); queryCase_ = 0; query_ = null; return this; @@ -507,6 +630,7 @@ public com.google.cloud.geminidataanalytics.v1beta.ExampleQuery build() { public com.google.cloud.geminidataanalytics.v1beta.ExampleQuery buildPartial() { com.google.cloud.geminidataanalytics.v1beta.ExampleQuery result = new com.google.cloud.geminidataanalytics.v1beta.ExampleQuery(this); + buildPartialRepeatedFields(result); if (bitField0_ != 0) { buildPartial0(result); } @@ -515,6 +639,19 @@ public com.google.cloud.geminidataanalytics.v1beta.ExampleQuery buildPartial() { return result; } + private void buildPartialRepeatedFields( + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery result) { + if (parametersBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0)) { + parameters_ = java.util.Collections.unmodifiableList(parameters_); + bitField0_ = (bitField0_ & ~0x00000004); + } + result.parameters_ = parameters_; + } else { + result.parameters_ = parametersBuilder_.build(); + } + } + private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.ExampleQuery result) { int from_bitField0_ = bitField0_; if (((from_bitField0_ & 0x00000002) != 0)) { @@ -546,6 +683,33 @@ public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.ExampleQuer bitField0_ |= 0x00000002; onChanged(); } + if (parametersBuilder_ == null) { + if (!other.parameters_.isEmpty()) { + if (parameters_.isEmpty()) { + parameters_ = other.parameters_; + bitField0_ = (bitField0_ & ~0x00000004); + } else { + ensureParametersIsMutable(); + parameters_.addAll(other.parameters_); + } + onChanged(); + } + } else { + if (!other.parameters_.isEmpty()) { + if (parametersBuilder_.isEmpty()) { + parametersBuilder_.dispose(); + parametersBuilder_ = null; + parameters_ = other.parameters_; + bitField0_ = (bitField0_ & ~0x00000004); + parametersBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetParametersFieldBuilder() + : null; + } else { + parametersBuilder_.addAllMessages(other.parameters_); + } + } + } switch (other.getQueryCase()) { case SQL_QUERY: { @@ -591,6 +755,20 @@ public Builder mergeFrom( bitField0_ |= 0x00000002; break; } // case 10 + case 26: + { + com.google.cloud.geminidataanalytics.v1beta.QueryParameter m = + input.readMessage( + com.google.cloud.geminidataanalytics.v1beta.QueryParameter.parser(), + extensionRegistry); + if (parametersBuilder_ == null) { + ensureParametersIsMutable(); + parameters_.add(m); + } else { + parametersBuilder_.addMessage(m); + } + break; + } // case 26 case 810: { java.lang.String s = input.readStringRequireUtf8(); @@ -898,6 +1076,479 @@ public Builder setNaturalLanguageQuestionBytes(com.google.protobuf.ByteString va return this; } + private java.util.List parameters_ = + java.util.Collections.emptyList(); + + private void ensureParametersIsMutable() { + if (!((bitField0_ & 0x00000004) != 0)) { + parameters_ = + new java.util.ArrayList( + parameters_); + bitField0_ |= 0x00000004; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.QueryParameter, + com.google.cloud.geminidataanalytics.v1beta.QueryParameter.Builder, + com.google.cloud.geminidataanalytics.v1beta.QueryParameterOrBuilder> + parametersBuilder_; + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List + getParametersList() { + if (parametersBuilder_ == null) { + return java.util.Collections.unmodifiableList(parameters_); + } else { + return parametersBuilder_.getMessageList(); + } + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public int getParametersCount() { + if (parametersBuilder_ == null) { + return parameters_.size(); + } else { + return parametersBuilder_.getCount(); + } + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.QueryParameter getParameters(int index) { + if (parametersBuilder_ == null) { + return parameters_.get(index); + } else { + return parametersBuilder_.getMessage(index); + } + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setParameters( + int index, com.google.cloud.geminidataanalytics.v1beta.QueryParameter value) { + if (parametersBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureParametersIsMutable(); + parameters_.set(index, value); + onChanged(); + } else { + parametersBuilder_.setMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setParameters( + int index, + com.google.cloud.geminidataanalytics.v1beta.QueryParameter.Builder builderForValue) { + if (parametersBuilder_ == null) { + ensureParametersIsMutable(); + parameters_.set(index, builderForValue.build()); + onChanged(); + } else { + parametersBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addParameters(com.google.cloud.geminidataanalytics.v1beta.QueryParameter value) { + if (parametersBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureParametersIsMutable(); + parameters_.add(value); + onChanged(); + } else { + parametersBuilder_.addMessage(value); + } + return this; + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addParameters( + int index, com.google.cloud.geminidataanalytics.v1beta.QueryParameter value) { + if (parametersBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureParametersIsMutable(); + parameters_.add(index, value); + onChanged(); + } else { + parametersBuilder_.addMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addParameters( + com.google.cloud.geminidataanalytics.v1beta.QueryParameter.Builder builderForValue) { + if (parametersBuilder_ == null) { + ensureParametersIsMutable(); + parameters_.add(builderForValue.build()); + onChanged(); + } else { + parametersBuilder_.addMessage(builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addParameters( + int index, + com.google.cloud.geminidataanalytics.v1beta.QueryParameter.Builder builderForValue) { + if (parametersBuilder_ == null) { + ensureParametersIsMutable(); + parameters_.add(index, builderForValue.build()); + onChanged(); + } else { + parametersBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllParameters( + java.lang.Iterable + values) { + if (parametersBuilder_ == null) { + ensureParametersIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, parameters_); + onChanged(); + } else { + parametersBuilder_.addAllMessages(values); + } + return this; + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearParameters() { + if (parametersBuilder_ == null) { + parameters_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + } else { + parametersBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeParameters(int index) { + if (parametersBuilder_ == null) { + ensureParametersIsMutable(); + parameters_.remove(index); + onChanged(); + } else { + parametersBuilder_.remove(index); + } + return this; + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.QueryParameter.Builder getParametersBuilder( + int index) { + return internalGetParametersFieldBuilder().getBuilder(index); + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.QueryParameterOrBuilder + getParametersOrBuilder(int index) { + if (parametersBuilder_ == null) { + return parameters_.get(index); + } else { + return parametersBuilder_.getMessageOrBuilder(index); + } + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.QueryParameterOrBuilder> + getParametersOrBuilderList() { + if (parametersBuilder_ != null) { + return parametersBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(parameters_); + } + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.QueryParameter.Builder + addParametersBuilder() { + return internalGetParametersFieldBuilder() + .addBuilder( + com.google.cloud.geminidataanalytics.v1beta.QueryParameter.getDefaultInstance()); + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.QueryParameter.Builder addParametersBuilder( + int index) { + return internalGetParametersFieldBuilder() + .addBuilder( + index, + com.google.cloud.geminidataanalytics.v1beta.QueryParameter.getDefaultInstance()); + } + + /** + * + * + *
        +     * Optional. The list of query parameters.
        +     * Example: The parameterized SQL query
        +     * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +     * id.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List + getParametersBuilderList() { + return internalGetParametersFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.QueryParameter, + com.google.cloud.geminidataanalytics.v1beta.QueryParameter.Builder, + com.google.cloud.geminidataanalytics.v1beta.QueryParameterOrBuilder> + internalGetParametersFieldBuilder() { + if (parametersBuilder_ == null) { + parametersBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.QueryParameter, + com.google.cloud.geminidataanalytics.v1beta.QueryParameter.Builder, + com.google.cloud.geminidataanalytics.v1beta.QueryParameterOrBuilder>( + parameters_, ((bitField0_ & 0x00000004) != 0), getParentForChildren(), isClean()); + parameters_ = null; + } + return parametersBuilder_; + } + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.ExampleQuery) } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ExampleQueryOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ExampleQueryOrBuilder.java index fca069a31d87..9ec3e8fe9de0 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ExampleQueryOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ExampleQueryOrBuilder.java @@ -99,5 +99,87 @@ public interface ExampleQueryOrBuilder */ com.google.protobuf.ByteString getNaturalLanguageQuestionBytes(); + /** + * + * + *
        +   * Optional. The list of query parameters.
        +   * Example: The parameterized SQL query
        +   * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +   * id.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List getParametersList(); + + /** + * + * + *
        +   * Optional. The list of query parameters.
        +   * Example: The parameterized SQL query
        +   * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +   * id.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.QueryParameter getParameters(int index); + + /** + * + * + *
        +   * Optional. The list of query parameters.
        +   * Example: The parameterized SQL query
        +   * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +   * id.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getParametersCount(); + + /** + * + * + *
        +   * Optional. The list of query parameters.
        +   * Example: The parameterized SQL query
        +   * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +   * id.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List + getParametersOrBuilderList(); + + /** + * + * + *
        +   * Optional. The list of query parameters.
        +   * Example: The parameterized SQL query
        +   * "SELECT * FROM my_table WHERE id = @id" can be matched with any value of
        +   * id.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameter parameters = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.QueryParameterOrBuilder getParametersOrBuilder( + int index); + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.QueryCase getQueryCase(); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Field.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Field.java index 513a22792079..30baf256a3f7 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Field.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/Field.java @@ -593,8 +593,6 @@ public com.google.cloud.geminidataanalytics.v1beta.FieldOrBuilder getSubfieldsOr * *
            * Optional. Field category, not required, currently only useful for Looker.
        -   * We are using a string to avoid depending on an external package and keep
        -   * this package self-contained.
            * 
        * * string category = 10 [(.google.api.field_behavior) = OPTIONAL]; @@ -619,8 +617,6 @@ public java.lang.String getCategory() { * *
            * Optional. Field category, not required, currently only useful for Looker.
        -   * We are using a string to avoid depending on an external package and keep
        -   * this package self-contained.
            * 
        * * string category = 10 [(.google.api.field_behavior) = OPTIONAL]; @@ -2674,8 +2670,6 @@ public com.google.cloud.geminidataanalytics.v1beta.Field.Builder addSubfieldsBui * *
              * Optional. Field category, not required, currently only useful for Looker.
        -     * We are using a string to avoid depending on an external package and keep
        -     * this package self-contained.
              * 
        * * string category = 10 [(.google.api.field_behavior) = OPTIONAL]; @@ -2699,8 +2693,6 @@ public java.lang.String getCategory() { * *
              * Optional. Field category, not required, currently only useful for Looker.
        -     * We are using a string to avoid depending on an external package and keep
        -     * this package self-contained.
              * 
        * * string category = 10 [(.google.api.field_behavior) = OPTIONAL]; @@ -2724,8 +2716,6 @@ public com.google.protobuf.ByteString getCategoryBytes() { * *
              * Optional. Field category, not required, currently only useful for Looker.
        -     * We are using a string to avoid depending on an external package and keep
        -     * this package self-contained.
              * 
        * * string category = 10 [(.google.api.field_behavior) = OPTIONAL]; @@ -2748,8 +2738,6 @@ public Builder setCategory(java.lang.String value) { * *
              * Optional. Field category, not required, currently only useful for Looker.
        -     * We are using a string to avoid depending on an external package and keep
        -     * this package self-contained.
              * 
        * * string category = 10 [(.google.api.field_behavior) = OPTIONAL]; @@ -2768,8 +2756,6 @@ public Builder clearCategory() { * *
              * Optional. Field category, not required, currently only useful for Looker.
        -     * We are using a string to avoid depending on an external package and keep
        -     * this package self-contained.
              * 
        * * string category = 10 [(.google.api.field_behavior) = OPTIONAL]; diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/FieldOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/FieldOrBuilder.java index 5cde92ee101f..4af7bdec9e91 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/FieldOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/FieldOrBuilder.java @@ -351,8 +351,6 @@ public interface FieldOrBuilder * *
            * Optional. Field category, not required, currently only useful for Looker.
        -   * We are using a string to avoid depending on an external package and keep
        -   * this package self-contained.
            * 
        * * string category = 10 [(.google.api.field_behavior) = OPTIONAL]; @@ -366,8 +364,6 @@ public interface FieldOrBuilder * *
            * Optional. Field category, not required, currently only useful for Looker.
        -   * We are using a string to avoid depending on an external package and keep
        -   * this package self-contained.
            * 
        * * string category = 10 [(.google.api.field_behavior) = OPTIONAL]; diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListConversationsRequest.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListConversationsRequest.java index 09485d6b3210..95131388d152 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListConversationsRequest.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListConversationsRequest.java @@ -139,8 +139,9 @@ public com.google.protobuf.ByteString getParentBytes() { * *
            * Optional. Requested page size. Server may return fewer items than
        -   * requested. The max page size is 100. All larger page sizes will be coerced
        -   * to 100. If unspecified, server will pick 50 as an approperiate default.
        +   * requested. The max page size is `100`. All larger page sizes will be
        +   * coerced to `100`. If unspecified, server will pick `50` as an appropriate
        +   * default.
            * 
        * * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL]; @@ -786,8 +787,9 @@ public Builder setParentBytes(com.google.protobuf.ByteString value) { * *
              * Optional. Requested page size. Server may return fewer items than
        -     * requested. The max page size is 100. All larger page sizes will be coerced
        -     * to 100. If unspecified, server will pick 50 as an approperiate default.
        +     * requested. The max page size is `100`. All larger page sizes will be
        +     * coerced to `100`. If unspecified, server will pick `50` as an appropriate
        +     * default.
              * 
        * * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL]; @@ -804,8 +806,9 @@ public int getPageSize() { * *
              * Optional. Requested page size. Server may return fewer items than
        -     * requested. The max page size is 100. All larger page sizes will be coerced
        -     * to 100. If unspecified, server will pick 50 as an approperiate default.
        +     * requested. The max page size is `100`. All larger page sizes will be
        +     * coerced to `100`. If unspecified, server will pick `50` as an appropriate
        +     * default.
              * 
        * * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL]; @@ -826,8 +829,9 @@ public Builder setPageSize(int value) { * *
              * Optional. Requested page size. Server may return fewer items than
        -     * requested. The max page size is 100. All larger page sizes will be coerced
        -     * to 100. If unspecified, server will pick 50 as an approperiate default.
        +     * requested. The max page size is `100`. All larger page sizes will be
        +     * coerced to `100`. If unspecified, server will pick `50` as an appropriate
        +     * default.
              * 
        * * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL]; diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListConversationsRequestOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListConversationsRequestOrBuilder.java index 7cc5aa09bbb0..0a8de0b2d6bc 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListConversationsRequestOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListConversationsRequestOrBuilder.java @@ -63,8 +63,9 @@ public interface ListConversationsRequestOrBuilder * *
            * Optional. Requested page size. Server may return fewer items than
        -   * requested. The max page size is 100. All larger page sizes will be coerced
        -   * to 100. If unspecified, server will pick 50 as an approperiate default.
        +   * requested. The max page size is `100`. All larger page sizes will be
        +   * coerced to `100`. If unspecified, server will pick `50` as an appropriate
        +   * default.
            * 
        * * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL]; diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListMessagesRequest.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListMessagesRequest.java index 67c0f2408532..a6e2be41153d 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListMessagesRequest.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListMessagesRequest.java @@ -141,8 +141,9 @@ public com.google.protobuf.ByteString getParentBytes() { * *
            * Optional. Requested page size. Server may return fewer items than
        -   * requested. The max page size is 100. All larger page sizes will be coerced
        -   * to 100. If unspecified, server will pick 50 as an approperiate default.
        +   * requested. The max page size is `100`. All larger page sizes will be
        +   * coerced to `100`. If unspecified, server will pick `50` as an appropriate
        +   * default.
            * 
        * * int32 page_size = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -793,8 +794,9 @@ public Builder setParentBytes(com.google.protobuf.ByteString value) { * *
              * Optional. Requested page size. Server may return fewer items than
        -     * requested. The max page size is 100. All larger page sizes will be coerced
        -     * to 100. If unspecified, server will pick 50 as an approperiate default.
        +     * requested. The max page size is `100`. All larger page sizes will be
        +     * coerced to `100`. If unspecified, server will pick `50` as an appropriate
        +     * default.
              * 
        * * int32 page_size = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -811,8 +813,9 @@ public int getPageSize() { * *
              * Optional. Requested page size. Server may return fewer items than
        -     * requested. The max page size is 100. All larger page sizes will be coerced
        -     * to 100. If unspecified, server will pick 50 as an approperiate default.
        +     * requested. The max page size is `100`. All larger page sizes will be
        +     * coerced to `100`. If unspecified, server will pick `50` as an appropriate
        +     * default.
              * 
        * * int32 page_size = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -833,8 +836,9 @@ public Builder setPageSize(int value) { * *
              * Optional. Requested page size. Server may return fewer items than
        -     * requested. The max page size is 100. All larger page sizes will be coerced
        -     * to 100. If unspecified, server will pick 50 as an approperiate default.
        +     * requested. The max page size is `100`. All larger page sizes will be
        +     * coerced to `100`. If unspecified, server will pick `50` as an appropriate
        +     * default.
              * 
        * * int32 page_size = 3 [(.google.api.field_behavior) = OPTIONAL]; diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListMessagesRequestOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListMessagesRequestOrBuilder.java index ed023a186a68..99e67c427e62 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListMessagesRequestOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ListMessagesRequestOrBuilder.java @@ -65,8 +65,9 @@ public interface ListMessagesRequestOrBuilder * *
            * Optional. Requested page size. Server may return fewer items than
        -   * requested. The max page size is 100. All larger page sizes will be coerced
        -   * to 100. If unspecified, server will pick 50 as an approperiate default.
        +   * requested. The max page size is `100`. All larger page sizes will be
        +   * coerced to `100`. If unspecified, server will pick `50` as an appropriate
        +   * default.
            * 
        * * int32 page_size = 3 [(.google.api.field_behavior) = OPTIONAL]; diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerExploreReferences.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerExploreReferences.java index 71e3a6e83387..da704cfe1f7b 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerExploreReferences.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerExploreReferences.java @@ -169,7 +169,8 @@ public com.google.cloud.geminidataanalytics.v1beta.LookerExploreReference getExp * * *
        -   * Optional. The credentials to use when calling the Looker API.
        +   * Optional. Deprecated: Use credentials in ChatRequest.
        +   * The credentials to use when calling the Looker API.
            *
            * Currently supports both OAuth token and API key-based credentials, as
            * described in
        @@ -178,12 +179,15 @@ public com.google.cloud.geminidataanalytics.v1beta.LookerExploreReference getExp
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.LookerExploreReferences.credentials is + * deprecated. See google/cloud/geminidataanalytics/v1beta/datasource.proto;l=312 * @return Whether the credentials field is set. */ @java.lang.Override + @java.lang.Deprecated public boolean hasCredentials() { return ((bitField0_ & 0x00000001) != 0); } @@ -192,7 +196,8 @@ public boolean hasCredentials() { * * *
        -   * Optional. The credentials to use when calling the Looker API.
        +   * Optional. Deprecated: Use credentials in ChatRequest.
        +   * The credentials to use when calling the Looker API.
            *
            * Currently supports both OAuth token and API key-based credentials, as
            * described in
        @@ -201,12 +206,15 @@ public boolean hasCredentials() {
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.LookerExploreReferences.credentials is + * deprecated. See google/cloud/geminidataanalytics/v1beta/datasource.proto;l=312 * @return The credentials. */ @java.lang.Override + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials() { return credentials_ == null ? com.google.cloud.geminidataanalytics.v1beta.Credentials.getDefaultInstance() @@ -217,7 +225,8 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials() * * *
        -   * Optional. The credentials to use when calling the Looker API.
        +   * Optional. Deprecated: Use credentials in ChatRequest.
        +   * The credentials to use when calling the Looker API.
            *
            * Currently supports both OAuth token and API key-based credentials, as
            * described in
        @@ -226,10 +235,11 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials()
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.CredentialsOrBuilder getCredentialsOrBuilder() { return credentials_ == null @@ -1095,7 +1105,8 @@ public Builder removeExploreReferences(int index) { * * *
        -     * Optional. The credentials to use when calling the Looker API.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker API.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1104,11 +1115,14 @@ public Builder removeExploreReferences(int index) {
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.LookerExploreReferences.credentials is + * deprecated. See google/cloud/geminidataanalytics/v1beta/datasource.proto;l=312 * @return Whether the credentials field is set. */ + @java.lang.Deprecated public boolean hasCredentials() { return ((bitField0_ & 0x00000002) != 0); } @@ -1117,7 +1131,8 @@ public boolean hasCredentials() { * * *
        -     * Optional. The credentials to use when calling the Looker API.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker API.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1126,11 +1141,14 @@ public boolean hasCredentials() {
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.LookerExploreReferences.credentials is + * deprecated. See google/cloud/geminidataanalytics/v1beta/datasource.proto;l=312 * @return The credentials. */ + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials() { if (credentialsBuilder_ == null) { return credentials_ == null @@ -1145,7 +1163,8 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials() * * *
        -     * Optional. The credentials to use when calling the Looker API.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker API.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1154,9 +1173,10 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials()
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public Builder setCredentials(com.google.cloud.geminidataanalytics.v1beta.Credentials value) { if (credentialsBuilder_ == null) { if (value == null) { @@ -1175,7 +1195,8 @@ public Builder setCredentials(com.google.cloud.geminidataanalytics.v1beta.Creden * * *
        -     * Optional. The credentials to use when calling the Looker API.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker API.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1184,9 +1205,10 @@ public Builder setCredentials(com.google.cloud.geminidataanalytics.v1beta.Creden
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public Builder setCredentials( com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder builderForValue) { if (credentialsBuilder_ == null) { @@ -1203,7 +1225,8 @@ public Builder setCredentials( * * *
        -     * Optional. The credentials to use when calling the Looker API.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker API.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1212,9 +1235,10 @@ public Builder setCredentials(
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public Builder mergeCredentials(com.google.cloud.geminidataanalytics.v1beta.Credentials value) { if (credentialsBuilder_ == null) { if (((bitField0_ & 0x00000002) != 0) @@ -1239,7 +1263,8 @@ public Builder mergeCredentials(com.google.cloud.geminidataanalytics.v1beta.Cred * * *
        -     * Optional. The credentials to use when calling the Looker API.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker API.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1248,9 +1273,10 @@ public Builder mergeCredentials(com.google.cloud.geminidataanalytics.v1beta.Cred
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public Builder clearCredentials() { bitField0_ = (bitField0_ & ~0x00000002); credentials_ = null; @@ -1266,7 +1292,8 @@ public Builder clearCredentials() { * * *
        -     * Optional. The credentials to use when calling the Looker API.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker API.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1275,9 +1302,10 @@ public Builder clearCredentials() {
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder getCredentialsBuilder() { bitField0_ |= 0x00000002; onChanged(); @@ -1288,7 +1316,8 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder getCreden * * *
        -     * Optional. The credentials to use when calling the Looker API.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker API.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1297,9 +1326,10 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder getCreden
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.CredentialsOrBuilder getCredentialsOrBuilder() { if (credentialsBuilder_ != null) { @@ -1315,7 +1345,8 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder getCreden * * *
        -     * Optional. The credentials to use when calling the Looker API.
        +     * Optional. Deprecated: Use credentials in ChatRequest.
        +     * The credentials to use when calling the Looker API.
              *
              * Currently supports both OAuth token and API key-based credentials, as
              * described in
        @@ -1324,7 +1355,7 @@ public com.google.cloud.geminidataanalytics.v1beta.Credentials.Builder getCreden
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ private com.google.protobuf.SingleFieldBuilder< diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerExploreReferencesOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerExploreReferencesOrBuilder.java index bb7cb31ed730..451969db67ff 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerExploreReferencesOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerExploreReferencesOrBuilder.java @@ -100,7 +100,8 @@ com.google.cloud.geminidataanalytics.v1beta.LookerExploreReference getExploreRef * * *
        -   * Optional. The credentials to use when calling the Looker API.
        +   * Optional. Deprecated: Use credentials in ChatRequest.
        +   * The credentials to use when calling the Looker API.
            *
            * Currently supports both OAuth token and API key-based credentials, as
            * described in
        @@ -109,18 +110,22 @@ com.google.cloud.geminidataanalytics.v1beta.LookerExploreReference getExploreRef
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.LookerExploreReferences.credentials is + * deprecated. See google/cloud/geminidataanalytics/v1beta/datasource.proto;l=312 * @return Whether the credentials field is set. */ + @java.lang.Deprecated boolean hasCredentials(); /** * * *
        -   * Optional. The credentials to use when calling the Looker API.
        +   * Optional. Deprecated: Use credentials in ChatRequest.
        +   * The credentials to use when calling the Looker API.
            *
            * Currently supports both OAuth token and API key-based credentials, as
            * described in
        @@ -129,18 +134,22 @@ com.google.cloud.geminidataanalytics.v1beta.LookerExploreReference getExploreRef
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.LookerExploreReferences.credentials is + * deprecated. See google/cloud/geminidataanalytics/v1beta/datasource.proto;l=312 * @return The credentials. */ + @java.lang.Deprecated com.google.cloud.geminidataanalytics.v1beta.Credentials getCredentials(); /** * * *
        -   * Optional. The credentials to use when calling the Looker API.
        +   * Optional. Deprecated: Use credentials in ChatRequest.
        +   * The credentials to use when calling the Looker API.
            *
            * Currently supports both OAuth token and API key-based credentials, as
            * described in
        @@ -149,8 +158,9 @@ com.google.cloud.geminidataanalytics.v1beta.LookerExploreReference getExploreRef
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.Credentials credentials = 2 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated com.google.cloud.geminidataanalytics.v1beta.CredentialsOrBuilder getCredentialsOrBuilder(); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerQuery.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerQuery.java index b9e26f1909b9..e22689168a7f 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerQuery.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerQuery.java @@ -60,6 +60,8 @@ private LookerQuery() { filters_ = java.util.Collections.emptyList(); sorts_ = com.google.protobuf.LazyStringArrayList.emptyList(); limit_ = ""; + queryId_ = ""; + clientId_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -112,10 +114,27 @@ public interface FilterOrBuilder * * *
        -     * Required. The value for the field to filter on.
        +     * Optional. The value for the field to filter on.
        +     * Optional so we can preserve the default value as an empty
        +     * string, important to get a valid and working Looker Explore url.
              * 
        * - * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * optional string value = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return Whether the value field is set. + */ + boolean hasValue(); + + /** + * + * + *
        +     * Optional. The value for the field to filter on.
        +     * Optional so we can preserve the default value as an empty
        +     * string, important to get a valid and working Looker Explore url.
        +     * 
        + * + * optional string value = 2 [(.google.api.field_behavior) = OPTIONAL]; * * @return The value. */ @@ -125,10 +144,12 @@ public interface FilterOrBuilder * * *
        -     * Required. The value for the field to filter on.
        +     * Optional. The value for the field to filter on.
        +     * Optional so we can preserve the default value as an empty
        +     * string, important to get a valid and working Looker Explore url.
              * 
        * - * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * optional string value = 2 [(.google.api.field_behavior) = OPTIONAL]; * * @return The bytes for value. */ @@ -185,6 +206,7 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { com.google.cloud.geminidataanalytics.v1beta.LookerQuery.Filter.Builder.class); } + private int bitField0_; public static final int FIELD_FIELD_NUMBER = 1; @SuppressWarnings("serial") @@ -247,10 +269,30 @@ public com.google.protobuf.ByteString getFieldBytes() { * * *
        -     * Required. The value for the field to filter on.
        +     * Optional. The value for the field to filter on.
        +     * Optional so we can preserve the default value as an empty
        +     * string, important to get a valid and working Looker Explore url.
        +     * 
        + * + * optional string value = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return Whether the value field is set. + */ + @java.lang.Override + public boolean hasValue() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
        +     * Optional. The value for the field to filter on.
        +     * Optional so we can preserve the default value as an empty
        +     * string, important to get a valid and working Looker Explore url.
              * 
        * - * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * optional string value = 2 [(.google.api.field_behavior) = OPTIONAL]; * * @return The value. */ @@ -271,10 +313,12 @@ public java.lang.String getValue() { * * *
        -     * Required. The value for the field to filter on.
        +     * Optional. The value for the field to filter on.
        +     * Optional so we can preserve the default value as an empty
        +     * string, important to get a valid and working Looker Explore url.
              * 
        * - * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * optional string value = 2 [(.google.api.field_behavior) = OPTIONAL]; * * @return The bytes for value. */ @@ -308,7 +352,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessage.isStringEmpty(field_)) { com.google.protobuf.GeneratedMessage.writeString(output, 1, field_); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(value_)) { + if (((bitField0_ & 0x00000001) != 0)) { com.google.protobuf.GeneratedMessage.writeString(output, 2, value_); } getUnknownFields().writeTo(output); @@ -323,7 +367,7 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessage.isStringEmpty(field_)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(1, field_); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(value_)) { + if (((bitField0_ & 0x00000001) != 0)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(2, value_); } size += getUnknownFields().getSerializedSize(); @@ -343,7 +387,10 @@ public boolean equals(final java.lang.Object obj) { (com.google.cloud.geminidataanalytics.v1beta.LookerQuery.Filter) obj; if (!getField().equals(other.getField())) return false; - if (!getValue().equals(other.getValue())) return false; + if (hasValue() != other.hasValue()) return false; + if (hasValue()) { + if (!getValue().equals(other.getValue())) return false; + } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -357,8 +404,10 @@ public int hashCode() { hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + FIELD_FIELD_NUMBER; hash = (53 * hash) + getField().hashCode(); - hash = (37 * hash) + VALUE_FIELD_NUMBER; - hash = (53 * hash) + getValue().hashCode(); + if (hasValue()) { + hash = (37 * hash) + VALUE_FIELD_NUMBER; + hash = (53 * hash) + getValue().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -543,9 +592,12 @@ private void buildPartial0( if (((from_bitField0_ & 0x00000001) != 0)) { result.field_ = field_; } + int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000002) != 0)) { result.value_ = value_; + to_bitField0_ |= 0x00000001; } + result.bitField0_ |= to_bitField0_; } @java.lang.Override @@ -568,7 +620,7 @@ public Builder mergeFrom( bitField0_ |= 0x00000001; onChanged(); } - if (!other.getValue().isEmpty()) { + if (other.hasValue()) { value_ = other.value_; bitField0_ |= 0x00000002; onChanged(); @@ -747,10 +799,29 @@ public Builder setFieldBytes(com.google.protobuf.ByteString value) { * * *
        -       * Required. The value for the field to filter on.
        +       * Optional. The value for the field to filter on.
        +       * Optional so we can preserve the default value as an empty
        +       * string, important to get a valid and working Looker Explore url.
                * 
        * - * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * optional string value = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return Whether the value field is set. + */ + public boolean hasValue() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
        +       * Optional. The value for the field to filter on.
        +       * Optional so we can preserve the default value as an empty
        +       * string, important to get a valid and working Looker Explore url.
        +       * 
        + * + * optional string value = 2 [(.google.api.field_behavior) = OPTIONAL]; * * @return The value. */ @@ -770,10 +841,12 @@ public java.lang.String getValue() { * * *
        -       * Required. The value for the field to filter on.
        +       * Optional. The value for the field to filter on.
        +       * Optional so we can preserve the default value as an empty
        +       * string, important to get a valid and working Looker Explore url.
                * 
        * - * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * optional string value = 2 [(.google.api.field_behavior) = OPTIONAL]; * * @return The bytes for value. */ @@ -793,10 +866,12 @@ public com.google.protobuf.ByteString getValueBytes() { * * *
        -       * Required. The value for the field to filter on.
        +       * Optional. The value for the field to filter on.
        +       * Optional so we can preserve the default value as an empty
        +       * string, important to get a valid and working Looker Explore url.
                * 
        * - * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * optional string value = 2 [(.google.api.field_behavior) = OPTIONAL]; * * @param value The value to set. * @return This builder for chaining. @@ -815,10 +890,12 @@ public Builder setValue(java.lang.String value) { * * *
        -       * Required. The value for the field to filter on.
        +       * Optional. The value for the field to filter on.
        +       * Optional so we can preserve the default value as an empty
        +       * string, important to get a valid and working Looker Explore url.
                * 
        * - * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * optional string value = 2 [(.google.api.field_behavior) = OPTIONAL]; * * @return This builder for chaining. */ @@ -833,10 +910,12 @@ public Builder clearValue() { * * *
        -       * Required. The value for the field to filter on.
        +       * Optional. The value for the field to filter on.
        +       * Optional so we can preserve the default value as an empty
        +       * string, important to get a valid and working Looker Explore url.
                * 
        * - * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * optional string value = 2 [(.google.api.field_behavior) = OPTIONAL]; * * @param value The bytes for value to set. * @return This builder for chaining. @@ -1308,6 +1387,156 @@ public com.google.protobuf.ByteString getLimitBytes() { } } + public static final int QUERY_ID_FIELD_NUMBER = 10; + + @SuppressWarnings("serial") + private volatile java.lang.Object queryId_ = ""; + + /** + * + * + *
        +   * Optional. The primary identifier for the query resource in Looker, used for
        +   * API operations. Maps to `id` (or `slug`) in the Looker API `Query`
        +   * resource.
        +   * 
        + * + * optional string query_id = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return Whether the queryId field is set. + */ + @java.lang.Override + public boolean hasQueryId() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
        +   * Optional. The primary identifier for the query resource in Looker, used for
        +   * API operations. Maps to `id` (or `slug`) in the Looker API `Query`
        +   * resource.
        +   * 
        + * + * optional string query_id = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The queryId. + */ + @java.lang.Override + public java.lang.String getQueryId() { + java.lang.Object ref = queryId_; + 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(); + queryId_ = s; + return s; + } + } + + /** + * + * + *
        +   * Optional. The primary identifier for the query resource in Looker, used for
        +   * API operations. Maps to `id` (or `slug`) in the Looker API `Query`
        +   * resource.
        +   * 
        + * + * optional string query_id = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for queryId. + */ + @java.lang.Override + public com.google.protobuf.ByteString getQueryIdBytes() { + java.lang.Object ref = queryId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + queryId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int CLIENT_ID_FIELD_NUMBER = 11; + + @SuppressWarnings("serial") + private volatile java.lang.Object clientId_ = ""; + + /** + * + * + *
        +   * Optional. The short alphanumeric identifier for the query, used for share
        +   * links and Explore URLs (e.g., in the `qid` parameter). Maps to `client_id`
        +   * in the Looker API `Query` resource.
        +   * 
        + * + * optional string client_id = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return Whether the clientId field is set. + */ + @java.lang.Override + public boolean hasClientId() { + return ((bitField0_ & 0x00000004) != 0); + } + + /** + * + * + *
        +   * Optional. The short alphanumeric identifier for the query, used for share
        +   * links and Explore URLs (e.g., in the `qid` parameter). Maps to `client_id`
        +   * in the Looker API `Query` resource.
        +   * 
        + * + * optional string client_id = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The clientId. + */ + @java.lang.Override + public java.lang.String getClientId() { + java.lang.Object ref = clientId_; + 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(); + clientId_ = s; + return s; + } + } + + /** + * + * + *
        +   * Optional. The short alphanumeric identifier for the query, used for share
        +   * links and Explore URLs (e.g., in the `qid` parameter). Maps to `client_id`
        +   * in the Looker API `Query` resource.
        +   * 
        + * + * optional string client_id = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for clientId. + */ + @java.lang.Override + public com.google.protobuf.ByteString getClientIdBytes() { + java.lang.Object ref = clientId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + clientId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -1340,6 +1569,12 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (((bitField0_ & 0x00000001) != 0)) { com.google.protobuf.GeneratedMessage.writeString(output, 6, limit_); } + if (((bitField0_ & 0x00000002) != 0)) { + com.google.protobuf.GeneratedMessage.writeString(output, 10, queryId_); + } + if (((bitField0_ & 0x00000004) != 0)) { + com.google.protobuf.GeneratedMessage.writeString(output, 11, clientId_); + } getUnknownFields().writeTo(output); } @@ -1377,6 +1612,12 @@ public int getSerializedSize() { if (((bitField0_ & 0x00000001) != 0)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(6, limit_); } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(10, queryId_); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(11, clientId_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -1402,6 +1643,14 @@ public boolean equals(final java.lang.Object obj) { if (hasLimit()) { if (!getLimit().equals(other.getLimit())) return false; } + if (hasQueryId() != other.hasQueryId()) return false; + if (hasQueryId()) { + if (!getQueryId().equals(other.getQueryId())) return false; + } + if (hasClientId() != other.hasClientId()) return false; + if (hasClientId()) { + if (!getClientId().equals(other.getClientId())) return false; + } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -1433,6 +1682,14 @@ public int hashCode() { hash = (37 * hash) + LIMIT_FIELD_NUMBER; hash = (53 * hash) + getLimit().hashCode(); } + if (hasQueryId()) { + hash = (37 * hash) + QUERY_ID_FIELD_NUMBER; + hash = (53 * hash) + getQueryId().hashCode(); + } + if (hasClientId()) { + hash = (37 * hash) + CLIENT_ID_FIELD_NUMBER; + hash = (53 * hash) + getClientId().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -1588,6 +1845,8 @@ public Builder clear() { bitField0_ = (bitField0_ & ~0x00000008); sorts_ = com.google.protobuf.LazyStringArrayList.emptyList(); limit_ = ""; + queryId_ = ""; + clientId_ = ""; return this; } @@ -1657,6 +1916,14 @@ private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.LookerQue result.limit_ = limit_; to_bitField0_ |= 0x00000001; } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.queryId_ = queryId_; + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.clientId_ = clientId_; + to_bitField0_ |= 0x00000004; + } result.bitField0_ |= to_bitField0_; } @@ -1735,6 +2002,16 @@ public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.LookerQuery bitField0_ |= 0x00000020; onChanged(); } + if (other.hasQueryId()) { + queryId_ = other.queryId_; + bitField0_ |= 0x00000040; + onChanged(); + } + if (other.hasClientId()) { + clientId_ = other.clientId_; + bitField0_ |= 0x00000080; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -1807,6 +2084,18 @@ public Builder mergeFrom( bitField0_ |= 0x00000020; break; } // case 50 + case 82: + { + queryId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000040; + break; + } // case 82 + case 90: + { + clientId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000080; + break; + } // case 90 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -2960,6 +3249,282 @@ public Builder setLimitBytes(com.google.protobuf.ByteString value) { return this; } + private java.lang.Object queryId_ = ""; + + /** + * + * + *
        +     * Optional. The primary identifier for the query resource in Looker, used for
        +     * API operations. Maps to `id` (or `slug`) in the Looker API `Query`
        +     * resource.
        +     * 
        + * + * optional string query_id = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return Whether the queryId field is set. + */ + public boolean hasQueryId() { + return ((bitField0_ & 0x00000040) != 0); + } + + /** + * + * + *
        +     * Optional. The primary identifier for the query resource in Looker, used for
        +     * API operations. Maps to `id` (or `slug`) in the Looker API `Query`
        +     * resource.
        +     * 
        + * + * optional string query_id = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The queryId. + */ + public java.lang.String getQueryId() { + java.lang.Object ref = queryId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + queryId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * Optional. The primary identifier for the query resource in Looker, used for
        +     * API operations. Maps to `id` (or `slug`) in the Looker API `Query`
        +     * resource.
        +     * 
        + * + * optional string query_id = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for queryId. + */ + public com.google.protobuf.ByteString getQueryIdBytes() { + java.lang.Object ref = queryId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + queryId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * Optional. The primary identifier for the query resource in Looker, used for
        +     * API operations. Maps to `id` (or `slug`) in the Looker API `Query`
        +     * resource.
        +     * 
        + * + * optional string query_id = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The queryId to set. + * @return This builder for chaining. + */ + public Builder setQueryId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + queryId_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The primary identifier for the query resource in Looker, used for
        +     * API operations. Maps to `id` (or `slug`) in the Looker API `Query`
        +     * resource.
        +     * 
        + * + * optional string query_id = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearQueryId() { + queryId_ = getDefaultInstance().getQueryId(); + bitField0_ = (bitField0_ & ~0x00000040); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The primary identifier for the query resource in Looker, used for
        +     * API operations. Maps to `id` (or `slug`) in the Looker API `Query`
        +     * resource.
        +     * 
        + * + * optional string query_id = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for queryId to set. + * @return This builder for chaining. + */ + public Builder setQueryIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + queryId_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + private java.lang.Object clientId_ = ""; + + /** + * + * + *
        +     * Optional. The short alphanumeric identifier for the query, used for share
        +     * links and Explore URLs (e.g., in the `qid` parameter). Maps to `client_id`
        +     * in the Looker API `Query` resource.
        +     * 
        + * + * optional string client_id = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return Whether the clientId field is set. + */ + public boolean hasClientId() { + return ((bitField0_ & 0x00000080) != 0); + } + + /** + * + * + *
        +     * Optional. The short alphanumeric identifier for the query, used for share
        +     * links and Explore URLs (e.g., in the `qid` parameter). Maps to `client_id`
        +     * in the Looker API `Query` resource.
        +     * 
        + * + * optional string client_id = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The clientId. + */ + public java.lang.String getClientId() { + java.lang.Object ref = clientId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + clientId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * Optional. The short alphanumeric identifier for the query, used for share
        +     * links and Explore URLs (e.g., in the `qid` parameter). Maps to `client_id`
        +     * in the Looker API `Query` resource.
        +     * 
        + * + * optional string client_id = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for clientId. + */ + public com.google.protobuf.ByteString getClientIdBytes() { + java.lang.Object ref = clientId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + clientId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * Optional. The short alphanumeric identifier for the query, used for share
        +     * links and Explore URLs (e.g., in the `qid` parameter). Maps to `client_id`
        +     * in the Looker API `Query` resource.
        +     * 
        + * + * optional string client_id = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The clientId to set. + * @return This builder for chaining. + */ + public Builder setClientId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + clientId_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The short alphanumeric identifier for the query, used for share
        +     * links and Explore URLs (e.g., in the `qid` parameter). Maps to `client_id`
        +     * in the Looker API `Query` resource.
        +     * 
        + * + * optional string client_id = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearClientId() { + clientId_ = getDefaultInstance().getClientId(); + bitField0_ = (bitField0_ & ~0x00000080); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The short alphanumeric identifier for the query, used for share
        +     * links and Explore URLs (e.g., in the `qid` parameter). Maps to `client_id`
        +     * in the Looker API `Query` resource.
        +     * 
        + * + * optional string client_id = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for clientId to set. + * @return This builder for chaining. + */ + public Builder setClientIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + clientId_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.LookerQuery) } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerQueryOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerQueryOrBuilder.java index 3c47142e8c56..9d7b50af9ecd 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerQueryOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerQueryOrBuilder.java @@ -291,4 +291,94 @@ com.google.cloud.geminidataanalytics.v1beta.LookerQuery.FilterOrBuilder getFilte * @return The bytes for limit. */ com.google.protobuf.ByteString getLimitBytes(); + + /** + * + * + *
        +   * Optional. The primary identifier for the query resource in Looker, used for
        +   * API operations. Maps to `id` (or `slug`) in the Looker API `Query`
        +   * resource.
        +   * 
        + * + * optional string query_id = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return Whether the queryId field is set. + */ + boolean hasQueryId(); + + /** + * + * + *
        +   * Optional. The primary identifier for the query resource in Looker, used for
        +   * API operations. Maps to `id` (or `slug`) in the Looker API `Query`
        +   * resource.
        +   * 
        + * + * optional string query_id = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The queryId. + */ + java.lang.String getQueryId(); + + /** + * + * + *
        +   * Optional. The primary identifier for the query resource in Looker, used for
        +   * API operations. Maps to `id` (or `slug`) in the Looker API `Query`
        +   * resource.
        +   * 
        + * + * optional string query_id = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for queryId. + */ + com.google.protobuf.ByteString getQueryIdBytes(); + + /** + * + * + *
        +   * Optional. The short alphanumeric identifier for the query, used for share
        +   * links and Explore URLs (e.g., in the `qid` parameter). Maps to `client_id`
        +   * in the Looker API `Query` resource.
        +   * 
        + * + * optional string client_id = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return Whether the clientId field is set. + */ + boolean hasClientId(); + + /** + * + * + *
        +   * Optional. The short alphanumeric identifier for the query, used for share
        +   * links and Explore URLs (e.g., in the `qid` parameter). Maps to `client_id`
        +   * in the Looker API `Query` resource.
        +   * 
        + * + * optional string client_id = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The clientId. + */ + java.lang.String getClientId(); + + /** + * + * + *
        +   * Optional. The short alphanumeric identifier for the query, used for share
        +   * links and Explore URLs (e.g., in the `qid` parameter). Maps to `client_id`
        +   * in the Looker API `Query` resource.
        +   * 
        + * + * optional string client_id = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for clientId. + */ + com.google.protobuf.ByteString getClientIdBytes(); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerSettings.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerSettings.java new file mode 100644 index 000000000000..077be7c313fb --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerSettings.java @@ -0,0 +1,524 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/data_chat_service.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +/** + * + * + *
        + * Message to hold Looker specific custom settings.
        + * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.LookerSettings} + */ +@com.google.protobuf.Generated +public final class LookerSettings extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.LookerSettings) + LookerSettingsOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "LookerSettings"); + } + + // Use LookerSettings.newBuilder() to construct. + private LookerSettings(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private LookerSettings() {} + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_LookerSettings_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_LookerSettings_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.LookerSettings.class, + com.google.cloud.geminidataanalytics.v1beta.LookerSettings.Builder.class); + } + + public static final int ENABLE_DEV_MODE_FIELD_NUMBER = 1; + private boolean enableDevMode_ = false; + + /** + * + * + *
        +   * Optional. Whether to operate in Looker's Development Mode.
        +   * If true, the API session will be switched to the "dev" workspace,
        +   * allowing interaction with LookML changes in the user's development branch.
        +   * If false or unset, the session remains in the default state (Production
        +   * Mode).
        +   * See https://cloud.google.com/looker/docs/dev-mode-prod-mode.
        +   * 
        + * + * bool enable_dev_mode = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enableDevMode. + */ + @java.lang.Override + public boolean getEnableDevMode() { + return enableDevMode_; + } + + 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 (enableDevMode_ != false) { + output.writeBool(1, enableDevMode_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (enableDevMode_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(1, enableDevMode_); + } + 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.cloud.geminidataanalytics.v1beta.LookerSettings)) { + return super.equals(obj); + } + com.google.cloud.geminidataanalytics.v1beta.LookerSettings other = + (com.google.cloud.geminidataanalytics.v1beta.LookerSettings) obj; + + if (getEnableDevMode() != other.getEnableDevMode()) 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) + ENABLE_DEV_MODE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getEnableDevMode()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.geminidataanalytics.v1beta.LookerSettings parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.LookerSettings parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.LookerSettings parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.LookerSettings 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.cloud.geminidataanalytics.v1beta.LookerSettings parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.LookerSettings parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.LookerSettings parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.LookerSettings 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.cloud.geminidataanalytics.v1beta.LookerSettings parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.LookerSettings 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.cloud.geminidataanalytics.v1beta.LookerSettings parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.LookerSettings 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.cloud.geminidataanalytics.v1beta.LookerSettings 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; + } + + /** + * + * + *
        +   * Message to hold Looker specific custom settings.
        +   * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.LookerSettings} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.geminidataanalytics.v1beta.LookerSettings) + com.google.cloud.geminidataanalytics.v1beta.LookerSettingsOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_LookerSettings_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_LookerSettings_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.LookerSettings.class, + com.google.cloud.geminidataanalytics.v1beta.LookerSettings.Builder.class); + } + + // Construct using com.google.cloud.geminidataanalytics.v1beta.LookerSettings.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + enableDevMode_ = false; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_LookerSettings_descriptor; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.LookerSettings getDefaultInstanceForType() { + return com.google.cloud.geminidataanalytics.v1beta.LookerSettings.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.LookerSettings build() { + com.google.cloud.geminidataanalytics.v1beta.LookerSettings result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.LookerSettings buildPartial() { + com.google.cloud.geminidataanalytics.v1beta.LookerSettings result = + new com.google.cloud.geminidataanalytics.v1beta.LookerSettings(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.LookerSettings result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.enableDevMode_ = enableDevMode_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.geminidataanalytics.v1beta.LookerSettings) { + return mergeFrom((com.google.cloud.geminidataanalytics.v1beta.LookerSettings) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.LookerSettings other) { + if (other == com.google.cloud.geminidataanalytics.v1beta.LookerSettings.getDefaultInstance()) + return this; + if (other.getEnableDevMode() != false) { + setEnableDevMode(other.getEnableDevMode()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + enableDevMode_ = input.readBool(); + bitField0_ |= 0x00000001; + break; + } // case 8 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private boolean enableDevMode_; + + /** + * + * + *
        +     * Optional. Whether to operate in Looker's Development Mode.
        +     * If true, the API session will be switched to the "dev" workspace,
        +     * allowing interaction with LookML changes in the user's development branch.
        +     * If false or unset, the session remains in the default state (Production
        +     * Mode).
        +     * See https://cloud.google.com/looker/docs/dev-mode-prod-mode.
        +     * 
        + * + * bool enable_dev_mode = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enableDevMode. + */ + @java.lang.Override + public boolean getEnableDevMode() { + return enableDevMode_; + } + + /** + * + * + *
        +     * Optional. Whether to operate in Looker's Development Mode.
        +     * If true, the API session will be switched to the "dev" workspace,
        +     * allowing interaction with LookML changes in the user's development branch.
        +     * If false or unset, the session remains in the default state (Production
        +     * Mode).
        +     * See https://cloud.google.com/looker/docs/dev-mode-prod-mode.
        +     * 
        + * + * bool enable_dev_mode = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The enableDevMode to set. + * @return This builder for chaining. + */ + public Builder setEnableDevMode(boolean value) { + + enableDevMode_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. Whether to operate in Looker's Development Mode.
        +     * If true, the API session will be switched to the "dev" workspace,
        +     * allowing interaction with LookML changes in the user's development branch.
        +     * If false or unset, the session remains in the default state (Production
        +     * Mode).
        +     * See https://cloud.google.com/looker/docs/dev-mode-prod-mode.
        +     * 
        + * + * bool enable_dev_mode = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearEnableDevMode() { + bitField0_ = (bitField0_ & ~0x00000001); + enableDevMode_ = false; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.LookerSettings) + } + + // @@protoc_insertion_point(class_scope:google.cloud.geminidataanalytics.v1beta.LookerSettings) + private static final com.google.cloud.geminidataanalytics.v1beta.LookerSettings DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.geminidataanalytics.v1beta.LookerSettings(); + } + + public static com.google.cloud.geminidataanalytics.v1beta.LookerSettings getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public LookerSettings parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.LookerSettings getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerSettingsOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerSettingsOrBuilder.java new file mode 100644 index 000000000000..5ef2b094df20 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/LookerSettingsOrBuilder.java @@ -0,0 +1,46 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/data_chat_service.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +@com.google.protobuf.Generated +public interface LookerSettingsOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.LookerSettings) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
        +   * Optional. Whether to operate in Looker's Development Mode.
        +   * If true, the API session will be switched to the "dev" workspace,
        +   * allowing interaction with LookML changes in the user's development branch.
        +   * If false or unset, the session remains in the default state (Production
        +   * Mode).
        +   * See https://cloud.google.com/looker/docs/dev-mode-prod-mode.
        +   * 
        + * + * bool enable_dev_mode = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enableDevMode. + */ + boolean getEnableDevMode(); +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/MatchedQuery.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/MatchedQuery.java new file mode 100644 index 000000000000..01717a843462 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/MatchedQuery.java @@ -0,0 +1,1306 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +/** + * + * + *
        + * A matched query message represents the agent having matched one of the
        + * example queries supplied in context as being applicable to the current
        + * question. It will also contain additional info during the matching process.
        + * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.MatchedQuery} + */ +@com.google.protobuf.Generated +public final class MatchedQuery extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.MatchedQuery) + MatchedQueryOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "MatchedQuery"); + } + + // Use MatchedQuery.newBuilder() to construct. + private MatchedQuery(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private MatchedQuery() { + queryParameterValues_ = java.util.Collections.emptyList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_MatchedQuery_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_MatchedQuery_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.class, + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.Builder.class); + } + + private int bitField0_; + public static final int EXAMPLE_QUERY_FIELD_NUMBER = 1; + private com.google.cloud.geminidataanalytics.v1beta.ExampleQuery exampleQuery_; + + /** + * + * + *
        +   * The query that was matched based on an example query.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + * + * @return Whether the exampleQuery field is set. + */ + @java.lang.Override + public boolean hasExampleQuery() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
        +   * The query that was matched based on an example query.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + * + * @return The exampleQuery. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ExampleQuery getExampleQuery() { + return exampleQuery_ == null + ? com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.getDefaultInstance() + : exampleQuery_; + } + + /** + * + * + *
        +   * The query that was matched based on an example query.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder + getExampleQueryOrBuilder() { + return exampleQuery_ == null + ? com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.getDefaultInstance() + : exampleQuery_; + } + + public static final int QUERY_PARAMETER_VALUES_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private java.util.List + queryParameterValues_; + + /** + * + * + *
        +   * The extracted values for the query parameters.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + @java.lang.Override + public java.util.List + getQueryParameterValuesList() { + return queryParameterValues_; + } + + /** + * + * + *
        +   * The extracted values for the query parameters.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.QueryParameterValuesOrBuilder> + getQueryParameterValuesOrBuilderList() { + return queryParameterValues_; + } + + /** + * + * + *
        +   * The extracted values for the query parameters.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + @java.lang.Override + public int getQueryParameterValuesCount() { + return queryParameterValues_.size(); + } + + /** + * + * + *
        +   * The extracted values for the query parameters.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues getQueryParameterValues( + int index) { + return queryParameterValues_.get(index); + } + + /** + * + * + *
        +   * The extracted values for the query parameters.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.QueryParameterValuesOrBuilder + getQueryParameterValuesOrBuilder(int index) { + return queryParameterValues_.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.writeMessage(1, getExampleQuery()); + } + for (int i = 0; i < queryParameterValues_.size(); i++) { + output.writeMessage(2, queryParameterValues_.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.computeMessageSize(1, getExampleQuery()); + } + for (int i = 0; i < queryParameterValues_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(2, queryParameterValues_.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.cloud.geminidataanalytics.v1beta.MatchedQuery)) { + return super.equals(obj); + } + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery other = + (com.google.cloud.geminidataanalytics.v1beta.MatchedQuery) obj; + + if (hasExampleQuery() != other.hasExampleQuery()) return false; + if (hasExampleQuery()) { + if (!getExampleQuery().equals(other.getExampleQuery())) return false; + } + if (!getQueryParameterValuesList().equals(other.getQueryParameterValuesList())) 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 (hasExampleQuery()) { + hash = (37 * hash) + EXAMPLE_QUERY_FIELD_NUMBER; + hash = (53 * hash) + getExampleQuery().hashCode(); + } + if (getQueryParameterValuesCount() > 0) { + hash = (37 * hash) + QUERY_PARAMETER_VALUES_FIELD_NUMBER; + hash = (53 * hash) + getQueryParameterValuesList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.geminidataanalytics.v1beta.MatchedQuery parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.MatchedQuery parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.MatchedQuery parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.MatchedQuery 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.cloud.geminidataanalytics.v1beta.MatchedQuery parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.MatchedQuery parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.MatchedQuery parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.MatchedQuery 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.cloud.geminidataanalytics.v1beta.MatchedQuery parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.MatchedQuery 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.cloud.geminidataanalytics.v1beta.MatchedQuery parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.MatchedQuery 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.cloud.geminidataanalytics.v1beta.MatchedQuery 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 matched query message represents the agent having matched one of the
        +   * example queries supplied in context as being applicable to the current
        +   * question. It will also contain additional info during the matching process.
        +   * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.MatchedQuery} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.geminidataanalytics.v1beta.MatchedQuery) + com.google.cloud.geminidataanalytics.v1beta.MatchedQueryOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_MatchedQuery_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_MatchedQuery_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.class, + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.Builder.class); + } + + // Construct using com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetExampleQueryFieldBuilder(); + internalGetQueryParameterValuesFieldBuilder(); + } + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + exampleQuery_ = null; + if (exampleQueryBuilder_ != null) { + exampleQueryBuilder_.dispose(); + exampleQueryBuilder_ = null; + } + if (queryParameterValuesBuilder_ == null) { + queryParameterValues_ = java.util.Collections.emptyList(); + } else { + queryParameterValues_ = null; + queryParameterValuesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000002); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_MatchedQuery_descriptor; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.MatchedQuery getDefaultInstanceForType() { + return com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.MatchedQuery build() { + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.MatchedQuery buildPartial() { + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery result = + new com.google.cloud.geminidataanalytics.v1beta.MatchedQuery(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields( + com.google.cloud.geminidataanalytics.v1beta.MatchedQuery result) { + if (queryParameterValuesBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + queryParameterValues_ = java.util.Collections.unmodifiableList(queryParameterValues_); + bitField0_ = (bitField0_ & ~0x00000002); + } + result.queryParameterValues_ = queryParameterValues_; + } else { + result.queryParameterValues_ = queryParameterValuesBuilder_.build(); + } + } + + private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.MatchedQuery result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.exampleQuery_ = + exampleQueryBuilder_ == null ? exampleQuery_ : exampleQueryBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.geminidataanalytics.v1beta.MatchedQuery) { + return mergeFrom((com.google.cloud.geminidataanalytics.v1beta.MatchedQuery) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.MatchedQuery other) { + if (other == com.google.cloud.geminidataanalytics.v1beta.MatchedQuery.getDefaultInstance()) + return this; + if (other.hasExampleQuery()) { + mergeExampleQuery(other.getExampleQuery()); + } + if (queryParameterValuesBuilder_ == null) { + if (!other.queryParameterValues_.isEmpty()) { + if (queryParameterValues_.isEmpty()) { + queryParameterValues_ = other.queryParameterValues_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureQueryParameterValuesIsMutable(); + queryParameterValues_.addAll(other.queryParameterValues_); + } + onChanged(); + } + } else { + if (!other.queryParameterValues_.isEmpty()) { + if (queryParameterValuesBuilder_.isEmpty()) { + queryParameterValuesBuilder_.dispose(); + queryParameterValuesBuilder_ = null; + queryParameterValues_ = other.queryParameterValues_; + bitField0_ = (bitField0_ & ~0x00000002); + queryParameterValuesBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetQueryParameterValuesFieldBuilder() + : null; + } else { + queryParameterValuesBuilder_.addAllMessages(other.queryParameterValues_); + } + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + input.readMessage( + internalGetExampleQueryFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues m = + input.readMessage( + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.parser(), + extensionRegistry); + if (queryParameterValuesBuilder_ == null) { + ensureQueryParameterValuesIsMutable(); + queryParameterValues_.add(m); + } else { + queryParameterValuesBuilder_.addMessage(m); + } + break; + } // case 18 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private com.google.cloud.geminidataanalytics.v1beta.ExampleQuery exampleQuery_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery, + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.Builder, + com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder> + exampleQueryBuilder_; + + /** + * + * + *
        +     * The query that was matched based on an example query.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + * + * @return Whether the exampleQuery field is set. + */ + public boolean hasExampleQuery() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
        +     * The query that was matched based on an example query.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + * + * @return The exampleQuery. + */ + public com.google.cloud.geminidataanalytics.v1beta.ExampleQuery getExampleQuery() { + if (exampleQueryBuilder_ == null) { + return exampleQuery_ == null + ? com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.getDefaultInstance() + : exampleQuery_; + } else { + return exampleQueryBuilder_.getMessage(); + } + } + + /** + * + * + *
        +     * The query that was matched based on an example query.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + */ + public Builder setExampleQuery(com.google.cloud.geminidataanalytics.v1beta.ExampleQuery value) { + if (exampleQueryBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + exampleQuery_ = value; + } else { + exampleQueryBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
        +     * The query that was matched based on an example query.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + */ + public Builder setExampleQuery( + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.Builder builderForValue) { + if (exampleQueryBuilder_ == null) { + exampleQuery_ = builderForValue.build(); + } else { + exampleQueryBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
        +     * The query that was matched based on an example query.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + */ + public Builder mergeExampleQuery( + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery value) { + if (exampleQueryBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0) + && exampleQuery_ != null + && exampleQuery_ + != com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.getDefaultInstance()) { + getExampleQueryBuilder().mergeFrom(value); + } else { + exampleQuery_ = value; + } + } else { + exampleQueryBuilder_.mergeFrom(value); + } + if (exampleQuery_ != null) { + bitField0_ |= 0x00000001; + onChanged(); + } + return this; + } + + /** + * + * + *
        +     * The query that was matched based on an example query.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + */ + public Builder clearExampleQuery() { + bitField0_ = (bitField0_ & ~0x00000001); + exampleQuery_ = null; + if (exampleQueryBuilder_ != null) { + exampleQueryBuilder_.dispose(); + exampleQueryBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
        +     * The query that was matched based on an example query.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + */ + public com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.Builder + getExampleQueryBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return internalGetExampleQueryFieldBuilder().getBuilder(); + } + + /** + * + * + *
        +     * The query that was matched based on an example query.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + */ + public com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder + getExampleQueryOrBuilder() { + if (exampleQueryBuilder_ != null) { + return exampleQueryBuilder_.getMessageOrBuilder(); + } else { + return exampleQuery_ == null + ? com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.getDefaultInstance() + : exampleQuery_; + } + } + + /** + * + * + *
        +     * The query that was matched based on an example query.
        +     * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery, + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.Builder, + com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder> + internalGetExampleQueryFieldBuilder() { + if (exampleQueryBuilder_ == null) { + exampleQueryBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery, + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery.Builder, + com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder>( + getExampleQuery(), getParentForChildren(), isClean()); + exampleQuery_ = null; + } + return exampleQueryBuilder_; + } + + private java.util.List + queryParameterValues_ = java.util.Collections.emptyList(); + + private void ensureQueryParameterValuesIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + queryParameterValues_ = + new java.util.ArrayList< + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues>( + queryParameterValues_); + bitField0_ |= 0x00000002; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues, + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.Builder, + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValuesOrBuilder> + queryParameterValuesBuilder_; + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public java.util.List + getQueryParameterValuesList() { + if (queryParameterValuesBuilder_ == null) { + return java.util.Collections.unmodifiableList(queryParameterValues_); + } else { + return queryParameterValuesBuilder_.getMessageList(); + } + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public int getQueryParameterValuesCount() { + if (queryParameterValuesBuilder_ == null) { + return queryParameterValues_.size(); + } else { + return queryParameterValuesBuilder_.getCount(); + } + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues getQueryParameterValues( + int index) { + if (queryParameterValuesBuilder_ == null) { + return queryParameterValues_.get(index); + } else { + return queryParameterValuesBuilder_.getMessage(index); + } + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public Builder setQueryParameterValues( + int index, com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues value) { + if (queryParameterValuesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureQueryParameterValuesIsMutable(); + queryParameterValues_.set(index, value); + onChanged(); + } else { + queryParameterValuesBuilder_.setMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public Builder setQueryParameterValues( + int index, + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.Builder builderForValue) { + if (queryParameterValuesBuilder_ == null) { + ensureQueryParameterValuesIsMutable(); + queryParameterValues_.set(index, builderForValue.build()); + onChanged(); + } else { + queryParameterValuesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public Builder addQueryParameterValues( + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues value) { + if (queryParameterValuesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureQueryParameterValuesIsMutable(); + queryParameterValues_.add(value); + onChanged(); + } else { + queryParameterValuesBuilder_.addMessage(value); + } + return this; + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public Builder addQueryParameterValues( + int index, com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues value) { + if (queryParameterValuesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureQueryParameterValuesIsMutable(); + queryParameterValues_.add(index, value); + onChanged(); + } else { + queryParameterValuesBuilder_.addMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public Builder addQueryParameterValues( + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.Builder builderForValue) { + if (queryParameterValuesBuilder_ == null) { + ensureQueryParameterValuesIsMutable(); + queryParameterValues_.add(builderForValue.build()); + onChanged(); + } else { + queryParameterValuesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public Builder addQueryParameterValues( + int index, + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.Builder builderForValue) { + if (queryParameterValuesBuilder_ == null) { + ensureQueryParameterValuesIsMutable(); + queryParameterValues_.add(index, builderForValue.build()); + onChanged(); + } else { + queryParameterValuesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public Builder addAllQueryParameterValues( + java.lang.Iterable< + ? extends com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues> + values) { + if (queryParameterValuesBuilder_ == null) { + ensureQueryParameterValuesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, queryParameterValues_); + onChanged(); + } else { + queryParameterValuesBuilder_.addAllMessages(values); + } + return this; + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public Builder clearQueryParameterValues() { + if (queryParameterValuesBuilder_ == null) { + queryParameterValues_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + } else { + queryParameterValuesBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public Builder removeQueryParameterValues(int index) { + if (queryParameterValuesBuilder_ == null) { + ensureQueryParameterValuesIsMutable(); + queryParameterValues_.remove(index); + onChanged(); + } else { + queryParameterValuesBuilder_.remove(index); + } + return this; + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.Builder + getQueryParameterValuesBuilder(int index) { + return internalGetQueryParameterValuesFieldBuilder().getBuilder(index); + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.QueryParameterValuesOrBuilder + getQueryParameterValuesOrBuilder(int index) { + if (queryParameterValuesBuilder_ == null) { + return queryParameterValues_.get(index); + } else { + return queryParameterValuesBuilder_.getMessageOrBuilder(index); + } + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.QueryParameterValuesOrBuilder> + getQueryParameterValuesOrBuilderList() { + if (queryParameterValuesBuilder_ != null) { + return queryParameterValuesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(queryParameterValues_); + } + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.Builder + addQueryParameterValuesBuilder() { + return internalGetQueryParameterValuesFieldBuilder() + .addBuilder( + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues + .getDefaultInstance()); + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.Builder + addQueryParameterValuesBuilder(int index) { + return internalGetQueryParameterValuesFieldBuilder() + .addBuilder( + index, + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues + .getDefaultInstance()); + } + + /** + * + * + *
        +     * The extracted values for the query parameters.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + public java.util.List + getQueryParameterValuesBuilderList() { + return internalGetQueryParameterValuesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues, + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.Builder, + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValuesOrBuilder> + internalGetQueryParameterValuesFieldBuilder() { + if (queryParameterValuesBuilder_ == null) { + queryParameterValuesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues, + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.Builder, + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValuesOrBuilder>( + queryParameterValues_, + ((bitField0_ & 0x00000002) != 0), + getParentForChildren(), + isClean()); + queryParameterValues_ = null; + } + return queryParameterValuesBuilder_; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.MatchedQuery) + } + + // @@protoc_insertion_point(class_scope:google.cloud.geminidataanalytics.v1beta.MatchedQuery) + private static final com.google.cloud.geminidataanalytics.v1beta.MatchedQuery DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.geminidataanalytics.v1beta.MatchedQuery(); + } + + public static com.google.cloud.geminidataanalytics.v1beta.MatchedQuery getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public MatchedQuery parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.MatchedQuery getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/MatchedQueryOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/MatchedQueryOrBuilder.java new file mode 100644 index 000000000000..634d83e94dc2 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/MatchedQueryOrBuilder.java @@ -0,0 +1,135 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +@com.google.protobuf.Generated +public interface MatchedQueryOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.MatchedQuery) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
        +   * The query that was matched based on an example query.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + * + * @return Whether the exampleQuery field is set. + */ + boolean hasExampleQuery(); + + /** + * + * + *
        +   * The query that was matched based on an example query.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + * + * @return The exampleQuery. + */ + com.google.cloud.geminidataanalytics.v1beta.ExampleQuery getExampleQuery(); + + /** + * + * + *
        +   * The query that was matched based on an example query.
        +   * 
        + * + * .google.cloud.geminidataanalytics.v1beta.ExampleQuery example_query = 1; + */ + com.google.cloud.geminidataanalytics.v1beta.ExampleQueryOrBuilder getExampleQueryOrBuilder(); + + /** + * + * + *
        +   * The extracted values for the query parameters.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + java.util.List + getQueryParameterValuesList(); + + /** + * + * + *
        +   * The extracted values for the query parameters.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues getQueryParameterValues( + int index); + + /** + * + * + *
        +   * The extracted values for the query parameters.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + int getQueryParameterValuesCount(); + + /** + * + * + *
        +   * The extracted values for the query parameters.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.QueryParameterValuesOrBuilder> + getQueryParameterValuesOrBuilderList(); + + /** + * + * + *
        +   * The extracted values for the query parameters.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.QueryParameterValues query_parameter_values = 2; + * + */ + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValuesOrBuilder + getQueryParameterValuesOrBuilder(int index); +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ParameterizedSecureViewParameters.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ParameterizedSecureViewParameters.java index ea1daa21cb63..edac1eecfcfd 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ParameterizedSecureViewParameters.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ParameterizedSecureViewParameters.java @@ -54,88 +54,950 @@ private ParameterizedSecureViewParameters( super(builder); } - private ParameterizedSecureViewParameters() {} + private ParameterizedSecureViewParameters() { + parameters_ = java.util.Collections.emptyList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.class, + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Builder + .class); + } + + public interface ParameterOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
        +     * Required. The parameter key (e.g., `"user_id"`).
        +     * 
        + * + * string key = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The key. + */ + java.lang.String getKey(); + + /** + * + * + *
        +     * Required. The parameter key (e.g., `"user_id"`).
        +     * 
        + * + * string key = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for key. + */ + com.google.protobuf.ByteString getKeyBytes(); + + /** + * + * + *
        +     * Required. The parameter value (e.g., `"123"`).
        +     * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The value. + */ + java.lang.String getValue(); + + /** + * + * + *
        +     * Required. The parameter value (e.g., `"123"`).
        +     * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for value. + */ + com.google.protobuf.ByteString getValueBytes(); + } + + /** + * + * + *
        +   * Represents a single parameter for Parameterized Secure Views.
        +   * 
        + * + * Protobuf type {@code + * google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter} + */ + public static final class Parameter extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter) + ParameterOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "Parameter"); + } + + // Use Parameter.newBuilder() to construct. + private Parameter(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private Parameter() { + key_ = ""; + value_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_Parameter_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_Parameter_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter.class, + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter.Builder.class); + } + + public static final int KEY_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object key_ = ""; + + /** + * + * + *
        +     * Required. The parameter key (e.g., `"user_id"`).
        +     * 
        + * + * string key = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The key. + */ + @java.lang.Override + public java.lang.String getKey() { + java.lang.Object ref = key_; + 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(); + key_ = s; + return s; + } + } + + /** + * + * + *
        +     * Required. The parameter key (e.g., `"user_id"`).
        +     * 
        + * + * string key = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for key. + */ + @java.lang.Override + public com.google.protobuf.ByteString getKeyBytes() { + java.lang.Object ref = key_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + key_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int VALUE_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object value_ = ""; + + /** + * + * + *
        +     * Required. The parameter value (e.g., `"123"`).
        +     * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @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; + } + } + + /** + * + * + *
        +     * Required. The parameter value (e.g., `"123"`).
        +     * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @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(key_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, key_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(value_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, 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(key_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, key_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(value_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, 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.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter)) { + return super.equals(obj); + } + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + other = + (com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter) + obj; + + if (!getKey().equals(other.getKey())) return false; + 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) + KEY_FIELD_NUMBER; + hash = (53 * hash) + getKey().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.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter + 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.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter + 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.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter + 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.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter + 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.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + 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; + } + + /** + * + * + *
        +     * Represents a single parameter for Parameterized Secure Views.
        +     * 
        + * + * Protobuf type {@code + * google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter) + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .ParameterOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_Parameter_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_Parameter_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter.class, + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter.Builder.class); + } + + // Construct using + // com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + key_ = ""; + value_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto + .internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_Parameter_descriptor; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + getDefaultInstanceForType() { + return com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + build() { + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + buildPartial() { + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + result = + new com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.key_ = key_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.value_ = value_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter) { + return mergeFrom( + (com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter) + other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + other) { + if (other + == com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter.getDefaultInstance()) return this; + if (!other.getKey().isEmpty()) { + key_ = other.key_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getValue().isEmpty()) { + value_ = other.value_; + bitField0_ |= 0x00000002; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + key_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + value_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object key_ = ""; + + /** + * + * + *
        +       * Required. The parameter key (e.g., `"user_id"`).
        +       * 
        + * + * string key = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The key. + */ + public java.lang.String getKey() { + java.lang.Object ref = key_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + key_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +       * Required. The parameter key (e.g., `"user_id"`).
        +       * 
        + * + * string key = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for key. + */ + public com.google.protobuf.ByteString getKeyBytes() { + java.lang.Object ref = key_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + key_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +       * Required. The parameter key (e.g., `"user_id"`).
        +       * 
        + * + * string key = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The key to set. + * @return This builder for chaining. + */ + public Builder setKey(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + key_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
        +       * Required. The parameter key (e.g., `"user_id"`).
        +       * 
        + * + * string key = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearKey() { + key_ = getDefaultInstance().getKey(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
        +       * Required. The parameter key (e.g., `"user_id"`).
        +       * 
        + * + * string key = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The bytes for key to set. + * @return This builder for chaining. + */ + public Builder setKeyBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + key_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object value_ = ""; + + /** + * + * + *
        +       * Required. The parameter value (e.g., `"123"`).
        +       * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @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; + } + } + + /** + * + * + *
        +       * Required. The parameter value (e.g., `"123"`).
        +       * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @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; + } + } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto - .internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_descriptor; - } + /** + * + * + *
        +       * Required. The parameter value (e.g., `"123"`).
        +       * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @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_ |= 0x00000002; + onChanged(); + return this; + } - @SuppressWarnings({"rawtypes"}) - @java.lang.Override - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( - int number) { - switch (number) { - case 1: - return internalGetParameters(); - default: - throw new RuntimeException("Invalid map field number: " + number); + /** + * + * + *
        +       * Required. The parameter value (e.g., `"123"`).
        +       * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearValue() { + value_ = getDefaultInstance().getValue(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
        +       * Required. The parameter value (e.g., `"123"`).
        +       * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @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_ |= 0x00000002; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter) } - } - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto - .internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.class, - com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Builder - .class); - } + // @@protoc_insertion_point(class_scope:google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter) + private static final com.google.cloud.geminidataanalytics.v1beta + .ParameterizedSecureViewParameters.Parameter + DEFAULT_INSTANCE; - public static final int PARAMETERS_FIELD_NUMBER = 1; + static { + DEFAULT_INSTANCE = + new com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter(); + } - private static final class ParametersDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.geminidataanalytics.v1beta.DataChatServiceProto - .internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_ParametersEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + public static com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter + getDefaultInstance() { + return DEFAULT_INSTANCE; + } - @SuppressWarnings("serial") - private com.google.protobuf.MapField parameters_; + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Parameter parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; - private com.google.protobuf.MapField internalGetParameters() { - if (parameters_ == null) { - return com.google.protobuf.MapField.emptyMapField(ParametersDefaultEntryHolder.defaultEntry); + public static com.google.protobuf.Parser parser() { + return PARSER; } - return parameters_; - } - public int getParametersCount() { - return internalGetParameters().getMap().size(); + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } } + public static final int PARAMETERS_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private java.util.List< + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter> + parameters_; + /** * * *
            * Optional. Named parameters for Parameterized Secure Views (PSV).
        -   * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -   * corresponding parameter values (e.g., `"123"`).
            * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override - public boolean containsParameters(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - return internalGetParameters().getMap().containsKey(key); + public java.util.List< + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter> + getParametersList() { + return parameters_; } - /** Use {@link #getParametersMap()} instead. */ + /** + * + * + *
        +   * Optional. Named parameters for Parameterized Secure Views (PSV).
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ @java.lang.Override - @java.lang.Deprecated - public java.util.Map getParameters() { - return getParametersMap(); + public java.util.List< + ? extends + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .ParameterOrBuilder> + getParametersOrBuilderList() { + return parameters_; } /** @@ -143,16 +1005,15 @@ public java.util.Map getParameters() { * *
            * Optional. Named parameters for Parameterized Secure Views (PSV).
        -   * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -   * corresponding parameter values (e.g., `"123"`).
            * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override - public java.util.Map getParametersMap() { - return internalGetParameters().getMap(); + public int getParametersCount() { + return parameters_.size(); } /** @@ -160,23 +1021,16 @@ public java.util.Map getParametersMap() { * *
            * Optional. Named parameters for Parameterized Secure Views (PSV).
        -   * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -   * corresponding parameter values (e.g., `"123"`).
            * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override - public /* nullable */ java.lang.String getParametersOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetParameters().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; + public com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + getParameters(int index) { + return parameters_.get(index); } /** @@ -184,23 +1038,17 @@ public java.util.Map getParametersMap() { * *
            * Optional. Named parameters for Parameterized Secure Views (PSV).
        -   * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -   * corresponding parameter values (e.g., `"123"`).
            * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override - public java.lang.String getParametersOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetParameters().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); - } - return map.get(key); + public com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .ParameterOrBuilder + getParametersOrBuilder(int index) { + return parameters_.get(index); } private byte memoizedIsInitialized = -1; @@ -217,8 +1065,9 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetParameters(), ParametersDefaultEntryHolder.defaultEntry, 1); + for (int i = 0; i < parameters_.size(); i++) { + output.writeMessage(1, parameters_.get(i)); + } getUnknownFields().writeTo(output); } @@ -228,15 +1077,8 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - for (java.util.Map.Entry entry : - internalGetParameters().getMap().entrySet()) { - com.google.protobuf.MapEntry parameters__ = - ParametersDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, parameters__); + for (int i = 0; i < parameters_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, parameters_.get(i)); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; @@ -255,7 +1097,7 @@ public boolean equals(final java.lang.Object obj) { com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters other = (com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters) obj; - if (!internalGetParameters().equals(other.internalGetParameters())) return false; + if (!getParametersList().equals(other.getParametersList())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -267,9 +1109,9 @@ public int hashCode() { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (!internalGetParameters().getMap().isEmpty()) { + if (getParametersCount() > 0) { hash = (37 * hash) + PARAMETERS_FIELD_NUMBER; - hash = (53 * hash) + internalGetParameters().hashCode(); + hash = (53 * hash) + getParametersList().hashCode(); } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; @@ -399,28 +1241,6 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { .internal_static_google_cloud_geminidataanalytics_v1beta_ParameterizedSecureViewParameters_descriptor; } - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( - int number) { - switch (number) { - case 1: - return internalGetParameters(); - default: - throw new RuntimeException("Invalid map field number: " + number); - } - } - - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( - int number) { - switch (number) { - case 1: - return internalGetMutableParameters(); - default: - throw new RuntimeException("Invalid map field number: " + number); - } - } - @java.lang.Override protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { @@ -444,7 +1264,13 @@ private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { public Builder clear() { super.clear(); bitField0_ = 0; - internalGetMutableParameters().clear(); + if (parametersBuilder_ == null) { + parameters_ = java.util.Collections.emptyList(); + } else { + parameters_ = null; + parametersBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); return this; } @@ -476,6 +1302,7 @@ public com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParame buildPartial() { com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters result = new com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters(this); + buildPartialRepeatedFields(result); if (bitField0_ != 0) { buildPartial0(result); } @@ -483,13 +1310,22 @@ public com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParame return result; } + private void buildPartialRepeatedFields( + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters result) { + if (parametersBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + parameters_ = java.util.Collections.unmodifiableList(parameters_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.parameters_ = parameters_; + } else { + result.parameters_ = parametersBuilder_.build(); + } + } + private void buildPartial0( com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters result) { int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.parameters_ = internalGetParameters(); - result.parameters_.makeImmutable(); - } } @java.lang.Override @@ -510,8 +1346,33 @@ public Builder mergeFrom( if (other == com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters .getDefaultInstance()) return this; - internalGetMutableParameters().mergeFrom(other.internalGetParameters()); - bitField0_ |= 0x00000001; + if (parametersBuilder_ == null) { + if (!other.parameters_.isEmpty()) { + if (parameters_.isEmpty()) { + parameters_ = other.parameters_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureParametersIsMutable(); + parameters_.addAll(other.parameters_); + } + onChanged(); + } + } else { + if (!other.parameters_.isEmpty()) { + if (parametersBuilder_.isEmpty()) { + parametersBuilder_.dispose(); + parametersBuilder_ = null; + parameters_ = other.parameters_; + bitField0_ = (bitField0_ & ~0x00000001); + parametersBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetParametersFieldBuilder() + : null; + } else { + parametersBuilder_.addAllMessages(other.parameters_); + } + } + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -540,14 +1401,19 @@ public Builder mergeFrom( break; case 10: { - com.google.protobuf.MapEntry parameters__ = - input.readMessage( - ParametersDefaultEntryHolder.defaultEntry.getParserForType(), - extensionRegistry); - internalGetMutableParameters() - .getMutableMap() - .put(parameters__.getKey(), parameters__.getValue()); - bitField0_ |= 0x00000001; + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter + m = + input.readMessage( + com.google.cloud.geminidataanalytics.v1beta + .ParameterizedSecureViewParameters.Parameter.parser(), + extensionRegistry); + if (parametersBuilder_ == null) { + ensureParametersIsMutable(); + parameters_.add(m); + } else { + parametersBuilder_.addMessage(m); + } break; } // case 10 default: @@ -569,33 +1435,66 @@ public Builder mergeFrom( private int bitField0_; - private com.google.protobuf.MapField parameters_; + private java.util.List< + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter> + parameters_ = java.util.Collections.emptyList(); - private com.google.protobuf.MapField - internalGetParameters() { - if (parameters_ == null) { - return com.google.protobuf.MapField.emptyMapField( - ParametersDefaultEntryHolder.defaultEntry); + private void ensureParametersIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + parameters_ = + new java.util.ArrayList< + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter>(parameters_); + bitField0_ |= 0x00000001; } - return parameters_; } - private com.google.protobuf.MapField - internalGetMutableParameters() { - if (parameters_ == null) { - parameters_ = - com.google.protobuf.MapField.newMapField(ParametersDefaultEntryHolder.defaultEntry); - } - if (!parameters_.isMutable()) { - parameters_ = parameters_.copy(); + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter, + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + .Builder, + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .ParameterOrBuilder> + parametersBuilder_; + + /** + * + * + *
        +     * Optional. Named parameters for Parameterized Secure Views (PSV).
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter> + getParametersList() { + if (parametersBuilder_ == null) { + return java.util.Collections.unmodifiableList(parameters_); + } else { + return parametersBuilder_.getMessageList(); } - bitField0_ |= 0x00000001; - onChanged(); - return parameters_; } + /** + * + * + *
        +     * Optional. Named parameters for Parameterized Secure Views (PSV).
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ public int getParametersCount() { - return internalGetParameters().getMap().size(); + if (parametersBuilder_ == null) { + return parameters_.size(); + } else { + return parametersBuilder_.getCount(); + } } /** @@ -603,26 +1502,47 @@ public int getParametersCount() { * *
              * Optional. Named parameters for Parameterized Secure Views (PSV).
        -     * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -     * corresponding parameter values (e.g., `"123"`).
              * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ - @java.lang.Override - public boolean containsParameters(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + getParameters(int index) { + if (parametersBuilder_ == null) { + return parameters_.get(index); + } else { + return parametersBuilder_.getMessage(index); } - return internalGetParameters().getMap().containsKey(key); } - /** Use {@link #getParametersMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getParameters() { - return getParametersMap(); + /** + * + * + *
        +     * Optional. Named parameters for Parameterized Secure Views (PSV).
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setParameters( + int index, + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + value) { + if (parametersBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureParametersIsMutable(); + parameters_.set(index, value); + onChanged(); + } else { + parametersBuilder_.setMessage(index, value); + } + return this; } /** @@ -630,16 +1550,25 @@ public java.util.Map getParameters() { * *
              * Optional. Named parameters for Parameterized Secure Views (PSV).
        -     * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -     * corresponding parameter values (e.g., `"123"`).
              * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ - @java.lang.Override - public java.util.Map getParametersMap() { - return internalGetParameters().getMap(); + public Builder setParameters( + int index, + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + .Builder + builderForValue) { + if (parametersBuilder_ == null) { + ensureParametersIsMutable(); + parameters_.set(index, builderForValue.build()); + onChanged(); + } else { + parametersBuilder_.setMessage(index, builderForValue.build()); + } + return this; } /** @@ -647,23 +1576,26 @@ public java.util.Map getParametersMap() { * *
              * Optional. Named parameters for Parameterized Secure Views (PSV).
        -     * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -     * corresponding parameter values (e.g., `"123"`).
              * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ - @java.lang.Override - public /* nullable */ java.lang.String getParametersOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder addParameters( + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + value) { + if (parametersBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureParametersIsMutable(); + parameters_.add(value); + onChanged(); + } else { + parametersBuilder_.addMessage(value); } - java.util.Map map = internalGetParameters().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; + return this; } /** @@ -671,28 +1603,126 @@ public java.util.Map getParametersMap() { * *
              * Optional. Named parameters for Parameterized Secure Views (PSV).
        -     * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -     * corresponding parameter values (e.g., `"123"`).
              * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ - @java.lang.Override - public java.lang.String getParametersOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder addParameters( + int index, + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + value) { + if (parametersBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureParametersIsMutable(); + parameters_.add(index, value); + onChanged(); + } else { + parametersBuilder_.addMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Optional. Named parameters for Parameterized Secure Views (PSV).
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addParameters( + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + .Builder + builderForValue) { + if (parametersBuilder_ == null) { + ensureParametersIsMutable(); + parameters_.add(builderForValue.build()); + onChanged(); + } else { + parametersBuilder_.addMessage(builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. Named parameters for Parameterized Secure Views (PSV).
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addParameters( + int index, + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + .Builder + builderForValue) { + if (parametersBuilder_ == null) { + ensureParametersIsMutable(); + parameters_.add(index, builderForValue.build()); + onChanged(); + } else { + parametersBuilder_.addMessage(index, builderForValue.build()); } - java.util.Map map = internalGetParameters().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + return this; + } + + /** + * + * + *
        +     * Optional. Named parameters for Parameterized Secure Views (PSV).
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllParameters( + java.lang.Iterable< + ? extends + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter> + values) { + if (parametersBuilder_ == null) { + ensureParametersIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, parameters_); + onChanged(); + } else { + parametersBuilder_.addAllMessages(values); } - return map.get(key); + return this; } + /** + * + * + *
        +     * Optional. Named parameters for Parameterized Secure Views (PSV).
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ public Builder clearParameters() { - bitField0_ = (bitField0_ & ~0x00000001); - internalGetMutableParameters().getMutableMap().clear(); + if (parametersBuilder_ == null) { + parameters_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + parametersBuilder_.clear(); + } return this; } @@ -701,26 +1731,38 @@ public Builder clearParameters() { * *
              * Optional. Named parameters for Parameterized Secure Views (PSV).
        -     * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -     * corresponding parameter values (e.g., `"123"`).
              * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder removeParameters(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder removeParameters(int index) { + if (parametersBuilder_ == null) { + ensureParametersIsMutable(); + parameters_.remove(index); + onChanged(); + } else { + parametersBuilder_.remove(index); } - internalGetMutableParameters().getMutableMap().remove(key); return this; } - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableParameters() { - bitField0_ |= 0x00000001; - return internalGetMutableParameters().getMutableMap(); + /** + * + * + *
        +     * Optional. Named parameters for Parameterized Secure Views (PSV).
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + .Builder + getParametersBuilder(int index) { + return internalGetParametersFieldBuilder().getBuilder(index); } /** @@ -728,23 +1770,43 @@ public java.util.Map getMutableParameters() * *
              * Optional. Named parameters for Parameterized Secure Views (PSV).
        -     * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -     * corresponding parameter values (e.g., `"123"`).
              * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder putParameters(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); + public com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .ParameterOrBuilder + getParametersOrBuilder(int index) { + if (parametersBuilder_ == null) { + return parameters_.get(index); + } else { + return parametersBuilder_.getMessageOrBuilder(index); } - if (value == null) { - throw new NullPointerException("map value"); + } + + /** + * + * + *
        +     * Optional. Named parameters for Parameterized Secure Views (PSV).
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + ? extends + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .ParameterOrBuilder> + getParametersOrBuilderList() { + if (parametersBuilder_ != null) { + return parametersBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(parameters_); } - internalGetMutableParameters().getMutableMap().put(key, value); - bitField0_ |= 0x00000001; - return this; } /** @@ -752,17 +1814,80 @@ public Builder putParameters(java.lang.String key, java.lang.String value) { * *
              * Optional. Named parameters for Parameterized Secure Views (PSV).
        -     * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -     * corresponding parameter values (e.g., `"123"`).
              * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder putAllParameters(java.util.Map values) { - internalGetMutableParameters().getMutableMap().putAll(values); - bitField0_ |= 0x00000001; - return this; + public com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + .Builder + addParametersBuilder() { + return internalGetParametersFieldBuilder() + .addBuilder( + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter.getDefaultInstance()); + } + + /** + * + * + *
        +     * Optional. Named parameters for Parameterized Secure Views (PSV).
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + .Builder + addParametersBuilder(int index) { + return internalGetParametersFieldBuilder() + .addBuilder( + index, + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter.getDefaultInstance()); + } + + /** + * + * + *
        +     * Optional. Named parameters for Parameterized Secure Views (PSV).
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + .Builder> + getParametersBuilderList() { + return internalGetParametersFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter, + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + .Builder, + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .ParameterOrBuilder> + internalGetParametersFieldBuilder() { + if (parametersBuilder_ == null) { + parametersBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter, + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .Parameter.Builder, + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .ParameterOrBuilder>( + parameters_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); + parameters_ = null; + } + return parametersBuilder_; } // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters) diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ParameterizedSecureViewParametersOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ParameterizedSecureViewParametersOrBuilder.java index 9ed2019370ec..4482a893a3c9 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ParameterizedSecureViewParametersOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/ParameterizedSecureViewParametersOrBuilder.java @@ -31,76 +31,71 @@ public interface ParameterizedSecureViewParametersOrBuilder * *
            * Optional. Named parameters for Parameterized Secure Views (PSV).
        -   * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -   * corresponding parameter values (e.g., `"123"`).
            * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ - int getParametersCount(); + java.util.List< + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter> + getParametersList(); /** * * *
            * Optional. Named parameters for Parameterized Secure Views (PSV).
        -   * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -   * corresponding parameter values (e.g., `"123"`).
            * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ - boolean containsParameters(java.lang.String key); - - /** Use {@link #getParametersMap()} instead. */ - @java.lang.Deprecated - java.util.Map getParameters(); + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter + getParameters(int index); /** * * *
            * Optional. Named parameters for Parameterized Secure Views (PSV).
        -   * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -   * corresponding parameter values (e.g., `"123"`).
            * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ - java.util.Map getParametersMap(); + int getParametersCount(); /** * * *
            * Optional. Named parameters for Parameterized Secure Views (PSV).
        -   * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -   * corresponding parameter values (e.g., `"123"`).
            * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ - /* nullable */ - java.lang.String getParametersOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue); + java.util.List< + ? extends + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters + .ParameterOrBuilder> + getParametersOrBuilderList(); /** * * *
            * Optional. Named parameters for Parameterized Secure Views (PSV).
        -   * The map keys are parameter names (e.g., `"user_id"`), and values are the
        -   * corresponding parameter values (e.g., `"123"`).
            * 
        * - * map<string, string> parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.Parameter parameters = 1 [(.google.api.field_behavior) = OPTIONAL]; * */ - java.lang.String getParametersOrThrow(java.lang.String key); + com.google.cloud.geminidataanalytics.v1beta.ParameterizedSecureViewParameters.ParameterOrBuilder + getParametersOrBuilder(int index); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/QueryParameter.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/QueryParameter.java new file mode 100644 index 000000000000..2ba01aabfcf9 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/QueryParameter.java @@ -0,0 +1,1012 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +/** + * + * + *
        + * A query parameter message represents a parameter that can be used to
        + * parameterize a SQL query.
        + * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.QueryParameter} + */ +@com.google.protobuf.Generated +public final class QueryParameter extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.QueryParameter) + QueryParameterOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "QueryParameter"); + } + + // Use QueryParameter.newBuilder() to construct. + private QueryParameter(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private QueryParameter() { + name_ = ""; + description_ = ""; + dataType_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameter_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameter_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.QueryParameter.class, + com.google.cloud.geminidataanalytics.v1beta.QueryParameter.Builder.class); + } + + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + + /** + * + * + *
        +   * Required. The name of the parameter reference in the SQL query.
        +   * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @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 name of the parameter reference in the SQL query.
        +   * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @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 DESCRIPTION_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object description_ = ""; + + /** + * + * + *
        +   * Optional. The description of the parameter that can be used by LLM to
        +   * extract the parameter value from the user question.
        +   * 
        + * + * string description = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The description. + */ + @java.lang.Override + public java.lang.String getDescription() { + java.lang.Object ref = description_; + 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(); + description_ = s; + return s; + } + } + + /** + * + * + *
        +   * Optional. The description of the parameter that can be used by LLM to
        +   * extract the parameter value from the user question.
        +   * 
        + * + * string description = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for description. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDescriptionBytes() { + java.lang.Object ref = description_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + description_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int DATA_TYPE_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object dataType_ = ""; + + /** + * + * + *
        +   * Required. The data type of the parameter, e.g. "STRING", "INT64", "DATE",
        +   * etc. For valid values, see the [BigQuery
        +   * documentation](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types).
        +   * This will be used to populate
        +   * google.cloud.bigquery.v2.QueryParameterType.type.
        +   * 
        + * + * string data_type = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @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; + } + } + + /** + * + * + *
        +   * Required. The data type of the parameter, e.g. "STRING", "INT64", "DATE",
        +   * etc. For valid values, see the [BigQuery
        +   * documentation](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types).
        +   * This will be used to populate
        +   * google.cloud.bigquery.v2.QueryParameterType.type.
        +   * 
        + * + * string data_type = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @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(name_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, name_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, description_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dataType_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, 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(name_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, description_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dataType_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, 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.cloud.geminidataanalytics.v1beta.QueryParameter)) { + return super.equals(obj); + } + com.google.cloud.geminidataanalytics.v1beta.QueryParameter other = + (com.google.cloud.geminidataanalytics.v1beta.QueryParameter) obj; + + if (!getName().equals(other.getName())) return false; + if (!getDescription().equals(other.getDescription())) 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) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + hash = (37 * hash) + DESCRIPTION_FIELD_NUMBER; + hash = (53 * hash) + getDescription().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.cloud.geminidataanalytics.v1beta.QueryParameter parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameter parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameter parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameter 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.cloud.geminidataanalytics.v1beta.QueryParameter parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameter parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameter parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameter 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.cloud.geminidataanalytics.v1beta.QueryParameter parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameter 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.cloud.geminidataanalytics.v1beta.QueryParameter parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameter 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.cloud.geminidataanalytics.v1beta.QueryParameter 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 query parameter message represents a parameter that can be used to
        +   * parameterize a SQL query.
        +   * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.QueryParameter} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.geminidataanalytics.v1beta.QueryParameter) + com.google.cloud.geminidataanalytics.v1beta.QueryParameterOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameter_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameter_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.QueryParameter.class, + com.google.cloud.geminidataanalytics.v1beta.QueryParameter.Builder.class); + } + + // Construct using com.google.cloud.geminidataanalytics.v1beta.QueryParameter.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + description_ = ""; + dataType_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameter_descriptor; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.QueryParameter getDefaultInstanceForType() { + return com.google.cloud.geminidataanalytics.v1beta.QueryParameter.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.QueryParameter build() { + com.google.cloud.geminidataanalytics.v1beta.QueryParameter result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.QueryParameter buildPartial() { + com.google.cloud.geminidataanalytics.v1beta.QueryParameter result = + new com.google.cloud.geminidataanalytics.v1beta.QueryParameter(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.QueryParameter result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.description_ = description_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.dataType_ = dataType_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.geminidataanalytics.v1beta.QueryParameter) { + return mergeFrom((com.google.cloud.geminidataanalytics.v1beta.QueryParameter) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.QueryParameter other) { + if (other == com.google.cloud.geminidataanalytics.v1beta.QueryParameter.getDefaultInstance()) + return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getDescription().isEmpty()) { + description_ = other.description_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getDataType().isEmpty()) { + dataType_ = other.dataType_; + bitField0_ |= 0x00000004; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + name_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + description_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + dataType_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object name_ = ""; + + /** + * + * + *
        +     * Required. The name of the parameter reference in the SQL query.
        +     * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @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 name of the parameter reference in the SQL query.
        +     * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @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 name of the parameter reference in the SQL query.
        +     * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @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 name of the parameter reference in the SQL query.
        +     * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearName() { + name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Required. The name of the parameter reference in the SQL query.
        +     * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @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 description_ = ""; + + /** + * + * + *
        +     * Optional. The description of the parameter that can be used by LLM to
        +     * extract the parameter value from the user question.
        +     * 
        + * + * string description = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The description. + */ + public java.lang.String getDescription() { + java.lang.Object ref = description_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + description_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * Optional. The description of the parameter that can be used by LLM to
        +     * extract the parameter value from the user question.
        +     * 
        + * + * string description = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for description. + */ + public com.google.protobuf.ByteString getDescriptionBytes() { + java.lang.Object ref = description_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + description_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * Optional. The description of the parameter that can be used by LLM to
        +     * extract the parameter value from the user question.
        +     * 
        + * + * string description = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The description to set. + * @return This builder for chaining. + */ + public Builder setDescription(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + description_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The description of the parameter that can be used by LLM to
        +     * extract the parameter value from the user question.
        +     * 
        + * + * string description = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearDescription() { + description_ = getDefaultInstance().getDescription(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. The description of the parameter that can be used by LLM to
        +     * extract the parameter value from the user question.
        +     * 
        + * + * string description = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for description to set. + * @return This builder for chaining. + */ + public Builder setDescriptionBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + description_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object dataType_ = ""; + + /** + * + * + *
        +     * Required. The data type of the parameter, e.g. "STRING", "INT64", "DATE",
        +     * etc. For valid values, see the [BigQuery
        +     * documentation](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types).
        +     * This will be used to populate
        +     * google.cloud.bigquery.v2.QueryParameterType.type.
        +     * 
        + * + * string data_type = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @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; + } + } + + /** + * + * + *
        +     * Required. The data type of the parameter, e.g. "STRING", "INT64", "DATE",
        +     * etc. For valid values, see the [BigQuery
        +     * documentation](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types).
        +     * This will be used to populate
        +     * google.cloud.bigquery.v2.QueryParameterType.type.
        +     * 
        + * + * string data_type = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @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; + } + } + + /** + * + * + *
        +     * Required. The data type of the parameter, e.g. "STRING", "INT64", "DATE",
        +     * etc. For valid values, see the [BigQuery
        +     * documentation](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types).
        +     * This will be used to populate
        +     * google.cloud.bigquery.v2.QueryParameterType.type.
        +     * 
        + * + * string data_type = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @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_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Required. The data type of the parameter, e.g. "STRING", "INT64", "DATE",
        +     * etc. For valid values, see the [BigQuery
        +     * documentation](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types).
        +     * This will be used to populate
        +     * google.cloud.bigquery.v2.QueryParameterType.type.
        +     * 
        + * + * string data_type = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearDataType() { + dataType_ = getDefaultInstance().getDataType(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Required. The data type of the parameter, e.g. "STRING", "INT64", "DATE",
        +     * etc. For valid values, see the [BigQuery
        +     * documentation](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types).
        +     * This will be used to populate
        +     * google.cloud.bigquery.v2.QueryParameterType.type.
        +     * 
        + * + * string data_type = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @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_ |= 0x00000004; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.QueryParameter) + } + + // @@protoc_insertion_point(class_scope:google.cloud.geminidataanalytics.v1beta.QueryParameter) + private static final com.google.cloud.geminidataanalytics.v1beta.QueryParameter DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.geminidataanalytics.v1beta.QueryParameter(); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameter getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public QueryParameter parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.QueryParameter getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/QueryParameterOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/QueryParameterOrBuilder.java new file mode 100644 index 000000000000..08e6e10a2ee9 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/QueryParameterOrBuilder.java @@ -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 + * + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +@com.google.protobuf.Generated +public interface QueryParameterOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.QueryParameter) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
        +   * Required. The name of the parameter reference in the SQL query.
        +   * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The name. + */ + java.lang.String getName(); + + /** + * + * + *
        +   * Required. The name of the parameter reference in the SQL query.
        +   * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for name. + */ + com.google.protobuf.ByteString getNameBytes(); + + /** + * + * + *
        +   * Optional. The description of the parameter that can be used by LLM to
        +   * extract the parameter value from the user question.
        +   * 
        + * + * string description = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The description. + */ + java.lang.String getDescription(); + + /** + * + * + *
        +   * Optional. The description of the parameter that can be used by LLM to
        +   * extract the parameter value from the user question.
        +   * 
        + * + * string description = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for description. + */ + com.google.protobuf.ByteString getDescriptionBytes(); + + /** + * + * + *
        +   * Required. The data type of the parameter, e.g. "STRING", "INT64", "DATE",
        +   * etc. For valid values, see the [BigQuery
        +   * documentation](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types).
        +   * This will be used to populate
        +   * google.cloud.bigquery.v2.QueryParameterType.type.
        +   * 
        + * + * string data_type = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The dataType. + */ + java.lang.String getDataType(); + + /** + * + * + *
        +   * Required. The data type of the parameter, e.g. "STRING", "INT64", "DATE",
        +   * etc. For valid values, see the [BigQuery
        +   * documentation](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types).
        +   * This will be used to populate
        +   * google.cloud.bigquery.v2.QueryParameterType.type.
        +   * 
        + * + * string data_type = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for dataType. + */ + com.google.protobuf.ByteString getDataTypeBytes(); +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/QueryParameterValues.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/QueryParameterValues.java new file mode 100644 index 000000000000..74ff0204b2a3 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/QueryParameterValues.java @@ -0,0 +1,797 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +/** + * + * + *
        + * A query parameter values message represents the values for the query
        + * parameters that were extracted from the user question by LLM, based on the
        + * example query.
        + * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.QueryParameterValues} + */ +@com.google.protobuf.Generated +public final class QueryParameterValues extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.QueryParameterValues) + QueryParameterValuesOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "QueryParameterValues"); + } + + // Use QueryParameterValues.newBuilder() to construct. + private QueryParameterValues(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private QueryParameterValues() { + name_ = ""; + value_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameterValues_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameterValues_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.class, + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.Builder.class); + } + + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + + /** + * + * + *
        +   * Required. The name of the parameter.
        +   * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @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 name of the parameter.
        +   * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @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 VALUE_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object value_ = ""; + + /** + * + * + *
        +   * Required. The value of the parameter.
        +   * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @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; + } + } + + /** + * + * + *
        +   * Required. The value of the parameter.
        +   * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @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(name_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, name_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(value_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, 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(name_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(value_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, 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.cloud.geminidataanalytics.v1beta.QueryParameterValues)) { + return super.equals(obj); + } + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues other = + (com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues) obj; + + if (!getName().equals(other.getName())) return false; + 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) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().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.cloud.geminidataanalytics.v1beta.QueryParameterValues parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues 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.cloud.geminidataanalytics.v1beta.QueryParameterValues parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues 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.cloud.geminidataanalytics.v1beta.QueryParameterValues parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues 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.cloud.geminidataanalytics.v1beta.QueryParameterValues parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues 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.cloud.geminidataanalytics.v1beta.QueryParameterValues 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 query parameter values message represents the values for the query
        +   * parameters that were extracted from the user question by LLM, based on the
        +   * example query.
        +   * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.QueryParameterValues} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.geminidataanalytics.v1beta.QueryParameterValues) + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValuesOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameterValues_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameterValues_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.class, + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.Builder.class); + } + + // Construct using com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + value_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_QueryParameterValues_descriptor; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues + getDefaultInstanceForType() { + return com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues build() { + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues buildPartial() { + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues result = + new com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.value_ = value_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues) { + return mergeFrom((com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues other) { + if (other + == com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues.getDefaultInstance()) + return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getValue().isEmpty()) { + value_ = other.value_; + bitField0_ |= 0x00000002; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + name_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + value_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object name_ = ""; + + /** + * + * + *
        +     * Required. The name of the parameter.
        +     * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @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 name of the parameter.
        +     * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @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 name of the parameter.
        +     * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @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 name of the parameter.
        +     * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearName() { + name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Required. The name of the parameter.
        +     * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @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 value_ = ""; + + /** + * + * + *
        +     * Required. The value of the parameter.
        +     * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @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; + } + } + + /** + * + * + *
        +     * Required. The value of the parameter.
        +     * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @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; + } + } + + /** + * + * + *
        +     * Required. The value of the parameter.
        +     * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @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_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Required. The value of the parameter.
        +     * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearValue() { + value_ = getDefaultInstance().getValue(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Required. The value of the parameter.
        +     * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @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_ |= 0x00000002; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.QueryParameterValues) + } + + // @@protoc_insertion_point(class_scope:google.cloud.geminidataanalytics.v1beta.QueryParameterValues) + private static final com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues(); + } + + public static com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public QueryParameterValues parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.QueryParameterValues + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/QueryParameterValuesOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/QueryParameterValuesOrBuilder.java new file mode 100644 index 000000000000..575af47fa538 --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/QueryParameterValuesOrBuilder.java @@ -0,0 +1,80 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +@com.google.protobuf.Generated +public interface QueryParameterValuesOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.QueryParameterValues) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
        +   * Required. The name of the parameter.
        +   * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The name. + */ + java.lang.String getName(); + + /** + * + * + *
        +   * Required. The name of the parameter.
        +   * 
        + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for name. + */ + com.google.protobuf.ByteString getNameBytes(); + + /** + * + * + *
        +   * Required. The value of the parameter.
        +   * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The value. + */ + java.lang.String getValue(); + + /** + * + * + *
        +   * Required. The value of the parameter.
        +   * 
        + * + * string value = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for value. + */ + com.google.protobuf.ByteString getValueBytes(); +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SpannerDatabaseReference.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SpannerDatabaseReference.java index 2ccbc3668769..ef462ffe4561 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SpannerDatabaseReference.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SpannerDatabaseReference.java @@ -54,10 +54,12 @@ private SpannerDatabaseReference(com.google.protobuf.GeneratedMessage.Builder private SpannerDatabaseReference() { engine_ = 0; projectId_ = ""; - region_ = ""; instanceId_ = ""; databaseId_ = ""; tableIds_ = com.google.protobuf.LazyStringArrayList.emptyList(); + databaseTableReferences_ = java.util.Collections.emptyList(); + priority_ = ""; + requestTag_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -343,59 +345,6 @@ public com.google.protobuf.ByteString getProjectIdBytes() { } } - public static final int REGION_FIELD_NUMBER = 2; - - @SuppressWarnings("serial") - private volatile java.lang.Object region_ = ""; - - /** - * - * - *
        -   * Required. The region of the instance.
        -   * 
        - * - * string region = 2 [(.google.api.field_behavior) = REQUIRED]; - * - * @return The region. - */ - @java.lang.Override - public java.lang.String getRegion() { - java.lang.Object ref = region_; - 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(); - region_ = s; - return s; - } - } - - /** - * - * - *
        -   * Required. The region of the instance.
        -   * 
        - * - * string region = 2 [(.google.api.field_behavior) = REQUIRED]; - * - * @return The bytes for region. - */ - @java.lang.Override - public com.google.protobuf.ByteString getRegionBytes() { - java.lang.Object ref = region_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - region_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - public static final int INSTANCE_ID_FIELD_NUMBER = 3; @SuppressWarnings("serial") @@ -570,6 +519,223 @@ public com.google.protobuf.ByteString getTableIdsBytes(int index) { return tableIds_.getByteString(index); } + public static final int DATABASE_TABLE_REFERENCES_FIELD_NUMBER = 7; + + @SuppressWarnings("serial") + private java.util.List + databaseTableReferences_; + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getDatabaseTableReferencesList() { + return databaseTableReferences_; + } + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + getDatabaseTableReferencesOrBuilderList() { + return databaseTableReferences_; + } + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getDatabaseTableReferencesCount() { + return databaseTableReferences_.size(); + } + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + getDatabaseTableReferences(int index) { + return databaseTableReferences_.get(index); + } + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder + getDatabaseTableReferencesOrBuilder(int index) { + return databaseTableReferences_.get(index); + } + + public static final int PRIORITY_FIELD_NUMBER = 8; + + @SuppressWarnings("serial") + private volatile java.lang.Object priority_ = ""; + + /** + * + * + *
        +   * Optional. Priority for the queries to Spanner. Should be a value supported
        +   * by Cloud Spanner e.g.: LOW, MEDIUM, HIGH. Unsupported values will be
        +   * ignored. See
        +   * https://docs.cloud.google.com/spanner/docs/reference/rest/v1/RequestOptions#Priority
        +   * for complete list.
        +   * 
        + * + * string priority = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The priority. + */ + @java.lang.Override + public java.lang.String getPriority() { + java.lang.Object ref = priority_; + 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(); + priority_ = s; + return s; + } + } + + /** + * + * + *
        +   * Optional. Priority for the queries to Spanner. Should be a value supported
        +   * by Cloud Spanner e.g.: LOW, MEDIUM, HIGH. Unsupported values will be
        +   * ignored. See
        +   * https://docs.cloud.google.com/spanner/docs/reference/rest/v1/RequestOptions#Priority
        +   * for complete list.
        +   * 
        + * + * string priority = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for priority. + */ + @java.lang.Override + public com.google.protobuf.ByteString getPriorityBytes() { + java.lang.Object ref = priority_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + priority_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int REQUEST_TAG_FIELD_NUMBER = 9; + + @SuppressWarnings("serial") + private volatile java.lang.Object requestTag_ = ""; + + /** + * + * + *
        +   * Tag to be attached to all queries to Spanner. Allows to identify and
        +   * monitor queries sent to Spanner by the GDA service.
        +   * 
        + * + * string request_tag = 9; + * + * @return The requestTag. + */ + @java.lang.Override + public java.lang.String getRequestTag() { + java.lang.Object ref = requestTag_; + 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(); + requestTag_ = s; + return s; + } + } + + /** + * + * + *
        +   * Tag to be attached to all queries to Spanner. Allows to identify and
        +   * monitor queries sent to Spanner by the GDA service.
        +   * 
        + * + * string request_tag = 9; + * + * @return The bytes for requestTag. + */ + @java.lang.Override + public com.google.protobuf.ByteString getRequestTagBytes() { + java.lang.Object ref = requestTag_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + requestTag_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -587,9 +753,6 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessage.isStringEmpty(projectId_)) { com.google.protobuf.GeneratedMessage.writeString(output, 1, projectId_); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(region_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, region_); - } if (!com.google.protobuf.GeneratedMessage.isStringEmpty(instanceId_)) { com.google.protobuf.GeneratedMessage.writeString(output, 3, instanceId_); } @@ -605,6 +768,15 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io .getNumber()) { output.writeEnum(6, engine_); } + for (int i = 0; i < databaseTableReferences_.size(); i++) { + output.writeMessage(7, databaseTableReferences_.get(i)); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(priority_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 8, priority_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(requestTag_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 9, requestTag_); + } getUnknownFields().writeTo(output); } @@ -617,9 +789,6 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessage.isStringEmpty(projectId_)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(1, projectId_); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(region_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(2, region_); - } if (!com.google.protobuf.GeneratedMessage.isStringEmpty(instanceId_)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(3, instanceId_); } @@ -640,6 +809,17 @@ public int getSerializedSize() { .getNumber()) { size += com.google.protobuf.CodedOutputStream.computeEnumSize(6, engine_); } + for (int i = 0; i < databaseTableReferences_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 7, databaseTableReferences_.get(i)); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(priority_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(8, priority_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(requestTag_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(9, requestTag_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -658,10 +838,13 @@ public boolean equals(final java.lang.Object obj) { if (engine_ != other.engine_) return false; if (!getProjectId().equals(other.getProjectId())) return false; - if (!getRegion().equals(other.getRegion())) return false; if (!getInstanceId().equals(other.getInstanceId())) return false; if (!getDatabaseId().equals(other.getDatabaseId())) return false; if (!getTableIdsList().equals(other.getTableIdsList())) return false; + if (!getDatabaseTableReferencesList().equals(other.getDatabaseTableReferencesList())) + return false; + if (!getPriority().equals(other.getPriority())) return false; + if (!getRequestTag().equals(other.getRequestTag())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -677,8 +860,6 @@ public int hashCode() { hash = (53 * hash) + engine_; hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER; hash = (53 * hash) + getProjectId().hashCode(); - hash = (37 * hash) + REGION_FIELD_NUMBER; - hash = (53 * hash) + getRegion().hashCode(); hash = (37 * hash) + INSTANCE_ID_FIELD_NUMBER; hash = (53 * hash) + getInstanceId().hashCode(); hash = (37 * hash) + DATABASE_ID_FIELD_NUMBER; @@ -687,6 +868,14 @@ public int hashCode() { hash = (37 * hash) + TABLE_IDS_FIELD_NUMBER; hash = (53 * hash) + getTableIdsList().hashCode(); } + if (getDatabaseTableReferencesCount() > 0) { + hash = (37 * hash) + DATABASE_TABLE_REFERENCES_FIELD_NUMBER; + hash = (53 * hash) + getDatabaseTableReferencesList().hashCode(); + } + hash = (37 * hash) + PRIORITY_FIELD_NUMBER; + hash = (53 * hash) + getPriority().hashCode(); + hash = (37 * hash) + REQUEST_TAG_FIELD_NUMBER; + hash = (53 * hash) + getRequestTag().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -832,10 +1021,18 @@ public Builder clear() { bitField0_ = 0; engine_ = 0; projectId_ = ""; - region_ = ""; instanceId_ = ""; databaseId_ = ""; tableIds_ = com.google.protobuf.LazyStringArrayList.emptyList(); + if (databaseTableReferencesBuilder_ == null) { + databaseTableReferences_ = java.util.Collections.emptyList(); + } else { + databaseTableReferences_ = null; + databaseTableReferencesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000020); + priority_ = ""; + requestTag_ = ""; return this; } @@ -865,6 +1062,7 @@ public com.google.cloud.geminidataanalytics.v1beta.SpannerDatabaseReference buil public com.google.cloud.geminidataanalytics.v1beta.SpannerDatabaseReference buildPartial() { com.google.cloud.geminidataanalytics.v1beta.SpannerDatabaseReference result = new com.google.cloud.geminidataanalytics.v1beta.SpannerDatabaseReference(this); + buildPartialRepeatedFields(result); if (bitField0_ != 0) { buildPartial0(result); } @@ -872,6 +1070,20 @@ public com.google.cloud.geminidataanalytics.v1beta.SpannerDatabaseReference buil return result; } + private void buildPartialRepeatedFields( + com.google.cloud.geminidataanalytics.v1beta.SpannerDatabaseReference result) { + if (databaseTableReferencesBuilder_ == null) { + if (((bitField0_ & 0x00000020) != 0)) { + databaseTableReferences_ = + java.util.Collections.unmodifiableList(databaseTableReferences_); + bitField0_ = (bitField0_ & ~0x00000020); + } + result.databaseTableReferences_ = databaseTableReferences_; + } else { + result.databaseTableReferences_ = databaseTableReferencesBuilder_.build(); + } + } + private void buildPartial0( com.google.cloud.geminidataanalytics.v1beta.SpannerDatabaseReference result) { int from_bitField0_ = bitField0_; @@ -882,18 +1094,21 @@ private void buildPartial0( result.projectId_ = projectId_; } if (((from_bitField0_ & 0x00000004) != 0)) { - result.region_ = region_; - } - if (((from_bitField0_ & 0x00000008) != 0)) { result.instanceId_ = instanceId_; } - if (((from_bitField0_ & 0x00000010) != 0)) { + if (((from_bitField0_ & 0x00000008) != 0)) { result.databaseId_ = databaseId_; } - if (((from_bitField0_ & 0x00000020) != 0)) { + if (((from_bitField0_ & 0x00000010) != 0)) { tableIds_.makeImmutable(); result.tableIds_ = tableIds_; } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.priority_ = priority_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.requestTag_ = requestTag_; + } } @java.lang.Override @@ -920,31 +1135,63 @@ public Builder mergeFrom( bitField0_ |= 0x00000002; onChanged(); } - if (!other.getRegion().isEmpty()) { - region_ = other.region_; - bitField0_ |= 0x00000004; - onChanged(); - } if (!other.getInstanceId().isEmpty()) { instanceId_ = other.instanceId_; - bitField0_ |= 0x00000008; + bitField0_ |= 0x00000004; onChanged(); } if (!other.getDatabaseId().isEmpty()) { databaseId_ = other.databaseId_; - bitField0_ |= 0x00000010; + bitField0_ |= 0x00000008; onChanged(); } if (!other.tableIds_.isEmpty()) { if (tableIds_.isEmpty()) { tableIds_ = other.tableIds_; - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000010; } else { ensureTableIdsIsMutable(); tableIds_.addAll(other.tableIds_); } onChanged(); } + if (databaseTableReferencesBuilder_ == null) { + if (!other.databaseTableReferences_.isEmpty()) { + if (databaseTableReferences_.isEmpty()) { + databaseTableReferences_ = other.databaseTableReferences_; + bitField0_ = (bitField0_ & ~0x00000020); + } else { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.addAll(other.databaseTableReferences_); + } + onChanged(); + } + } else { + if (!other.databaseTableReferences_.isEmpty()) { + if (databaseTableReferencesBuilder_.isEmpty()) { + databaseTableReferencesBuilder_.dispose(); + databaseTableReferencesBuilder_ = null; + databaseTableReferences_ = other.databaseTableReferences_; + bitField0_ = (bitField0_ & ~0x00000020); + databaseTableReferencesBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetDatabaseTableReferencesFieldBuilder() + : null; + } else { + databaseTableReferencesBuilder_.addAllMessages(other.databaseTableReferences_); + } + } + } + if (!other.getPriority().isEmpty()) { + priority_ = other.priority_; + bitField0_ |= 0x00000040; + onChanged(); + } + if (!other.getRequestTag().isEmpty()) { + requestTag_ = other.requestTag_; + bitField0_ |= 0x00000080; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -977,22 +1224,16 @@ public Builder mergeFrom( bitField0_ |= 0x00000002; break; } // case 10 - case 18: - { - region_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000004; - break; - } // case 18 case 26: { instanceId_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000008; + bitField0_ |= 0x00000004; break; } // case 26 case 34: { databaseId_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000010; + bitField0_ |= 0x00000008; break; } // case 34 case 42: @@ -1008,6 +1249,32 @@ public Builder mergeFrom( bitField0_ |= 0x00000001; break; } // case 48 + case 58: + { + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference m = + input.readMessage( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.parser(), + extensionRegistry); + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(m); + } else { + databaseTableReferencesBuilder_.addMessage(m); + } + break; + } // case 58 + case 66: + { + priority_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000040; + break; + } // case 66 + case 74: + { + requestTag_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000080; + break; + } // case 74 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -1247,25 +1514,25 @@ public Builder setProjectIdBytes(com.google.protobuf.ByteString value) { return this; } - private java.lang.Object region_ = ""; + private java.lang.Object instanceId_ = ""; /** * * *
        -     * Required. The region of the instance.
        +     * Required. The instance id.
              * 
        * - * string region = 2 [(.google.api.field_behavior) = REQUIRED]; + * string instance_id = 3 [(.google.api.field_behavior) = REQUIRED]; * - * @return The region. + * @return The instanceId. */ - public java.lang.String getRegion() { - java.lang.Object ref = region_; + public java.lang.String getInstanceId() { + java.lang.Object ref = instanceId_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); - region_ = s; + instanceId_ = s; return s; } else { return (java.lang.String) ref; @@ -1276,19 +1543,19 @@ public java.lang.String getRegion() { * * *
        -     * Required. The region of the instance.
        +     * Required. The instance id.
              * 
        * - * string region = 2 [(.google.api.field_behavior) = REQUIRED]; + * string instance_id = 3 [(.google.api.field_behavior) = REQUIRED]; * - * @return The bytes for region. + * @return The bytes for instanceId. */ - public com.google.protobuf.ByteString getRegionBytes() { - java.lang.Object ref = region_; + public com.google.protobuf.ByteString getInstanceIdBytes() { + java.lang.Object ref = instanceId_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - region_ = b; + instanceId_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; @@ -1299,19 +1566,19 @@ public com.google.protobuf.ByteString getRegionBytes() { * * *
        -     * Required. The region of the instance.
        +     * Required. The instance id.
              * 
        * - * string region = 2 [(.google.api.field_behavior) = REQUIRED]; + * string instance_id = 3 [(.google.api.field_behavior) = REQUIRED]; * - * @param value The region to set. + * @param value The instanceId to set. * @return This builder for chaining. */ - public Builder setRegion(java.lang.String value) { + public Builder setInstanceId(java.lang.String value) { if (value == null) { throw new NullPointerException(); } - region_ = value; + instanceId_ = value; bitField0_ |= 0x00000004; onChanged(); return this; @@ -1321,131 +1588,20 @@ public Builder setRegion(java.lang.String value) { * * *
        -     * Required. The region of the instance.
        +     * Required. The instance id.
              * 
        * - * string region = 2 [(.google.api.field_behavior) = REQUIRED]; + * string instance_id = 3 [(.google.api.field_behavior) = REQUIRED]; * * @return This builder for chaining. */ - public Builder clearRegion() { - region_ = getDefaultInstance().getRegion(); + public Builder clearInstanceId() { + instanceId_ = getDefaultInstance().getInstanceId(); bitField0_ = (bitField0_ & ~0x00000004); onChanged(); return this; } - /** - * - * - *
        -     * Required. The region of the instance.
        -     * 
        - * - * string region = 2 [(.google.api.field_behavior) = REQUIRED]; - * - * @param value The bytes for region to set. - * @return This builder for chaining. - */ - public Builder setRegionBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - region_ = value; - bitField0_ |= 0x00000004; - onChanged(); - return this; - } - - private java.lang.Object instanceId_ = ""; - - /** - * - * - *
        -     * Required. The instance id.
        -     * 
        - * - * string instance_id = 3 [(.google.api.field_behavior) = REQUIRED]; - * - * @return The instanceId. - */ - public java.lang.String getInstanceId() { - java.lang.Object ref = instanceId_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - instanceId_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - - /** - * - * - *
        -     * Required. The instance id.
        -     * 
        - * - * string instance_id = 3 [(.google.api.field_behavior) = REQUIRED]; - * - * @return The bytes for instanceId. - */ - public com.google.protobuf.ByteString getInstanceIdBytes() { - java.lang.Object ref = instanceId_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - instanceId_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - /** - * - * - *
        -     * Required. The instance id.
        -     * 
        - * - * string instance_id = 3 [(.google.api.field_behavior) = REQUIRED]; - * - * @param value The instanceId to set. - * @return This builder for chaining. - */ - public Builder setInstanceId(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - instanceId_ = value; - bitField0_ |= 0x00000008; - onChanged(); - return this; - } - - /** - * - * - *
        -     * Required. The instance id.
        -     * 
        - * - * string instance_id = 3 [(.google.api.field_behavior) = REQUIRED]; - * - * @return This builder for chaining. - */ - public Builder clearInstanceId() { - instanceId_ = getDefaultInstance().getInstanceId(); - bitField0_ = (bitField0_ & ~0x00000008); - onChanged(); - return this; - } - /** * * @@ -1464,7 +1620,7 @@ public Builder setInstanceIdBytes(com.google.protobuf.ByteString value) { } checkByteStringIsUtf8(value); instanceId_ = value; - bitField0_ |= 0x00000008; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -1534,7 +1690,7 @@ public Builder setDatabaseId(java.lang.String value) { throw new NullPointerException(); } databaseId_ = value; - bitField0_ |= 0x00000010; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -1552,7 +1708,7 @@ public Builder setDatabaseId(java.lang.String value) { */ public Builder clearDatabaseId() { databaseId_ = getDefaultInstance().getDatabaseId(); - bitField0_ = (bitField0_ & ~0x00000010); + bitField0_ = (bitField0_ & ~0x00000008); onChanged(); return this; } @@ -1575,7 +1731,7 @@ public Builder setDatabaseIdBytes(com.google.protobuf.ByteString value) { } checkByteStringIsUtf8(value); databaseId_ = value; - bitField0_ |= 0x00000010; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -1587,7 +1743,7 @@ private void ensureTableIdsIsMutable() { if (!tableIds_.isModifiable()) { tableIds_ = new com.google.protobuf.LazyStringArrayList(tableIds_); } - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000010; } /** @@ -1672,7 +1828,7 @@ public Builder setTableIds(int index, java.lang.String value) { } ensureTableIdsIsMutable(); tableIds_.set(index, value); - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -1695,7 +1851,7 @@ public Builder addTableIds(java.lang.String value) { } ensureTableIdsIsMutable(); tableIds_.add(value); - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -1715,7 +1871,7 @@ public Builder addTableIds(java.lang.String value) { public Builder addAllTableIds(java.lang.Iterable values) { ensureTableIdsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll(values, tableIds_); - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -1733,7 +1889,7 @@ public Builder addAllTableIds(java.lang.Iterable values) { */ public Builder clearTableIds() { tableIds_ = com.google.protobuf.LazyStringArrayList.emptyList(); - bitField0_ = (bitField0_ & ~0x00000020); + bitField0_ = (bitField0_ & ~0x00000010); ; onChanged(); return this; @@ -1758,7 +1914,722 @@ public Builder addTableIdsBytes(com.google.protobuf.ByteString value) { checkByteStringIsUtf8(value); ensureTableIdsIsMutable(); tableIds_.add(value); - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + private java.util.List + databaseTableReferences_ = java.util.Collections.emptyList(); + + private void ensureDatabaseTableReferencesIsMutable() { + if (!((bitField0_ & 0x00000020) != 0)) { + databaseTableReferences_ = + new java.util.ArrayList< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference>( + databaseTableReferences_); + bitField0_ |= 0x00000020; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + databaseTableReferencesBuilder_; + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List + getDatabaseTableReferencesList() { + if (databaseTableReferencesBuilder_ == null) { + return java.util.Collections.unmodifiableList(databaseTableReferences_); + } else { + return databaseTableReferencesBuilder_.getMessageList(); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public int getDatabaseTableReferencesCount() { + if (databaseTableReferencesBuilder_ == null) { + return databaseTableReferences_.size(); + } else { + return databaseTableReferencesBuilder_.getCount(); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + getDatabaseTableReferences(int index) { + if (databaseTableReferencesBuilder_ == null) { + return databaseTableReferences_.get(index); + } else { + return databaseTableReferencesBuilder_.getMessage(index); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setDatabaseTableReferences( + int index, com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference value) { + if (databaseTableReferencesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.set(index, value); + onChanged(); + } else { + databaseTableReferencesBuilder_.setMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setDatabaseTableReferences( + int index, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + builderForValue) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.set(index, builderForValue.build()); + onChanged(); + } else { + databaseTableReferencesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addDatabaseTableReferences( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference value) { + if (databaseTableReferencesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(value); + onChanged(); + } else { + databaseTableReferencesBuilder_.addMessage(value); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addDatabaseTableReferences( + int index, com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference value) { + if (databaseTableReferencesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(index, value); + onChanged(); + } else { + databaseTableReferencesBuilder_.addMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addDatabaseTableReferences( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + builderForValue) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(builderForValue.build()); + onChanged(); + } else { + databaseTableReferencesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addDatabaseTableReferences( + int index, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + builderForValue) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.add(index, builderForValue.build()); + onChanged(); + } else { + databaseTableReferencesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllDatabaseTableReferences( + java.lang.Iterable< + ? extends com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference> + values) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, databaseTableReferences_); + onChanged(); + } else { + databaseTableReferencesBuilder_.addAllMessages(values); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearDatabaseTableReferences() { + if (databaseTableReferencesBuilder_ == null) { + databaseTableReferences_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000020); + onChanged(); + } else { + databaseTableReferencesBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeDatabaseTableReferences(int index) { + if (databaseTableReferencesBuilder_ == null) { + ensureDatabaseTableReferencesIsMutable(); + databaseTableReferences_.remove(index); + onChanged(); + } else { + databaseTableReferencesBuilder_.remove(index); + } + return this; + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + getDatabaseTableReferencesBuilder(int index) { + return internalGetDatabaseTableReferencesFieldBuilder().getBuilder(index); + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder + getDatabaseTableReferencesOrBuilder(int index) { + if (databaseTableReferencesBuilder_ == null) { + return databaseTableReferences_.get(index); + } else { + return databaseTableReferencesBuilder_.getMessageOrBuilder(index); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + getDatabaseTableReferencesOrBuilderList() { + if (databaseTableReferencesBuilder_ != null) { + return databaseTableReferencesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(databaseTableReferences_); + } + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + addDatabaseTableReferencesBuilder() { + return internalGetDatabaseTableReferencesFieldBuilder() + .addBuilder( + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + .getDefaultInstance()); + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder + addDatabaseTableReferencesBuilder(int index) { + return internalGetDatabaseTableReferencesFieldBuilder() + .addBuilder( + index, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference + .getDefaultInstance()); + } + + /** + * + * + *
        +     * Optional. References to tables within the database. Each reference
        +     * specifies a table and can optionally include the table's schema to provide
        +     * context for the query.
        +     * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder> + getDatabaseTableReferencesBuilderList() { + return internalGetDatabaseTableReferencesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + internalGetDatabaseTableReferencesFieldBuilder() { + if (databaseTableReferencesBuilder_ == null) { + databaseTableReferencesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference.Builder, + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder>( + databaseTableReferences_, + ((bitField0_ & 0x00000020) != 0), + getParentForChildren(), + isClean()); + databaseTableReferences_ = null; + } + return databaseTableReferencesBuilder_; + } + + private java.lang.Object priority_ = ""; + + /** + * + * + *
        +     * Optional. Priority for the queries to Spanner. Should be a value supported
        +     * by Cloud Spanner e.g.: LOW, MEDIUM, HIGH. Unsupported values will be
        +     * ignored. See
        +     * https://docs.cloud.google.com/spanner/docs/reference/rest/v1/RequestOptions#Priority
        +     * for complete list.
        +     * 
        + * + * string priority = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The priority. + */ + public java.lang.String getPriority() { + java.lang.Object ref = priority_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + priority_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * Optional. Priority for the queries to Spanner. Should be a value supported
        +     * by Cloud Spanner e.g.: LOW, MEDIUM, HIGH. Unsupported values will be
        +     * ignored. See
        +     * https://docs.cloud.google.com/spanner/docs/reference/rest/v1/RequestOptions#Priority
        +     * for complete list.
        +     * 
        + * + * string priority = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for priority. + */ + public com.google.protobuf.ByteString getPriorityBytes() { + java.lang.Object ref = priority_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + priority_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * Optional. Priority for the queries to Spanner. Should be a value supported
        +     * by Cloud Spanner e.g.: LOW, MEDIUM, HIGH. Unsupported values will be
        +     * ignored. See
        +     * https://docs.cloud.google.com/spanner/docs/reference/rest/v1/RequestOptions#Priority
        +     * for complete list.
        +     * 
        + * + * string priority = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The priority to set. + * @return This builder for chaining. + */ + public Builder setPriority(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + priority_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. Priority for the queries to Spanner. Should be a value supported
        +     * by Cloud Spanner e.g.: LOW, MEDIUM, HIGH. Unsupported values will be
        +     * ignored. See
        +     * https://docs.cloud.google.com/spanner/docs/reference/rest/v1/RequestOptions#Priority
        +     * for complete list.
        +     * 
        + * + * string priority = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearPriority() { + priority_ = getDefaultInstance().getPriority(); + bitField0_ = (bitField0_ & ~0x00000040); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Optional. Priority for the queries to Spanner. Should be a value supported
        +     * by Cloud Spanner e.g.: LOW, MEDIUM, HIGH. Unsupported values will be
        +     * ignored. See
        +     * https://docs.cloud.google.com/spanner/docs/reference/rest/v1/RequestOptions#Priority
        +     * for complete list.
        +     * 
        + * + * string priority = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for priority to set. + * @return This builder for chaining. + */ + public Builder setPriorityBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + priority_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + private java.lang.Object requestTag_ = ""; + + /** + * + * + *
        +     * Tag to be attached to all queries to Spanner. Allows to identify and
        +     * monitor queries sent to Spanner by the GDA service.
        +     * 
        + * + * string request_tag = 9; + * + * @return The requestTag. + */ + public java.lang.String getRequestTag() { + java.lang.Object ref = requestTag_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + requestTag_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
        +     * Tag to be attached to all queries to Spanner. Allows to identify and
        +     * monitor queries sent to Spanner by the GDA service.
        +     * 
        + * + * string request_tag = 9; + * + * @return The bytes for requestTag. + */ + public com.google.protobuf.ByteString getRequestTagBytes() { + java.lang.Object ref = requestTag_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + requestTag_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
        +     * Tag to be attached to all queries to Spanner. Allows to identify and
        +     * monitor queries sent to Spanner by the GDA service.
        +     * 
        + * + * string request_tag = 9; + * + * @param value The requestTag to set. + * @return This builder for chaining. + */ + public Builder setRequestTag(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + requestTag_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Tag to be attached to all queries to Spanner. Allows to identify and
        +     * monitor queries sent to Spanner by the GDA service.
        +     * 
        + * + * string request_tag = 9; + * + * @return This builder for chaining. + */ + public Builder clearRequestTag() { + requestTag_ = getDefaultInstance().getRequestTag(); + bitField0_ = (bitField0_ & ~0x00000080); + onChanged(); + return this; + } + + /** + * + * + *
        +     * Tag to be attached to all queries to Spanner. Allows to identify and
        +     * monitor queries sent to Spanner by the GDA service.
        +     * 
        + * + * string request_tag = 9; + * + * @param value The bytes for requestTag to set. + * @return This builder for chaining. + */ + public Builder setRequestTagBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + requestTag_ = value; + bitField0_ |= 0x00000080; onChanged(); return this; } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SpannerDatabaseReferenceOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SpannerDatabaseReferenceOrBuilder.java index 2730af259e42..3df0afeded1f 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SpannerDatabaseReferenceOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SpannerDatabaseReferenceOrBuilder.java @@ -82,32 +82,6 @@ public interface SpannerDatabaseReferenceOrBuilder */ com.google.protobuf.ByteString getProjectIdBytes(); - /** - * - * - *
        -   * Required. The region of the instance.
        -   * 
        - * - * string region = 2 [(.google.api.field_behavior) = REQUIRED]; - * - * @return The region. - */ - java.lang.String getRegion(); - - /** - * - * - *
        -   * Required. The region of the instance.
        -   * 
        - * - * string region = 2 [(.google.api.field_behavior) = REQUIRED]; - * - * @return The bytes for region. - */ - com.google.protobuf.ByteString getRegionBytes(); - /** * * @@ -213,4 +187,146 @@ public interface SpannerDatabaseReferenceOrBuilder * @return The bytes of the tableIds at the given index. */ com.google.protobuf.ByteString getTableIdsBytes(int index); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List + getDatabaseTableReferencesList(); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReference getDatabaseTableReferences( + int index); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getDatabaseTableReferencesCount(); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder> + getDatabaseTableReferencesOrBuilderList(); + + /** + * + * + *
        +   * Optional. References to tables within the database. Each reference
        +   * specifies a table and can optionally include the table's schema to provide
        +   * context for the query.
        +   * 
        + * + * + * repeated .google.cloud.geminidataanalytics.v1beta.DatabaseTableReference database_table_references = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.DatabaseTableReferenceOrBuilder + getDatabaseTableReferencesOrBuilder(int index); + + /** + * + * + *
        +   * Optional. Priority for the queries to Spanner. Should be a value supported
        +   * by Cloud Spanner e.g.: LOW, MEDIUM, HIGH. Unsupported values will be
        +   * ignored. See
        +   * https://docs.cloud.google.com/spanner/docs/reference/rest/v1/RequestOptions#Priority
        +   * for complete list.
        +   * 
        + * + * string priority = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The priority. + */ + java.lang.String getPriority(); + + /** + * + * + *
        +   * Optional. Priority for the queries to Spanner. Should be a value supported
        +   * by Cloud Spanner e.g.: LOW, MEDIUM, HIGH. Unsupported values will be
        +   * ignored. See
        +   * https://docs.cloud.google.com/spanner/docs/reference/rest/v1/RequestOptions#Priority
        +   * for complete list.
        +   * 
        + * + * string priority = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for priority. + */ + com.google.protobuf.ByteString getPriorityBytes(); + + /** + * + * + *
        +   * Tag to be attached to all queries to Spanner. Allows to identify and
        +   * monitor queries sent to Spanner by the GDA service.
        +   * 
        + * + * string request_tag = 9; + * + * @return The requestTag. + */ + java.lang.String getRequestTag(); + + /** + * + * + *
        +   * Tag to be attached to all queries to Spanner. Allows to identify and
        +   * monitor queries sent to Spanner by the GDA service.
        +   * 
        + * + * string request_tag = 9; + * + * @return The bytes for requestTag. + */ + com.google.protobuf.ByteString getRequestTagBytes(); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/StudioDatasourceReferences.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/StudioDatasourceReferences.java index d5d48a6b67dc..7683c8d7e160 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/StudioDatasourceReferences.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/StudioDatasourceReferences.java @@ -80,11 +80,11 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
        -   * The references to the studio datasources.
        +   * Optional. The references to the studio datasources.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override @@ -97,11 +97,11 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
        -   * The references to the studio datasources.
        +   * Optional. The references to the studio datasources.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override @@ -115,11 +115,11 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
        -   * The references to the studio datasources.
        +   * Optional. The references to the studio datasources.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override @@ -131,11 +131,11 @@ public int getStudioReferencesCount() { * * *
        -   * The references to the studio datasources.
        +   * Optional. The references to the studio datasources.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override @@ -148,11 +148,11 @@ public com.google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference get * * *
        -   * The references to the studio datasources.
        +   * Optional. The references to the studio datasources.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override @@ -554,11 +554,11 @@ private void ensureStudioReferencesIsMutable() { * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public java.util.List @@ -574,11 +574,11 @@ private void ensureStudioReferencesIsMutable() { * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public int getStudioReferencesCount() { @@ -593,11 +593,11 @@ public int getStudioReferencesCount() { * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public com.google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference @@ -613,11 +613,11 @@ public int getStudioReferencesCount() { * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public Builder setStudioReferences( @@ -639,11 +639,11 @@ public Builder setStudioReferences( * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public Builder setStudioReferences( @@ -664,11 +664,11 @@ public Builder setStudioReferences( * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public Builder addStudioReferences( @@ -690,11 +690,11 @@ public Builder addStudioReferences( * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public Builder addStudioReferences( @@ -716,11 +716,11 @@ public Builder addStudioReferences( * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public Builder addStudioReferences( @@ -740,11 +740,11 @@ public Builder addStudioReferences( * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public Builder addStudioReferences( @@ -765,11 +765,11 @@ public Builder addStudioReferences( * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public Builder addAllStudioReferences( @@ -790,11 +790,11 @@ public Builder addAllStudioReferences( * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public Builder clearStudioReferences() { @@ -812,11 +812,11 @@ public Builder clearStudioReferences() { * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public Builder removeStudioReferences(int index) { @@ -834,11 +834,11 @@ public Builder removeStudioReferences(int index) { * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public com.google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference.Builder @@ -850,11 +850,11 @@ public Builder removeStudioReferences(int index) { * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public com.google.cloud.geminidataanalytics.v1beta.StudioDatasourceReferenceOrBuilder @@ -870,11 +870,11 @@ public Builder removeStudioReferences(int index) { * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public java.util.List< @@ -892,11 +892,11 @@ public Builder removeStudioReferences(int index) { * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public com.google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference.Builder @@ -911,11 +911,11 @@ public Builder removeStudioReferences(int index) { * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public com.google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference.Builder @@ -931,11 +931,11 @@ public Builder removeStudioReferences(int index) { * * *
        -     * The references to the studio datasources.
        +     * Optional. The references to the studio datasources.
              * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ public java.util.List< diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/StudioDatasourceReferencesOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/StudioDatasourceReferencesOrBuilder.java index 774fe2ac671d..21fb85d5c1ac 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/StudioDatasourceReferencesOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/StudioDatasourceReferencesOrBuilder.java @@ -30,11 +30,11 @@ public interface StudioDatasourceReferencesOrBuilder * * *
        -   * The references to the studio datasources.
        +   * Optional. The references to the studio datasources.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ java.util.List @@ -44,11 +44,11 @@ public interface StudioDatasourceReferencesOrBuilder * * *
        -   * The references to the studio datasources.
        +   * Optional. The references to the studio datasources.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ com.google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference getStudioReferences( @@ -58,11 +58,11 @@ com.google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference getStudioR * * *
        -   * The references to the studio datasources.
        +   * Optional. The references to the studio datasources.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ int getStudioReferencesCount(); @@ -71,11 +71,11 @@ com.google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference getStudioR * * *
        -   * The references to the studio datasources.
        +   * Optional. The references to the studio datasources.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ java.util.List< @@ -86,11 +86,11 @@ com.google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference getStudioR * * *
        -   * The references to the studio datasources.
        +   * Optional. The references to the studio datasources.
            * 
        * * - * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2; + * repeated .google.cloud.geminidataanalytics.v1beta.StudioDatasourceReference studio_references = 2 [(.google.api.field_behavior) = OPTIONAL]; * */ com.google.cloud.geminidataanalytics.v1beta.StudioDatasourceReferenceOrBuilder diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SystemMessage.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SystemMessage.java index f1c6cb865964..0022b04ccb66 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SystemMessage.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SystemMessage.java @@ -25,7 +25,7 @@ * *
          * A message from the system in response to the user. This message can also be a
        - * message from the user as historical context for multiturn conversations with
        + * message from the user as historical context for multi-turn conversations with
          * the system.
          * 
        * @@ -87,6 +87,7 @@ public enum KindCase CHART(5), ERROR(6), EXAMPLE_QUERIES(13), + @java.lang.Deprecated CLARIFICATION(14), KIND_NOT_SET(0); private final int value; @@ -531,16 +532,20 @@ public com.google.cloud.geminidataanalytics.v1beta.ExampleQueries getExampleQuer * * *
        -   * Optional. A message containing clarification questions.
        +   * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +   * instead. A message containing clarification questions.
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.SystemMessage.clarification is deprecated. + * See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=547 * @return Whether the clarification field is set. */ @java.lang.Override + @java.lang.Deprecated public boolean hasClarification() { return kindCase_ == 14; } @@ -549,16 +554,20 @@ public boolean hasClarification() { * * *
        -   * Optional. A message containing clarification questions.
        +   * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +   * instead. A message containing clarification questions.
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.SystemMessage.clarification is deprecated. + * See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=547 * @return The clarification. */ @java.lang.Override + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationMessage getClarification() { if (kindCase_ == 14) { return (com.google.cloud.geminidataanalytics.v1beta.ClarificationMessage) kind_; @@ -570,14 +579,16 @@ public com.google.cloud.geminidataanalytics.v1beta.ClarificationMessage getClari * * *
        -   * Optional. A message containing clarification questions.
        +   * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +   * instead. A message containing clarification questions.
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationMessageOrBuilder getClarificationOrBuilder() { if (kindCase_ == 14) { @@ -625,6 +636,65 @@ public int getGroupId() { return groupId_; } + public static final int CITATION_FIELD_NUMBER = 15; + private com.google.cloud.geminidataanalytics.v1beta.Citation citation_; + + /** + * + * + *
        +   * Output only. Citation information for the system message.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the citation field is set. + */ + @java.lang.Override + public boolean hasCitation() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
        +   * Output only. Citation information for the system message.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The citation. + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.Citation getCitation() { + return citation_ == null + ? com.google.cloud.geminidataanalytics.v1beta.Citation.getDefaultInstance() + : citation_; + } + + /** + * + * + *
        +   * Output only. Citation information for the system message.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.CitationOrBuilder getCitationOrBuilder() { + return citation_ == null + ? com.google.cloud.geminidataanalytics.v1beta.Citation.getDefaultInstance() + : citation_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -667,6 +737,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io output.writeMessage( 14, (com.google.cloud.geminidataanalytics.v1beta.ClarificationMessage) kind_); } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(15, getCitation()); + } getUnknownFields().writeTo(output); } @@ -719,6 +792,9 @@ public int getSerializedSize() { com.google.protobuf.CodedOutputStream.computeMessageSize( 14, (com.google.cloud.geminidataanalytics.v1beta.ClarificationMessage) kind_); } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(15, getCitation()); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -739,6 +815,10 @@ public boolean equals(final java.lang.Object obj) { if (hasGroupId()) { if (getGroupId() != other.getGroupId()) return false; } + if (hasCitation() != other.hasCitation()) return false; + if (hasCitation()) { + if (!getCitation().equals(other.getCitation())) return false; + } if (!getKindCase().equals(other.getKindCase())) return false; switch (kindCase_) { case 1: @@ -783,6 +863,10 @@ public int hashCode() { hash = (37 * hash) + GROUP_ID_FIELD_NUMBER; hash = (53 * hash) + getGroupId(); } + if (hasCitation()) { + hash = (37 * hash) + CITATION_FIELD_NUMBER; + hash = (53 * hash) + getCitation().hashCode(); + } switch (kindCase_) { case 1: hash = (37 * hash) + TEXT_FIELD_NUMBER; @@ -926,7 +1010,7 @@ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.Builder * *
            * A message from the system in response to the user. This message can also be a
        -   * message from the user as historical context for multiturn conversations with
        +   * message from the user as historical context for multi-turn conversations with
            * the system.
            * 
        * @@ -952,10 +1036,19 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { } // Construct using com.google.cloud.geminidataanalytics.v1beta.SystemMessage.newBuilder() - private Builder() {} + private Builder() { + maybeForceBuilderInitialization(); + } private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetCitationFieldBuilder(); + } } @java.lang.Override @@ -987,6 +1080,11 @@ public Builder clear() { clarificationBuilder_.clear(); } groupId_ = 0; + citation_ = null; + if (citationBuilder_ != null) { + citationBuilder_.dispose(); + citationBuilder_ = null; + } kindCase_ = 0; kind_ = null; return this; @@ -1031,6 +1129,10 @@ private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.SystemMes result.groupId_ = groupId_; to_bitField0_ |= 0x00000001; } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.citation_ = citationBuilder_ == null ? citation_ : citationBuilder_.build(); + to_bitField0_ |= 0x00000002; + } result.bitField0_ |= to_bitField0_; } @@ -1080,6 +1182,9 @@ public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.SystemMessa if (other.hasGroupId()) { setGroupId(other.getGroupId()); } + if (other.hasCitation()) { + mergeCitation(other.getCitation()); + } switch (other.getKindCase()) { case TEXT: { @@ -1209,6 +1314,13 @@ public Builder mergeFrom( kindCase_ = 14; break; } // case 114 + case 122: + { + input.readMessage( + internalGetCitationFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000200; + break; + } // case 122 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -2812,16 +2924,20 @@ public Builder clearExampleQueries() { * * *
        -     * Optional. A message containing clarification questions.
        +     * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +     * instead. A message containing clarification questions.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.SystemMessage.clarification is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=547 * @return Whether the clarification field is set. */ @java.lang.Override + @java.lang.Deprecated public boolean hasClarification() { return kindCase_ == 14; } @@ -2830,16 +2946,20 @@ public boolean hasClarification() { * * *
        -     * Optional. A message containing clarification questions.
        +     * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +     * instead. A message containing clarification questions.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.SystemMessage.clarification is + * deprecated. See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=547 * @return The clarification. */ @java.lang.Override + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationMessage getClarification() { if (clarificationBuilder_ == null) { if (kindCase_ == 14) { @@ -2860,13 +2980,15 @@ public com.google.cloud.geminidataanalytics.v1beta.ClarificationMessage getClari * * *
        -     * Optional. A message containing clarification questions.
        +     * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +     * instead. A message containing clarification questions.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public Builder setClarification( com.google.cloud.geminidataanalytics.v1beta.ClarificationMessage value) { if (clarificationBuilder_ == null) { @@ -2886,13 +3008,15 @@ public Builder setClarification( * * *
        -     * Optional. A message containing clarification questions.
        +     * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +     * instead. A message containing clarification questions.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public Builder setClarification( com.google.cloud.geminidataanalytics.v1beta.ClarificationMessage.Builder builderForValue) { if (clarificationBuilder_ == null) { @@ -2909,13 +3033,15 @@ public Builder setClarification( * * *
        -     * Optional. A message containing clarification questions.
        +     * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +     * instead. A message containing clarification questions.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public Builder mergeClarification( com.google.cloud.geminidataanalytics.v1beta.ClarificationMessage value) { if (clarificationBuilder_ == null) { @@ -2947,13 +3073,15 @@ public Builder mergeClarification( * * *
        -     * Optional. A message containing clarification questions.
        +     * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +     * instead. A message containing clarification questions.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public Builder clearClarification() { if (clarificationBuilder_ == null) { if (kindCase_ == 14) { @@ -2975,13 +3103,15 @@ public Builder clearClarification() { * * *
        -     * Optional. A message containing clarification questions.
        +     * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +     * instead. A message containing clarification questions.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationMessage.Builder getClarificationBuilder() { return internalGetClarificationFieldBuilder().getBuilder(); @@ -2991,14 +3121,16 @@ public Builder clearClarification() { * * *
        -     * Optional. A message containing clarification questions.
        +     * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +     * instead. A message containing clarification questions.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override + @java.lang.Deprecated public com.google.cloud.geminidataanalytics.v1beta.ClarificationMessageOrBuilder getClarificationOrBuilder() { if ((kindCase_ == 14) && (clarificationBuilder_ != null)) { @@ -3016,11 +3148,12 @@ public Builder clearClarification() { * * *
        -     * Optional. A message containing clarification questions.
        +     * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +     * instead. A message containing clarification questions.
              * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ private com.google.protobuf.SingleFieldBuilder< @@ -3128,6 +3261,220 @@ public Builder clearGroupId() { return this; } + private com.google.cloud.geminidataanalytics.v1beta.Citation citation_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.Citation, + com.google.cloud.geminidataanalytics.v1beta.Citation.Builder, + com.google.cloud.geminidataanalytics.v1beta.CitationOrBuilder> + citationBuilder_; + + /** + * + * + *
        +     * Output only. Citation information for the system message.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the citation field is set. + */ + public boolean hasCitation() { + return ((bitField0_ & 0x00000200) != 0); + } + + /** + * + * + *
        +     * Output only. Citation information for the system message.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The citation. + */ + public com.google.cloud.geminidataanalytics.v1beta.Citation getCitation() { + if (citationBuilder_ == null) { + return citation_ == null + ? com.google.cloud.geminidataanalytics.v1beta.Citation.getDefaultInstance() + : citation_; + } else { + return citationBuilder_.getMessage(); + } + } + + /** + * + * + *
        +     * Output only. Citation information for the system message.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setCitation(com.google.cloud.geminidataanalytics.v1beta.Citation value) { + if (citationBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + citation_ = value; + } else { + citationBuilder_.setMessage(value); + } + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Output only. Citation information for the system message.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setCitation( + com.google.cloud.geminidataanalytics.v1beta.Citation.Builder builderForValue) { + if (citationBuilder_ == null) { + citation_ = builderForValue.build(); + } else { + citationBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + + /** + * + * + *
        +     * Output only. Citation information for the system message.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeCitation(com.google.cloud.geminidataanalytics.v1beta.Citation value) { + if (citationBuilder_ == null) { + if (((bitField0_ & 0x00000200) != 0) + && citation_ != null + && citation_ + != com.google.cloud.geminidataanalytics.v1beta.Citation.getDefaultInstance()) { + getCitationBuilder().mergeFrom(value); + } else { + citation_ = value; + } + } else { + citationBuilder_.mergeFrom(value); + } + if (citation_ != null) { + bitField0_ |= 0x00000200; + onChanged(); + } + return this; + } + + /** + * + * + *
        +     * Output only. Citation information for the system message.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearCitation() { + bitField0_ = (bitField0_ & ~0x00000200); + citation_ = null; + if (citationBuilder_ != null) { + citationBuilder_.dispose(); + citationBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
        +     * Output only. Citation information for the system message.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.Citation.Builder getCitationBuilder() { + bitField0_ |= 0x00000200; + onChanged(); + return internalGetCitationFieldBuilder().getBuilder(); + } + + /** + * + * + *
        +     * Output only. Citation information for the system message.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.CitationOrBuilder getCitationOrBuilder() { + if (citationBuilder_ != null) { + return citationBuilder_.getMessageOrBuilder(); + } else { + return citation_ == null + ? com.google.cloud.geminidataanalytics.v1beta.Citation.getDefaultInstance() + : citation_; + } + } + + /** + * + * + *
        +     * Output only. Citation information for the system message.
        +     * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.Citation, + com.google.cloud.geminidataanalytics.v1beta.Citation.Builder, + com.google.cloud.geminidataanalytics.v1beta.CitationOrBuilder> + internalGetCitationFieldBuilder() { + if (citationBuilder_ == null) { + citationBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.Citation, + com.google.cloud.geminidataanalytics.v1beta.Citation.Builder, + com.google.cloud.geminidataanalytics.v1beta.CitationOrBuilder>( + getCitation(), getParentForChildren(), isClean()); + citation_ = null; + } + return citationBuilder_; + } + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.SystemMessage) } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SystemMessageOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SystemMessageOrBuilder.java index 83391c3ef257..c7200be8b5c1 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SystemMessageOrBuilder.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/SystemMessageOrBuilder.java @@ -295,43 +295,53 @@ public interface SystemMessageOrBuilder * * *
        -   * Optional. A message containing clarification questions.
        +   * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +   * instead. A message containing clarification questions.
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.SystemMessage.clarification is deprecated. + * See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=547 * @return Whether the clarification field is set. */ + @java.lang.Deprecated boolean hasClarification(); /** * * *
        -   * Optional. A message containing clarification questions.
        +   * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +   * instead. A message containing clarification questions.
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * * + * @deprecated google.cloud.geminidataanalytics.v1beta.SystemMessage.clarification is deprecated. + * See google/cloud/geminidataanalytics/v1beta/data_chat_service.proto;l=547 * @return The clarification. */ + @java.lang.Deprecated com.google.cloud.geminidataanalytics.v1beta.ClarificationMessage getClarification(); /** * * *
        -   * Optional. A message containing clarification questions.
        +   * Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE
        +   * instead. A message containing clarification questions.
            * 
        * * - * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.geminidataanalytics.v1beta.ClarificationMessage clarification = 14 [deprecated = true, (.google.api.field_behavior) = OPTIONAL]; * */ + @java.lang.Deprecated com.google.cloud.geminidataanalytics.v1beta.ClarificationMessageOrBuilder getClarificationOrBuilder(); @@ -365,5 +375,48 @@ public interface SystemMessageOrBuilder */ int getGroupId(); + /** + * + * + *
        +   * Output only. Citation information for the system message.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the citation field is set. + */ + boolean hasCitation(); + + /** + * + * + *
        +   * Output only. Citation information for the system message.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The citation. + */ + com.google.cloud.geminidataanalytics.v1beta.Citation getCitation(); + + /** + * + * + *
        +   * Output only. Citation information for the system message.
        +   * 
        + * + * + * .google.cloud.geminidataanalytics.v1beta.Citation citation = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.cloud.geminidataanalytics.v1beta.CitationOrBuilder getCitationOrBuilder(); + com.google.cloud.geminidataanalytics.v1beta.SystemMessage.KindCase getKindCase(); } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/TextMessage.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/TextMessage.java index b2732af06477..55db9f7adb68 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/TextMessage.java +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/TextMessage.java @@ -126,6 +126,17 @@ public enum TextType implements com.google.protobuf.ProtocolMessageEnum { * PROGRESS = 3; */ PROGRESS(3), + /** + * + * + *
        +     * The text is a list of follow-up questions suggested.
        +     * Each item in parts is a follow-up question.
        +     * 
        + * + * FOLLOWUP_QUESTIONS = 4; + */ + FOLLOWUP_QUESTIONS(4), UNRECOGNIZED(-1), ; @@ -187,6 +198,18 @@ public enum TextType implements com.google.protobuf.ProtocolMessageEnum { */ public static final int PROGRESS_VALUE = 3; + /** + * + * + *
        +     * The text is a list of follow-up questions suggested.
        +     * Each item in parts is a follow-up question.
        +     * 
        + * + * FOLLOWUP_QUESTIONS = 4; + */ + public static final int FOLLOWUP_QUESTIONS_VALUE = 4; + public final int getNumber() { if (this == UNRECOGNIZED) { throw new java.lang.IllegalArgumentException( @@ -219,6 +242,8 @@ public static TextType forNumber(int value) { return THOUGHT; case 3: return PROGRESS; + case 4: + return FOLLOWUP_QUESTIONS; default: return null; } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/UserFunctions.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/UserFunctions.java new file mode 100644 index 000000000000..e943a156ef0e --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/UserFunctions.java @@ -0,0 +1,963 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +/** + * + * + *
        + * A collection of user functions to be included in context.
        + * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.UserFunctions} + */ +@com.google.protobuf.Generated +public final class UserFunctions extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.geminidataanalytics.v1beta.UserFunctions) + UserFunctionsOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "UserFunctions"); + } + + // Use UserFunctions.newBuilder() to construct. + private UserFunctions(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private UserFunctions() { + bqRoutines_ = java.util.Collections.emptyList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_UserFunctions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_UserFunctions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.UserFunctions.class, + com.google.cloud.geminidataanalytics.v1beta.UserFunctions.Builder.class); + } + + public static final int BQ_ROUTINES_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private java.util.List bqRoutines_; + + /** + * + * + *
        +   * A list of BigQuery routines to include in the context.
        +   * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + */ + @java.lang.Override + public java.util.List + getBqRoutinesList() { + return bqRoutines_; + } + + /** + * + * + *
        +   * A list of BigQuery routines to include in the context.
        +   * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + */ + @java.lang.Override + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineOrBuilder> + getBqRoutinesOrBuilderList() { + return bqRoutines_; + } + + /** + * + * + *
        +   * A list of BigQuery routines to include in the context.
        +   * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + */ + @java.lang.Override + public int getBqRoutinesCount() { + return bqRoutines_.size(); + } + + /** + * + * + *
        +   * A list of BigQuery routines to include in the context.
        +   * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine getBqRoutines(int index) { + return bqRoutines_.get(index); + } + + /** + * + * + *
        +   * A list of BigQuery routines to include in the context.
        +   * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + */ + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineOrBuilder + getBqRoutinesOrBuilder(int index) { + return bqRoutines_.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 < bqRoutines_.size(); i++) { + output.writeMessage(1, bqRoutines_.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 < bqRoutines_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, bqRoutines_.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.cloud.geminidataanalytics.v1beta.UserFunctions)) { + return super.equals(obj); + } + com.google.cloud.geminidataanalytics.v1beta.UserFunctions other = + (com.google.cloud.geminidataanalytics.v1beta.UserFunctions) obj; + + if (!getBqRoutinesList().equals(other.getBqRoutinesList())) 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 (getBqRoutinesCount() > 0) { + hash = (37 * hash) + BQ_ROUTINES_FIELD_NUMBER; + hash = (53 * hash) + getBqRoutinesList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.geminidataanalytics.v1beta.UserFunctions parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.UserFunctions parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.UserFunctions parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.UserFunctions 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.cloud.geminidataanalytics.v1beta.UserFunctions parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.geminidataanalytics.v1beta.UserFunctions parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.geminidataanalytics.v1beta.UserFunctions parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.UserFunctions 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.cloud.geminidataanalytics.v1beta.UserFunctions parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.UserFunctions 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.cloud.geminidataanalytics.v1beta.UserFunctions parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.geminidataanalytics.v1beta.UserFunctions 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.cloud.geminidataanalytics.v1beta.UserFunctions 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 collection of user functions to be included in context.
        +   * 
        + * + * Protobuf type {@code google.cloud.geminidataanalytics.v1beta.UserFunctions} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.geminidataanalytics.v1beta.UserFunctions) + com.google.cloud.geminidataanalytics.v1beta.UserFunctionsOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_UserFunctions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_UserFunctions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.geminidataanalytics.v1beta.UserFunctions.class, + com.google.cloud.geminidataanalytics.v1beta.UserFunctions.Builder.class); + } + + // Construct using com.google.cloud.geminidataanalytics.v1beta.UserFunctions.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (bqRoutinesBuilder_ == null) { + bqRoutines_ = java.util.Collections.emptyList(); + } else { + bqRoutines_ = null; + bqRoutinesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.geminidataanalytics.v1beta.ContextProto + .internal_static_google_cloud_geminidataanalytics_v1beta_UserFunctions_descriptor; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.UserFunctions getDefaultInstanceForType() { + return com.google.cloud.geminidataanalytics.v1beta.UserFunctions.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.UserFunctions build() { + com.google.cloud.geminidataanalytics.v1beta.UserFunctions result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.UserFunctions buildPartial() { + com.google.cloud.geminidataanalytics.v1beta.UserFunctions result = + new com.google.cloud.geminidataanalytics.v1beta.UserFunctions(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields( + com.google.cloud.geminidataanalytics.v1beta.UserFunctions result) { + if (bqRoutinesBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + bqRoutines_ = java.util.Collections.unmodifiableList(bqRoutines_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.bqRoutines_ = bqRoutines_; + } else { + result.bqRoutines_ = bqRoutinesBuilder_.build(); + } + } + + private void buildPartial0(com.google.cloud.geminidataanalytics.v1beta.UserFunctions result) { + int from_bitField0_ = bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.geminidataanalytics.v1beta.UserFunctions) { + return mergeFrom((com.google.cloud.geminidataanalytics.v1beta.UserFunctions) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.geminidataanalytics.v1beta.UserFunctions other) { + if (other == com.google.cloud.geminidataanalytics.v1beta.UserFunctions.getDefaultInstance()) + return this; + if (bqRoutinesBuilder_ == null) { + if (!other.bqRoutines_.isEmpty()) { + if (bqRoutines_.isEmpty()) { + bqRoutines_ = other.bqRoutines_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureBqRoutinesIsMutable(); + bqRoutines_.addAll(other.bqRoutines_); + } + onChanged(); + } + } else { + if (!other.bqRoutines_.isEmpty()) { + if (bqRoutinesBuilder_.isEmpty()) { + bqRoutinesBuilder_.dispose(); + bqRoutinesBuilder_ = null; + bqRoutines_ = other.bqRoutines_; + bitField0_ = (bitField0_ & ~0x00000001); + bqRoutinesBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetBqRoutinesFieldBuilder() + : null; + } else { + bqRoutinesBuilder_.addAllMessages(other.bqRoutines_); + } + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine m = + input.readMessage( + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.parser(), + extensionRegistry); + if (bqRoutinesBuilder_ == null) { + ensureBqRoutinesIsMutable(); + bqRoutines_.add(m); + } else { + bqRoutinesBuilder_.addMessage(m); + } + break; + } // case 10 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.util.List + bqRoutines_ = java.util.Collections.emptyList(); + + private void ensureBqRoutinesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + bqRoutines_ = + new java.util.ArrayList( + bqRoutines_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.Builder, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineOrBuilder> + bqRoutinesBuilder_; + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public java.util.List + getBqRoutinesList() { + if (bqRoutinesBuilder_ == null) { + return java.util.Collections.unmodifiableList(bqRoutines_); + } else { + return bqRoutinesBuilder_.getMessageList(); + } + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public int getBqRoutinesCount() { + if (bqRoutinesBuilder_ == null) { + return bqRoutines_.size(); + } else { + return bqRoutinesBuilder_.getCount(); + } + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine getBqRoutines(int index) { + if (bqRoutinesBuilder_ == null) { + return bqRoutines_.get(index); + } else { + return bqRoutinesBuilder_.getMessage(index); + } + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public Builder setBqRoutines( + int index, com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine value) { + if (bqRoutinesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureBqRoutinesIsMutable(); + bqRoutines_.set(index, value); + onChanged(); + } else { + bqRoutinesBuilder_.setMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public Builder setBqRoutines( + int index, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.Builder builderForValue) { + if (bqRoutinesBuilder_ == null) { + ensureBqRoutinesIsMutable(); + bqRoutines_.set(index, builderForValue.build()); + onChanged(); + } else { + bqRoutinesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public Builder addBqRoutines( + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine value) { + if (bqRoutinesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureBqRoutinesIsMutable(); + bqRoutines_.add(value); + onChanged(); + } else { + bqRoutinesBuilder_.addMessage(value); + } + return this; + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public Builder addBqRoutines( + int index, com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine value) { + if (bqRoutinesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureBqRoutinesIsMutable(); + bqRoutines_.add(index, value); + onChanged(); + } else { + bqRoutinesBuilder_.addMessage(index, value); + } + return this; + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public Builder addBqRoutines( + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.Builder builderForValue) { + if (bqRoutinesBuilder_ == null) { + ensureBqRoutinesIsMutable(); + bqRoutines_.add(builderForValue.build()); + onChanged(); + } else { + bqRoutinesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public Builder addBqRoutines( + int index, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.Builder builderForValue) { + if (bqRoutinesBuilder_ == null) { + ensureBqRoutinesIsMutable(); + bqRoutines_.add(index, builderForValue.build()); + onChanged(); + } else { + bqRoutinesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public Builder addAllBqRoutines( + java.lang.Iterable + values) { + if (bqRoutinesBuilder_ == null) { + ensureBqRoutinesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, bqRoutines_); + onChanged(); + } else { + bqRoutinesBuilder_.addAllMessages(values); + } + return this; + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public Builder clearBqRoutines() { + if (bqRoutinesBuilder_ == null) { + bqRoutines_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + bqRoutinesBuilder_.clear(); + } + return this; + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public Builder removeBqRoutines(int index) { + if (bqRoutinesBuilder_ == null) { + ensureBqRoutinesIsMutable(); + bqRoutines_.remove(index); + onChanged(); + } else { + bqRoutinesBuilder_.remove(index); + } + return this; + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.Builder getBqRoutinesBuilder( + int index) { + return internalGetBqRoutinesFieldBuilder().getBuilder(index); + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineOrBuilder + getBqRoutinesOrBuilder(int index) { + if (bqRoutinesBuilder_ == null) { + return bqRoutines_.get(index); + } else { + return bqRoutinesBuilder_.getMessageOrBuilder(index); + } + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public java.util.List< + ? extends com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineOrBuilder> + getBqRoutinesOrBuilderList() { + if (bqRoutinesBuilder_ != null) { + return bqRoutinesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(bqRoutines_); + } + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.Builder + addBqRoutinesBuilder() { + return internalGetBqRoutinesFieldBuilder() + .addBuilder( + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.getDefaultInstance()); + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.Builder addBqRoutinesBuilder( + int index) { + return internalGetBqRoutinesFieldBuilder() + .addBuilder( + index, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.getDefaultInstance()); + } + + /** + * + * + *
        +     * A list of BigQuery routines to include in the context.
        +     * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + * + */ + public java.util.List + getBqRoutinesBuilderList() { + return internalGetBqRoutinesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.Builder, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineOrBuilder> + internalGetBqRoutinesFieldBuilder() { + if (bqRoutinesBuilder_ == null) { + bqRoutinesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine.Builder, + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineOrBuilder>( + bqRoutines_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); + bqRoutines_ = null; + } + return bqRoutinesBuilder_; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.geminidataanalytics.v1beta.UserFunctions) + } + + // @@protoc_insertion_point(class_scope:google.cloud.geminidataanalytics.v1beta.UserFunctions) + private static final com.google.cloud.geminidataanalytics.v1beta.UserFunctions DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.geminidataanalytics.v1beta.UserFunctions(); + } + + public static com.google.cloud.geminidataanalytics.v1beta.UserFunctions getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public UserFunctions parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.geminidataanalytics.v1beta.UserFunctions getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/UserFunctionsOrBuilder.java b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/UserFunctionsOrBuilder.java new file mode 100644 index 000000000000..0d95185cabdf --- /dev/null +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/java/com/google/cloud/geminidataanalytics/v1beta/UserFunctionsOrBuilder.java @@ -0,0 +1,85 @@ +/* + * 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/cloud/geminidataanalytics/v1beta/context.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.geminidataanalytics.v1beta; + +@com.google.protobuf.Generated +public interface UserFunctionsOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.geminidataanalytics.v1beta.UserFunctions) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
        +   * A list of BigQuery routines to include in the context.
        +   * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + */ + java.util.List getBqRoutinesList(); + + /** + * + * + *
        +   * A list of BigQuery routines to include in the context.
        +   * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + */ + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutine getBqRoutines(int index); + + /** + * + * + *
        +   * A list of BigQuery routines to include in the context.
        +   * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + */ + int getBqRoutinesCount(); + + /** + * + * + *
        +   * A list of BigQuery routines to include in the context.
        +   * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + */ + java.util.List + getBqRoutinesOrBuilderList(); + + /** + * + * + *
        +   * A list of BigQuery routines to include in the context.
        +   * 
        + * + * repeated .google.cloud.geminidataanalytics.v1beta.BigQueryRoutine bq_routines = 1; + */ + com.google.cloud.geminidataanalytics.v1beta.BigQueryRoutineOrBuilder getBqRoutinesOrBuilder( + int index); +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/context.proto b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/context.proto index 9dff5b1b88bf..093cb565416f 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/context.proto +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/context.proto @@ -17,6 +17,7 @@ syntax = "proto3"; package google.cloud.geminidataanalytics.v1beta; import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; import "google/cloud/geminidataanalytics/v1beta/datasource.proto"; import "google/protobuf/wrappers.proto"; @@ -72,12 +73,12 @@ message Context { // index in the `left_schema_paths` list. SchemaPaths right_schema_paths = 2; - // Sources which generated the schema relation edge. - repeated Source sources = 3; + // Optional. Sources which generated the schema relation edge. + repeated Source sources = 3 [(google.api.field_behavior) = OPTIONAL]; - // A confidence score for the suggested relationship. + // Optional. A confidence score for the suggested relationship. // Manually added edges have the highest confidence score. - float confidence_score = 4; + float confidence_score = 4 [(google.api.field_behavior) = OPTIONAL]; } // Optional. The basic entry point for data owners creating domain knowledge @@ -97,17 +98,19 @@ message Context { // Optional. A list of example queries, providing examples of relevant and // commonly used SQL queries and their corresponding natural language queries - // optionally present. Currently only used for BigQuery data sources. + // optionally present. Currently only used for BigQuery data sources and + // databases (alloydb, cloudsql, spanner) data sources. repeated ExampleQuery example_queries = 5 [(google.api.field_behavior) = OPTIONAL]; // Optional. A list of golden queries, providing examples of relevant and // commonly used Looker queries and their corresponding natural language - // queries optionally present. + // queries optionally present. Only supported for Looker data sources. repeated LookerGoldenQuery looker_golden_queries = 11 [(google.api.field_behavior) = OPTIONAL]; // Optional. Term definitions (currently, only user authored) + // Not supported for databases (alloydb, cloudsql, spanner) data sources. repeated GlossaryTerm glossary_terms = 8 [(google.api.field_behavior) = OPTIONAL]; @@ -115,6 +118,37 @@ message Context { // referenced columns. repeated SchemaRelationship schema_relationships = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A collection of user functions to be included in context. + UserFunctions user_functions = 10 [(google.api.field_behavior) = OPTIONAL]; +} + +// A collection of user functions to be included in context. +message UserFunctions { + // A list of BigQuery routines to include in the context. + repeated BigQueryRoutine bq_routines = 1; +} + +// A reference to a BigQuery routine. +message BigQueryRoutine { + // The reference to the BigQuery routine. + BigQueryRoutineReference routine_reference = 1; + + // User override or addition to description, to tell the agent when to use the + // UDF. + string description = 2; +} + +// A reference to a BigQuery routine. +message BigQueryRoutineReference { + // The project ID of the routine. + string project_id = 1; + + // The dataset ID of the routine. + string dataset_id = 2; + + // The routine ID of the routine. + string routine_id = 3; } // Example of relevant and commonly used SQL query and its corresponding natural @@ -133,6 +167,53 @@ message ExampleQuery { // Optional. A natural language question that a user might ask. // For example: "How many orders were placed last month?" string natural_language_question = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The list of query parameters. + // Example: The parameterized SQL query + // "SELECT * FROM my_table WHERE id = @id" can be matched with any value of + // id. + repeated QueryParameter parameters = 3 + [(google.api.field_behavior) = OPTIONAL]; +} + +// A query parameter message represents a parameter that can be used to +// parameterize a SQL query. +message QueryParameter { + // Required. The name of the parameter reference in the SQL query. + string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The description of the parameter that can be used by LLM to + // extract the parameter value from the user question. + string description = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Required. The data type of the parameter, e.g. "STRING", "INT64", "DATE", + // etc. For valid values, see the [BigQuery + // documentation](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types). + // This will be used to populate + // google.cloud.bigquery.v2.QueryParameterType.type. + string data_type = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// A matched query message represents the agent having matched one of the +// example queries supplied in context as being applicable to the current +// question. It will also contain additional info during the matching process. +message MatchedQuery { + // The query that was matched based on an example query. + ExampleQuery example_query = 1; + + // The extracted values for the query parameters. + repeated QueryParameterValues query_parameter_values = 2; +} + +// A query parameter values message represents the values for the query +// parameters that were extracted from the user question by LLM, based on the +// example query. +message QueryParameterValues { + // Required. The name of the parameter. + string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The value of the parameter. + string value = 2 [(google.api.field_behavior) = REQUIRED]; } // A golden query for Looker, including natural language questions and a @@ -156,8 +237,10 @@ message LookerQuery { // Required. The field to filter on. string field = 1 [(google.api.field_behavior) = REQUIRED]; - // Required. The value for the field to filter on. - string value = 2 [(google.api.field_behavior) = REQUIRED]; + // Optional. The value for the field to filter on. + // Optional so we can preserve the default value as an empty + // string, important to get a valid and working Looker Explore url. + optional string value = 2 [(google.api.field_behavior) = OPTIONAL]; } // Required. The LookML model used to generate the query. @@ -177,6 +260,16 @@ message LookerQuery { // Optional. Limit in the query. optional string limit = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The primary identifier for the query resource in Looker, used for + // API operations. Maps to `id` (or `slug`) in the Looker API `Query` + // resource. + optional string query_id = 10 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The short alphanumeric identifier for the query, used for share + // links and Explore URLs (e.g., in the `qid` parameter). Maps to `client_id` + // in the Looker API `Query` resource. + optional string client_id = 11 [(google.api.field_behavior) = OPTIONAL]; } // Definition of a term within a specific domain. @@ -197,6 +290,17 @@ message GlossaryTerm { // Options for the conversation. message ConversationOptions { + // Allowed models for the agent/conversation. + enum Model { + // No model specified. The model may be set on the chat request, or the + // default model will be used. + MODEL_UNSPECIFIED = 0; + + // Use the most up-to-date non-preview model. This may constrain certain + // request level settings. + LATEST_GA_MODEL = 1; + } + // Optional. Options for chart generation. ChartOptions chart = 1 [(google.api.field_behavior) = OPTIONAL]; @@ -205,6 +309,9 @@ message ConversationOptions { // Optional. Options for datasources. DatasourceOptions datasource = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The model to use for the agent loop. + optional Model model = 6 [(google.api.field_behavior) = OPTIONAL]; } // Options for datasources configurations. @@ -254,3 +361,68 @@ message AnalysisOptions { // Optional. Options for Python analysis. Python python = 1 [(google.api.field_behavior) = OPTIONAL]; } + +// Source attributions for content. +message Citation { + // Output only. List of the sources being cited. + repeated CitationSource sources = 1 + [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. List of the anchors of the citations. + repeated CitationAnchor anchors = 2 + [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// The source of the citation. +message CitationSource { + // The source of the citation, which can be one of the supported types. + oneof source_type { + // Output only. The uri used as the source, such as a web grounding URL. + string uri = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The example query used as the source. + ExampleQuery example_query = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The glossary term used as the source. + GlossaryTerm glossary_term = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Output only. Unique identifier of the source. This ID is service-generated + // and is unique within the scope of a single `Citation` message. + string id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The title of the source. + string title = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// The anchor of the citation. +message CitationAnchor { + // Citation anchor within a TextMessage. + message TextMessageCitationAnchor { + // Output only. The 0-based index of the part within the TextMessage.parts + // field. + int32 part_index = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The offset, measured in UTF-8 bytes, within the part string + // where the citation begins (inclusive). Example: For the text "Hello, + // world" where "world" is cited, the start offset bytes (inclusive) is 7 + // and the end offset bytes (exclusive) is 12. + int32 start_offset_bytes = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The offset, measured in UTF-8 bytes, within the part string + // where the citation ends (exclusive). Example: For the text "Hello, world" + // where "world" is cited, the start offset bytes (inclusive) is 7 and the + // end offset bytes (exclusive) is 12. + int32 end_offset_bytes = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ids of the sources that are cited. + repeated string source_ids = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The anchor of the citation, which can be one of the supported types. + oneof anchor_type { + // Output only. Only set if the citation is for a TextMessage. + TextMessageCitationAnchor text_message_anchor = 1 + [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/conversation.proto b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/conversation.proto index 48dd71f26f4f..e3cb62bbcc7c 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/conversation.proto +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/conversation.proto @@ -28,6 +28,12 @@ option java_outer_classname = "ConversationProto"; option java_package = "com.google.cloud.geminidataanalytics.v1beta"; option php_namespace = "Google\\Cloud\\GeminiDataAnalytics\\V1beta"; option ruby_package = "Google::Cloud::GeminiDataAnalytics::V1beta"; +option (google.api.resource_definition) = { + type: "cloudkms.googleapis.com/CryptoKey" + pattern: "projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}" + plural: "cryptoKeys" + singular: "cryptoKey" +}; // Message for a conversation. message Conversation { @@ -73,6 +79,22 @@ message Conversation { // to tag a conversation (e.g. to filter conversations for specific // surfaces/products). map labels = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Customer managed encryption key (CMEK) to use for encrypting the + // Conversation resources. Encryption will happen at Titan layer, we will pass + // the KMS key to Titan. + // + // Format: + // projects/{project_id}/locations/{location}/keyRings/{key_ring_name}/cryptoKeys/{key_name}. + optional string kms_key = 10 [ + (google.api.field_behavior) = OPTIONAL, + (google.api.resource_reference) = { + type: "cloudkms.googleapis.com/CryptoKey" + } + ]; + + // Optional. Whether memory is paused for this conversation. + optional bool memory_paused = 11 [(google.api.field_behavior) = OPTIONAL]; } // Request for creating a conversation. @@ -130,8 +152,9 @@ message ListConversationsRequest { ]; // Optional. Requested page size. Server may return fewer items than - // requested. The max page size is 100. All larger page sizes will be coerced - // to 100. If unspecified, server will pick 50 as an approperiate default. + // requested. The max page size is `100`. All larger page sizes will be + // coerced to `100`. If unspecified, server will pick `50` as an appropriate + // default. int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; // Optional. A token identifying a page of results the server should return. diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/credentials.proto b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/credentials.proto index 9bc9c7a38fe6..f31b3c261de9 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/credentials.proto +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/credentials.proto @@ -29,7 +29,6 @@ option ruby_package = "Google::Cloud::GeminiDataAnalytics::V1beta"; // Represents different forms of credential specification. message Credentials { // The kind of credentials. - // } oneof kind { // OAuth credentials. OAuthCredentials oauth = 1; diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/data_agent.proto b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/data_agent.proto index d7b69e88aa91..0998a7d83677 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/data_agent.proto +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/data_agent.proto @@ -98,4 +98,15 @@ message DataAgent { // on input. google.protobuf.Timestamp purge_time = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Customer managed encryption key (CMEK) to use for encrypting the + // DataAgent resources. Cloud KMS CryptoKeys must reside in the same location + // as the DataAgent. The expected format is + // `projects/*/locations/*/keyRings/*/cryptoKeys/*`. + optional string kms_key = 14 [ + (google.api.field_behavior) = OPTIONAL, + (google.api.resource_reference) = { + type: "cloudkms.googleapis.com/CryptoKey" + } + ]; } diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/data_chat_service.proto b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/data_chat_service.proto index 6d3c0f982f44..de4598f4456a 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/data_chat_service.proto +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/data_chat_service.proto @@ -45,7 +45,7 @@ service DataChatService { "https://www.googleapis.com/auth/cloud-platform"; // Answers a data question by generating a stream of - // [Message][google.cloud.geminidataanalytics.v1alpha.Message] objects. + // [Message][google.cloud.geminidataanalytics.v1.Message] objects. rpc Chat(ChatRequest) returns (stream Message) { option (google.api.http) = { post: "/v1beta/{parent=projects/*/locations/*}:chat" @@ -167,10 +167,17 @@ message QueryDataContext { // used to enforce row-level security during SQL generation and query // execution. message ParameterizedSecureViewParameters { + // Represents a single parameter for Parameterized Secure Views. + message Parameter { + // Required. The parameter key (e.g., `"user_id"`). + string key = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The parameter value (e.g., `"123"`). + string value = 2 [(google.api.field_behavior) = REQUIRED]; + } + // Optional. Named parameters for Parameterized Secure Views (PSV). - // The map keys are parameter names (e.g., `"user_id"`), and values are the - // corresponding parameter values (e.g., `"123"`). - map parameters = 1 [(google.api.field_behavior) = OPTIONAL]; + repeated Parameter parameters = 1 [(google.api.field_behavior) = OPTIONAL]; } // Response containing the generated query and related information. @@ -261,8 +268,9 @@ message ListMessagesRequest { ]; // Optional. Requested page size. Server may return fewer items than - // requested. The max page size is 100. All larger page sizes will be coerced - // to 100. If unspecified, server will pick 50 as an approperiate default. + // requested. The max page size is `100`. All larger page sizes will be + // coerced to `100`. If unspecified, server will pick `50` as an appropriate + // default. int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL]; // Optional. A token identifying a page of results the server should return. @@ -309,6 +317,16 @@ message ChatRequest { THINKING = 2; } + // Model selection for the agent. + enum Model { + // No model specified. The default model will be used. + MODEL_UNSPECIFIED = 0; + + // Use the most up-to-date non-preview model. This may constrain certain + // request level settings. + LATEST_GA_MODEL = 1; + } + // Context Provider for the chat request. // It can either be - // inline_context, which is a context provided inline in the request. @@ -339,7 +357,16 @@ message ChatRequest { [(google.api.field_behavior) = OPTIONAL]; } - // Optional. The Google Cloud project to be used for quota and billing. + // Optional settings to customize request behavior, specific to the target + // datasource. + oneof datasource_settings { + // Optional. Looker specific settings. + LookerSettings looker_settings = 13 + [(google.api.field_behavior) = OPTIONAL]; + } + + // Optional. Deprecated: Use `parent` field instead. + // The Google Cloud project to be used for quota and billing. string project = 1 [ deprecated = true, (google.api.field_behavior) = OPTIONAL, @@ -355,9 +382,23 @@ message ChatRequest { // Required. Content of current conversation. repeated Message messages = 2 [(google.api.field_behavior) = REQUIRED]; + // Optional. The credentials to use when calling the data source(s) specified + // in the context. + // + // This field can be used to provide credentials for various data sources. + // For example, when connecting to Looker, it currently supports both OAuth + // token and API key-based credentials, as described in + // [Authentication with an + // SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk). + Credentials credentials = 7 [(google.api.field_behavior) = OPTIONAL]; + // Optional. The thinking mode to use for the agent loop. // Defaults to THINKING_MODE_UNSPECIFIED if not specified. ThinkingMode thinking_mode = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The model to use for the agent loop when processing the request. + // This setting only has an effect when context.options.model is not set. + Model model = 11 [(google.api.field_behavior) = OPTIONAL]; } // Context for the chat request using a data agent. @@ -386,13 +427,15 @@ message DataAgentContext { } ]; - // Optional. The credentials to use when calling the Looker data source. + // Optional. Deprecated: Use credentials in ChatRequest. + // The credentials to use when calling the Looker data source. // // Currently supports both OAuth token and API key-based credentials, as // described in // [Authentication with an // SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk). - Credentials credentials = 2 [(google.api.field_behavior) = OPTIONAL]; + Credentials credentials = 2 + [deprecated = true, (google.api.field_behavior) = OPTIONAL]; // Optional. Version of context to be used by DCS (e.g. STAGING, PUBLISHED) ContextVersion context_version = 3 [(google.api.field_behavior) = OPTIONAL]; @@ -452,6 +495,17 @@ message Message { string message_id = 4 [(google.api.field_behavior) = OPTIONAL]; } +// Message to hold Looker specific custom settings. +message LookerSettings { + // Optional. Whether to operate in Looker's Development Mode. + // If true, the API session will be switched to the "dev" workspace, + // allowing interaction with LookML changes in the user's development branch. + // If false or unset, the session remains in the default state (Production + // Mode). + // See https://cloud.google.com/looker/docs/dev-mode-prod-mode. + bool enable_dev_mode = 1 [(google.api.field_behavior) = OPTIONAL]; +} + // A message from the user that is interacting with the system. message UserMessage { // The kind of content in the user message. @@ -462,7 +516,7 @@ message UserMessage { } // A message from the system in response to the user. This message can also be a -// message from the user as historical context for multiturn conversations with +// message from the user as historical context for multi-turn conversations with // the system. message SystemMessage { // The kind of content in the system message. @@ -489,15 +543,19 @@ message SystemMessage { ExampleQueries example_queries = 13 [(google.api.field_behavior) = OPTIONAL]; - // Optional. A message containing clarification questions. + // Optional. Deprecated: Use TextMessage with TextType.FINAL_RESPONSE + // instead. A message containing clarification questions. ClarificationMessage clarification = 14 - [(google.api.field_behavior) = OPTIONAL]; + [deprecated = true, (google.api.field_behavior) = OPTIONAL]; } // Identifies the group that the event belongs to. Similar events are deemed // to be logically relevant to each other and should be shown together in // the UI. optional int32 group_id = 12; + + // Output only. Citation information for the system message. + Citation citation = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; } // A multi-part text message. @@ -519,6 +577,10 @@ message TextMessage { // (`FINAL_RESPONSE`). These messages provide insight into the agent's // actions. PROGRESS = 3; + + // The text is a list of follow-up questions suggested. + // Each item in parts is a follow-up question. + FOLLOWUP_QUESTIONS = 4; } // Optional. The parts of the message. @@ -571,12 +633,15 @@ message DataMessage { // Retrieved data. DataResult result = 3; - // Looker Query generated by the system to retrieve data. // Deprecated: generated looker query is now under DataQuery.looker. + // Looker Query generated by the system to retrieve data. LookerQuery generated_looker_query = 4 [deprecated = true]; // A BigQuery job executed by the system to retrieve data. BigQueryJob big_query_job = 5; + + // A pre-existing query that was matched to retrieve data. + MatchedQuery matched_query = 6; } } @@ -779,56 +844,82 @@ message ErrorMessage { string text = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; } +// Deprecated: Use TextMessage with TextType.FINAL_RESPONSE instead. // Represents a single question to the user to help clarify their query. message ClarificationQuestion { + option deprecated = true; + + // Deprecated: The parent message is deprecated. // The selection mode for the clarification question. enum SelectionMode { + option deprecated = true; + + // Deprecated: The parent message is deprecated. // Unspecified selection mode. - SELECTION_MODE_UNSPECIFIED = 0; + SELECTION_MODE_UNSPECIFIED = 0 [deprecated = true]; + // Deprecated: The parent message is deprecated. // The user can select only one option. - SINGLE_SELECT = 1; + SINGLE_SELECT = 1 [deprecated = true]; + // Deprecated: The parent message is deprecated. // The user can select multiple options. - MULTI_SELECT = 2; + MULTI_SELECT = 2 [deprecated = true]; } + // Deprecated: The parent message is deprecated. // The type of clarification question. // This enum may be extended with new values in the future. enum ClarificationQuestionType { + option deprecated = true; + + // Deprecated: The parent message is deprecated. // Unspecified clarification question type. - CLARIFICATION_QUESTION_TYPE_UNSPECIFIED = 0; + CLARIFICATION_QUESTION_TYPE_UNSPECIFIED = 0 [deprecated = true]; + // Deprecated: The parent message is deprecated. // The clarification question is for filter values. - FILTER_VALUES = 1; + FILTER_VALUES = 1 [deprecated = true]; + // Deprecated: The parent message is deprecated. // The clarification question is for data fields. This is a generic term // encompassing SQL columns, Looker fields (dimensions/measures), or // nested data structure properties. - FIELDS = 2; + FIELDS = 2 [deprecated = true]; } - // Required. The natural language question to ask the user. - string question = 1 [(google.api.field_behavior) = REQUIRED]; + // Required. Deprecated: The parent message is deprecated. + // The natural language question to ask the user. + string question = 1 + [deprecated = true, (google.api.field_behavior) = REQUIRED]; - // Required. The selection mode for this question. - SelectionMode selection_mode = 2 [(google.api.field_behavior) = REQUIRED]; + // Required. Deprecated: The parent message is deprecated. + // The selection mode for this question. + SelectionMode selection_mode = 2 + [deprecated = true, (google.api.field_behavior) = REQUIRED]; - // Required. A list of distinct options for the user to choose from. + // Required. Deprecated: The parent message is deprecated. + // A list of distinct options for the user to choose from. // The number of options is limited to a maximum of 5. - repeated string options = 3 [(google.api.field_behavior) = REQUIRED]; + repeated string options = 3 + [deprecated = true, (google.api.field_behavior) = REQUIRED]; - // Optional. The type of clarification question. + // Optional. Deprecated: The parent message is deprecated. + // The type of clarification question. ClarificationQuestionType clarification_question_type = 4 - [(google.api.field_behavior) = OPTIONAL]; + [deprecated = true, (google.api.field_behavior) = OPTIONAL]; } +// Deprecated: Use TextMessage with TextType.FINAL_RESPONSE instead. // A message of questions to help clarify the user's query. This is returned // when the system cannot confidently answer the user's question. message ClarificationMessage { - // Required. A batch of clarification questions to ask the user. + option deprecated = true; + + // Required. Deprecated: The parent message is deprecated. + // A batch of clarification questions to ask the user. repeated ClarificationQuestion questions = 1 - [(google.api.field_behavior) = REQUIRED]; + [deprecated = true, (google.api.field_behavior) = REQUIRED]; } // A message containing derived and authored example queries. diff --git a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/datasource.proto b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/datasource.proto index 510840644842..a9c8bbf7835b 100644 --- a/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/datasource.proto +++ b/java-geminidataanalytics/proto-google-cloud-geminidataanalytics-v1beta/src/main/proto/google/cloud/geminidataanalytics/v1beta/datasource.proto @@ -68,12 +68,19 @@ message DatasourceReferences { } // Message representing references to BigQuery tables and property graphs. -// At least one of `table_references` or `property_graph_references` must be -// populated. +// At least one of `table_references`, `property_graph_references`, or +// `search_scope` must be populated. message BigQueryTableReferences { // Optional. References to BigQuery tables. repeated BigQueryTableReference table_references = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Preview feature. References to BigQuery property graphs. + // Note: Data sources must exclusively use either tables or property graphs, + // not both. When using property graphs, a maximum of one graph reference is + // supported. + repeated BigQueryPropertyGraphReference property_graph_references = 2 + [(google.api.field_behavior) = OPTIONAL]; } // Message representing a reference to a single BigQuery table. @@ -93,8 +100,9 @@ message BigQueryTableReference { // Message representing references to Looker Studio datasources. message StudioDatasourceReferences { - // The references to the studio datasources. - repeated StudioDatasourceReference studio_references = 2; + // Optional. The references to the studio datasources. + repeated StudioDatasourceReference studio_references = 2 + [(google.api.field_behavior) = OPTIONAL]; } // Message representing a reference to a single Looker Studio datasource. @@ -116,6 +124,40 @@ message AlloyDbReference { [(google.api.field_behavior) = OPTIONAL]; } +// Message representing a table including its schema. +message DatabaseTableReference { + // Required. The name of the table as defined in the database. + // + // Note: The precise rules for table naming, including valid characters, + // length limits, and case sensitivity, are determined by the specific + // database system. + // + // Requirements: + // - Exact Match: The provided name must be identical to the name stored + // in the database. + // - Case Sensitivity: Respect the case sensitivity rules of the specific + // database system and how the table was created. For example, "Orders" + // and "orders" may be distinct table names. + // - Special Characters/Keywords: If the table name includes spaces, special + // characters, or is a database reserved keyword, provide the literal name + // as it is stored. Do not add any database-specific identifier quoting + // characters (e.g., ", `, []). + // + // Examples: + // - Simple name: "orders", "UserActivity" + // - Case sensitive: "MyTable" + // - Name with spaces: "Order Details" + // - Name with other special characters: "user/data", "order-items" + // - Name that is a keyword: "Group", "Order" + // + // Permissions: The caller's credentials must have the necessary database + // permissions to access the table's schema and data. + string table_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The schema of the table. + Schema schema = 2 [(google.api.field_behavior) = OPTIONAL]; +} + // Message representing a reference to a single AlloyDB database. message AlloyDbDatabaseReference { // Required. The project the instance belongs to. @@ -135,6 +177,12 @@ message AlloyDbDatabaseReference { // Optional. The table ids. Denotes all tables if unset. repeated string table_ids = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. References to tables within the database. Each reference + // specifies a table and can optionally include the table's schema to provide + // context for the query. + repeated DatabaseTableReference database_table_references = 7 + [(google.api.field_behavior) = OPTIONAL]; } // Message representing reference to a Spanner database and agent context. @@ -170,9 +218,6 @@ message SpannerDatabaseReference { // Required. The project the instance belongs to. string project_id = 1 [(google.api.field_behavior) = REQUIRED]; - // Required. The region of the instance. - string region = 2 [(google.api.field_behavior) = REQUIRED]; - // Required. The instance id. string instance_id = 3 [(google.api.field_behavior) = REQUIRED]; @@ -181,6 +226,23 @@ message SpannerDatabaseReference { // Optional. The table ids. Denotes all tables if unset. repeated string table_ids = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. References to tables within the database. Each reference + // specifies a table and can optionally include the table's schema to provide + // context for the query. + repeated DatabaseTableReference database_table_references = 7 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Priority for the queries to Spanner. Should be a value supported + // by Cloud Spanner e.g.: LOW, MEDIUM, HIGH. Unsupported values will be + // ignored. See + // https://docs.cloud.google.com/spanner/docs/reference/rest/v1/RequestOptions#Priority + // for complete list. + string priority = 8 [(google.api.field_behavior) = OPTIONAL]; + + // Tag to be attached to all queries to Spanner. Allows to identify and + // monitor queries sent to Spanner by the GDA service. + string request_tag = 9; } // Message representing reference to a CloudSQL database and agent context. @@ -227,6 +289,12 @@ message CloudSqlDatabaseReference { // Optional. The table ids. Denotes all tables if unset. repeated string table_ids = 7 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. References to tables within the database. Each reference + // specifies a table and can optionally include the table's schema to provide + // context for the query. + repeated DatabaseTableReference database_table_references = 8 + [(google.api.field_behavior) = OPTIONAL]; } // Message representing references to Looker explores. @@ -235,13 +303,15 @@ message LookerExploreReferences { repeated LookerExploreReference explore_references = 1 [(google.api.field_behavior) = REQUIRED]; - // Optional. The credentials to use when calling the Looker API. + // Optional. Deprecated: Use credentials in ChatRequest. + // The credentials to use when calling the Looker API. // // Currently supports both OAuth token and API key-based credentials, as // described in // [Authentication with an // SDK](https://cloud.google.com/looker/docs/api-auth#authentication_with_an_sdk). - Credentials credentials = 2 [(google.api.field_behavior) = OPTIONAL]; + Credentials credentials = 2 + [deprecated = true, (google.api.field_behavior) = OPTIONAL]; } // Message representing a reference to a single Looker explore. @@ -271,6 +341,18 @@ message LookerExploreReference { Schema schema = 8 [(google.api.field_behavior) = OPTIONAL]; } +// Message representing a reference to a single BigQuery property graph. +message BigQueryPropertyGraphReference { + // Required. The project that the property graph belongs to. + string project_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The dataset that the property graph belongs to. + string dataset_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The property graph id. + string property_graph_id = 3 [(google.api.field_behavior) = REQUIRED]; +} + // Message representing a private Looker instance info required if the Looker // instance is behind a private network. message PrivateLookerInstanceInfo { @@ -302,6 +384,9 @@ message Datasource { // A reference to a CloudSQL database. CloudSqlReference cloud_sql_reference = 14; + + // A reference to a BigQuery property graph. + BigQueryPropertyGraphReference bigquery_property_graph_reference = 16; } // Optional. The schema of the datasource. @@ -378,8 +463,6 @@ message Field { repeated Field subfields = 9 [(google.api.field_behavior) = OPTIONAL]; // Optional. Field category, not required, currently only useful for Looker. - // We are using a string to avoid depending on an external package and keep - // this package self-contained. string category = 10 [(google.api.field_behavior) = OPTIONAL]; // Optional. Looker only. Value format of the field. diff --git a/java-geminidataanalytics/samples/snippets/generated/com/google/cloud/geminidataanalytics/v1beta/datachatservice/chat/AsyncChat.java b/java-geminidataanalytics/samples/snippets/generated/com/google/cloud/geminidataanalytics/v1beta/datachatservice/chat/AsyncChat.java index ae80345d6a1c..1e4bfa64573a 100644 --- a/java-geminidataanalytics/samples/snippets/generated/com/google/cloud/geminidataanalytics/v1beta/datachatservice/chat/AsyncChat.java +++ b/java-geminidataanalytics/samples/snippets/generated/com/google/cloud/geminidataanalytics/v1beta/datachatservice/chat/AsyncChat.java @@ -19,6 +19,7 @@ // [START geminidataanalytics_v1beta_generated_DataChatService_Chat_async] import com.google.api.gax.rpc.ServerStream; import com.google.cloud.geminidataanalytics.v1beta.ChatRequest; +import com.google.cloud.geminidataanalytics.v1beta.Credentials; import com.google.cloud.geminidataanalytics.v1beta.DataChatServiceClient; import com.google.cloud.geminidataanalytics.v1beta.Message; import com.google.cloud.geminidataanalytics.v1beta.ProjectName; @@ -42,6 +43,7 @@ public static void asyncChat() throws Exception { .setProject(ProjectName.of("[PROJECT]").toString()) .setParent("parent-995424086") .addAllMessages(new ArrayList()) + .setCredentials(Credentials.newBuilder().build()) .build(); ServerStream stream = dataChatServiceClient.chatCallable().call(request); for (Message response : stream) { diff --git a/java-gke-backup/README.md b/java-gke-backup/README.md index bcabe7f5c56a..ce02dde919f3 100644 --- a/java-gke-backup/README.md +++ b/java-gke-backup/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-gke-backup - 0.91.0 + 0.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-gke-backup:0.91.0' +implementation 'com.google.cloud:google-cloud-gke-backup:0.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-gke-backup" % "0.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-gke-backup" % "0.92.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-gke-backup/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-gke-backup.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-gke-backup/0.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-gke-backup/0.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-gke-connect-gateway/README.md b/java-gke-connect-gateway/README.md index c3dae231141a..a92cd9e74abf 100644 --- a/java-gke-connect-gateway/README.md +++ b/java-gke-connect-gateway/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-gke-connect-gateway - 0.93.0 + 0.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-gke-connect-gateway:0.93.0' +implementation 'com.google.cloud:google-cloud-gke-connect-gateway:0.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-gke-connect-gateway" % "0.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-gke-connect-gateway" % "0.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-gke-connect-gateway/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-gke-connect-gateway.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-gke-connect-gateway/0.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-gke-connect-gateway/0.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-gke-multi-cloud/README.md b/java-gke-multi-cloud/README.md index 4d985a5a8c8a..c611d22bd8e7 100644 --- a/java-gke-multi-cloud/README.md +++ b/java-gke-multi-cloud/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-gke-multi-cloud - 0.91.0 + 0.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-gke-multi-cloud:0.91.0' +implementation 'com.google.cloud:google-cloud-gke-multi-cloud:0.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-gke-multi-cloud" % "0.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-gke-multi-cloud" % "0.92.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-gke-multi-cloud/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-gke-multi-cloud.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-gke-multi-cloud/0.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-gke-multi-cloud/0.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-gkehub/README.md b/java-gkehub/README.md index 189a8dcf10af..9dd8ba4df6f1 100644 --- a/java-gkehub/README.md +++ b/java-gkehub/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-gkehub - 1.92.0 + 1.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-gkehub:1.92.0' +implementation 'com.google.cloud:google-cloud-gkehub:1.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-gkehub" % "1.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-gkehub" % "1.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-gkehub/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-gkehub.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-gkehub/1.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-gkehub/1.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-gkerecommender/README.md b/java-gkerecommender/README.md index c857de18d8c7..196bd38be2e5 100644 --- a/java-gkerecommender/README.md +++ b/java-gkerecommender/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-gkerecommender - 0.12.0 + 0.13.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-gkerecommender:0.12.0' +implementation 'com.google.cloud:google-cloud-gkerecommender:0.13.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-gkerecommender" % "0.12.0" +libraryDependencies += "com.google.cloud" % "google-cloud-gkerecommender" % "0.13.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-gkerecommender/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-gkerecommender.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-gkerecommender/0.12.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-gkerecommender/0.13.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-grafeas/README.md b/java-grafeas/README.md index fb0e3a848a60..017089fae0df 100644 --- a/java-grafeas/README.md +++ b/java-grafeas/README.md @@ -19,20 +19,20 @@ If you are using Maven, add this to your pom.xml file: io.grafeas grafeas - 2.93.0 + 2.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'io.grafeas:grafeas:2.93.0' +implementation 'io.grafeas:grafeas:2.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "io.grafeas" % "grafeas" % "2.93.0" +libraryDependencies += "io.grafeas" % "grafeas" % "2.94.0" ``` ## Authentication @@ -152,7 +152,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/grafeas/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/io.grafeas/grafeas.svg -[maven-version-link]: https://central.sonatype.com/artifact/io.grafeas/grafeas/2.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/io.grafeas/grafeas/2.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-gsuite-addons/README.md b/java-gsuite-addons/README.md index 214c160564b6..b526c44c371d 100644 --- a/java-gsuite-addons/README.md +++ b/java-gsuite-addons/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-gsuite-addons - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-gsuite-addons:2.92.0' +implementation 'com.google.cloud:google-cloud-gsuite-addons:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-gsuite-addons" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-gsuite-addons" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-gsuite-addons/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-gsuite-addons.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-gsuite-addons/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-gsuite-addons/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-health/README.md b/java-health/README.md index 7f2dbd12cb7a..6337f28ec41c 100644 --- a/java-health/README.md +++ b/java-health/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-health - 0.1.0 + 0.2.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-health:0.1.0' +implementation 'com.google.cloud:google-cloud-health:0.2.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-health" % "0.1.0" +libraryDependencies += "com.google.cloud" % "google-cloud-health" % "0.2.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-health/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-health.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-health/0.1.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-health/0.2.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-hypercomputecluster/README.md b/java-hypercomputecluster/README.md index 80940dc30ffd..ae2426b5435d 100644 --- a/java-hypercomputecluster/README.md +++ b/java-hypercomputecluster/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-hypercomputecluster - 0.12.0 + 0.13.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-hypercomputecluster:0.12.0' +implementation 'com.google.cloud:google-cloud-hypercomputecluster:0.13.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-hypercomputecluster" % "0.12.0" +libraryDependencies += "com.google.cloud" % "google-cloud-hypercomputecluster" % "0.13.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-hypercomputecluster/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-hypercomputecluster.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-hypercomputecluster/0.12.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-hypercomputecluster/0.13.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-iam-admin/README.md b/java-iam-admin/README.md index eae5c101dd6e..ea0b0cf0f9d0 100644 --- a/java-iam-admin/README.md +++ b/java-iam-admin/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-iam-admin - 3.87.0 + 3.88.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-iam-admin:3.87.0' +implementation 'com.google.cloud:google-iam-admin:3.88.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-iam-admin" % "3.87.0" +libraryDependencies += "com.google.cloud" % "google-iam-admin" % "3.88.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-iam-admin/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-iam-admin.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-iam-admin/3.87.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-iam-admin/3.88.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-iam-policy/README.md b/java-iam-policy/README.md index be436cb3652d..f62a41a1d7c9 100644 --- a/java-iam-policy/README.md +++ b/java-iam-policy/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-iam-policy - 1.89.0 + 1.90.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-iam-policy:1.89.0' +implementation 'com.google.cloud:google-iam-policy:1.90.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-iam-policy" % "1.89.0" +libraryDependencies += "com.google.cloud" % "google-iam-policy" % "1.90.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/proto-google-iam-v1/latest/history [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-iam-policy.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-iam-policy/1.89.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-iam-policy/1.90.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-iamcredentials/README.md b/java-iamcredentials/README.md index 52c3f97bdeae..c5ef748b9abb 100644 --- a/java-iamcredentials/README.md +++ b/java-iamcredentials/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-iamcredentials - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-iamcredentials:2.92.0' +implementation 'com.google.cloud:google-cloud-iamcredentials:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-iamcredentials" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-iamcredentials" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-iamcredentials/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-iamcredentials.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-iamcredentials/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-iamcredentials/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-iap/README.md b/java-iap/README.md index edb44f731778..440be6e74ed5 100644 --- a/java-iap/README.md +++ b/java-iap/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-iap - 0.48.0 + 0.49.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-iap:0.48.0' +implementation 'com.google.cloud:google-cloud-iap:0.49.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-iap" % "0.48.0" +libraryDependencies += "com.google.cloud" % "google-cloud-iap" % "0.49.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-iap/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-iap.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-iap/0.48.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-iap/0.49.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-ids/README.md b/java-ids/README.md index a89333ca4dd2..504228174b26 100644 --- a/java-ids/README.md +++ b/java-ids/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-ids - 1.91.0 + 1.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-ids:1.91.0' +implementation 'com.google.cloud:google-cloud-ids:1.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-ids" % "1.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-ids" % "1.92.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-ids/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-ids.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-ids/1.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-ids/1.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-infra-manager/README.md b/java-infra-manager/README.md index f7cb318e62b0..810c3a45d812 100644 --- a/java-infra-manager/README.md +++ b/java-infra-manager/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-infra-manager - 0.69.0 + 0.70.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-infra-manager:0.69.0' +implementation 'com.google.cloud:google-cloud-infra-manager:0.70.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-infra-manager" % "0.69.0" +libraryDependencies += "com.google.cloud" % "google-cloud-infra-manager" % "0.70.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-infra-manager/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-infra-manager.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-infra-manager/0.69.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-infra-manager/0.70.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-iot/README.md b/java-iot/README.md index 7cca764df8f7..1752de33ef40 100644 --- a/java-iot/README.md +++ b/java-iot/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-iot - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-iot:2.92.0' +implementation 'com.google.cloud:google-cloud-iot:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-iot" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-iot" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-iot/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-iot.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-iot/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-iot/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-java-shopping-merchant-issue-resolution/README.md b/java-java-shopping-merchant-issue-resolution/README.md index 4c82d072595c..0fb55f3e9656 100644 --- a/java-java-shopping-merchant-issue-resolution/README.md +++ b/java-java-shopping-merchant-issue-resolution/README.md @@ -19,20 +19,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-merchant-issue-resolution - 1.20.0 + 1.21.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-merchant-issue-resolution:1.20.0' +implementation 'com.google.shopping:google-shopping-merchant-issue-resolution:1.21.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-merchant-issue-resolution" % "1.20.0" +libraryDependencies += "com.google.shopping" % "google-shopping-merchant-issue-resolution" % "1.21.0" ``` ## Authentication @@ -152,7 +152,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-merchant-issue-resolution/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-merchant-issue-resolution.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-issue-resolution/1.20.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-issue-resolution/1.21.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-java-shopping-merchant-order-tracking/README.md b/java-java-shopping-merchant-order-tracking/README.md index 6242f47b8ec4..cc29f116b7ad 100644 --- a/java-java-shopping-merchant-order-tracking/README.md +++ b/java-java-shopping-merchant-order-tracking/README.md @@ -19,20 +19,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-merchant-order-tracking - 1.20.0 + 1.21.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-merchant-order-tracking:1.20.0' +implementation 'com.google.shopping:google-shopping-merchant-order-tracking:1.21.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-merchant-order-tracking" % "1.20.0" +libraryDependencies += "com.google.shopping" % "google-shopping-merchant-order-tracking" % "1.21.0" ``` ## Authentication @@ -152,7 +152,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-merchant-order-tracking/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-merchant-order-tracking.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-order-tracking/1.20.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-order-tracking/1.21.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-kms/README.md b/java-kms/README.md index 9fd9d0a6bff7..0985db100ffd 100644 --- a/java-kms/README.md +++ b/java-kms/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-kms - 2.95.0 + 2.96.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-kms:2.95.0' +implementation 'com.google.cloud:google-cloud-kms:2.96.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-kms" % "2.95.0" +libraryDependencies += "com.google.cloud" % "google-cloud-kms" % "2.96.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-kms/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-kms.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-kms/2.95.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-kms/2.96.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-kmsinventory/README.md b/java-kmsinventory/README.md index d2cf7dc7e5cb..3cd9d818d503 100644 --- a/java-kmsinventory/README.md +++ b/java-kmsinventory/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-kmsinventory - 0.81.0 + 0.82.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-kmsinventory:0.81.0' +implementation 'com.google.cloud:google-cloud-kmsinventory:0.82.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-kmsinventory" % "0.81.0" +libraryDependencies += "com.google.cloud" % "google-cloud-kmsinventory" % "0.82.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-kmsinventory/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-kmsinventory.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-kmsinventory/0.81.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-kmsinventory/0.82.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-language/README.md b/java-language/README.md index 22181db4cf89..561f6818146a 100644 --- a/java-language/README.md +++ b/java-language/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-language - 2.93.0 + 2.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-language:2.93.0' +implementation 'com.google.cloud:google-cloud-language:2.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-language" % "2.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-language" % "2.94.0" ``` ## Authentication @@ -207,7 +207,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-language/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-language.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-language/2.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-language/2.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-licensemanager/README.md b/java-licensemanager/README.md index ae68684f46a3..60d93f63aebd 100644 --- a/java-licensemanager/README.md +++ b/java-licensemanager/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-licensemanager - 0.25.0 + 0.26.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-licensemanager:0.25.0' +implementation 'com.google.cloud:google-cloud-licensemanager:0.26.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-licensemanager" % "0.25.0" +libraryDependencies += "com.google.cloud" % "google-cloud-licensemanager" % "0.26.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-licensemanager/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-licensemanager.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-licensemanager/0.25.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-licensemanager/0.26.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-life-sciences/README.md b/java-life-sciences/README.md index 76e98a39df23..6023f5e22b15 100644 --- a/java-life-sciences/README.md +++ b/java-life-sciences/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-life-sciences - 0.94.0 + 0.95.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-life-sciences:0.94.0' +implementation 'com.google.cloud:google-cloud-life-sciences:0.95.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-life-sciences" % "0.94.0" +libraryDependencies += "com.google.cloud" % "google-cloud-life-sciences" % "0.95.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-life-sciences/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-life-sciences.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-life-sciences/0.94.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-life-sciences/0.95.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-locationfinder/README.md b/java-locationfinder/README.md index bc94d7e1bb28..322f879260de 100644 --- a/java-locationfinder/README.md +++ b/java-locationfinder/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-locationfinder - 0.17.0 + 0.18.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-locationfinder:0.17.0' +implementation 'com.google.cloud:google-cloud-locationfinder:0.18.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-locationfinder" % "0.17.0" +libraryDependencies += "com.google.cloud" % "google-cloud-locationfinder" % "0.18.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-locationfinder/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-locationfinder.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-locationfinder/0.17.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-locationfinder/0.18.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-logging/README.md b/java-logging/README.md index 07acd0a2959e..af638354e01e 100644 --- a/java-logging/README.md +++ b/java-logging/README.md @@ -58,13 +58,13 @@ implementation 'com.google.cloud:google-cloud-logging' If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-logging:3.33.0' +implementation 'com.google.cloud:google-cloud-logging:3.34.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-logging" % "3.33.0" +libraryDependencies += "com.google.cloud" % "google-cloud-logging" % "3.34.0" ``` ## Authentication @@ -444,7 +444,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-logging/latest/history [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-logging.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-logging/3.33.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-logging/3.34.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-lustre/README.md b/java-lustre/README.md index 08f8be4cc558..34aaa2591f79 100644 --- a/java-lustre/README.md +++ b/java-lustre/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-lustre - 0.32.0 + 0.33.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-lustre:0.32.0' +implementation 'com.google.cloud:google-cloud-lustre:0.33.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-lustre" % "0.32.0" +libraryDependencies += "com.google.cloud" % "google-cloud-lustre" % "0.33.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-lustre/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-lustre.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-lustre/0.32.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-lustre/0.33.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-maintenance/README.md b/java-maintenance/README.md index 4ee419ea956a..1ad51ba593ad 100644 --- a/java-maintenance/README.md +++ b/java-maintenance/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-maintenance - 0.26.0 + 0.27.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-maintenance:0.26.0' +implementation 'com.google.cloud:google-cloud-maintenance:0.27.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-maintenance" % "0.26.0" +libraryDependencies += "com.google.cloud" % "google-cloud-maintenance" % "0.27.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-maintenance/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-maintenance.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-maintenance/0.26.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-maintenance/0.27.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-managed-identities/README.md b/java-managed-identities/README.md index 46ad5125c3b6..9cc5ed74beab 100644 --- a/java-managed-identities/README.md +++ b/java-managed-identities/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-managed-identities - 1.90.0 + 1.91.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-managed-identities:1.90.0' +implementation 'com.google.cloud:google-cloud-managed-identities:1.91.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-managed-identities" % "1.90.0" +libraryDependencies += "com.google.cloud" % "google-cloud-managed-identities" % "1.91.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-managed-identities/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-managed-identities.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-managed-identities/1.90.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-managed-identities/1.91.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-managedkafka/README.md b/java-managedkafka/README.md index f6e408a6dfb7..8646c3db141a 100644 --- a/java-managedkafka/README.md +++ b/java-managedkafka/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-managedkafka - 0.48.0 + 0.49.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-managedkafka:0.48.0' +implementation 'com.google.cloud:google-cloud-managedkafka:0.49.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-managedkafka" % "0.48.0" +libraryDependencies += "com.google.cloud" % "google-cloud-managedkafka" % "0.49.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-managedkafka/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-managedkafka.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-managedkafka/0.48.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-managedkafka/0.49.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-maps-addressvalidation/README.md b/java-maps-addressvalidation/README.md index 02cd6ca9f6e7..3ff6cada018e 100644 --- a/java-maps-addressvalidation/README.md +++ b/java-maps-addressvalidation/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.maps google-maps-addressvalidation - 0.86.0 + 0.87.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.maps:google-maps-addressvalidation:0.86.0' +implementation 'com.google.maps:google-maps-addressvalidation:0.87.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.maps" % "google-maps-addressvalidation" % "0.86.0" +libraryDependencies += "com.google.maps" % "google-maps-addressvalidation" % "0.87.0" ``` ## Authentication @@ -158,7 +158,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-maps-addressvalidation/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.maps/google-maps-addressvalidation.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-addressvalidation/0.86.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-addressvalidation/0.87.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-maps-area-insights/README.md b/java-maps-area-insights/README.md index 49dadd764390..9630e6e1684e 100644 --- a/java-maps-area-insights/README.md +++ b/java-maps-area-insights/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.maps google-maps-area-insights - 0.43.0 + 0.44.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.maps:google-maps-area-insights:0.43.0' +implementation 'com.google.maps:google-maps-area-insights:0.44.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.maps" % "google-maps-area-insights" % "0.43.0" +libraryDependencies += "com.google.maps" % "google-maps-area-insights" % "0.44.0" ``` ## Authentication @@ -158,7 +158,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-maps-area-insights/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.maps/google-maps-area-insights.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-area-insights/0.43.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-area-insights/0.44.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-maps-fleetengine-delivery/README.md b/java-maps-fleetengine-delivery/README.md index ceabd1b1eb8d..96078b555b6b 100644 --- a/java-maps-fleetengine-delivery/README.md +++ b/java-maps-fleetengine-delivery/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.maps google-maps-fleetengine-delivery - 0.39.0 + 0.40.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.maps:google-maps-fleetengine-delivery:0.39.0' +implementation 'com.google.maps:google-maps-fleetengine-delivery:0.40.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.maps" % "google-maps-fleetengine-delivery" % "0.39.0" +libraryDependencies += "com.google.maps" % "google-maps-fleetengine-delivery" % "0.40.0" ``` ## Authentication @@ -158,7 +158,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-maps-fleetengine-delivery/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.maps/google-maps-fleetengine-delivery.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-fleetengine-delivery/0.39.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-fleetengine-delivery/0.40.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-maps-fleetengine/README.md b/java-maps-fleetengine/README.md index bef0462df1a4..3e4675ac7be3 100644 --- a/java-maps-fleetengine/README.md +++ b/java-maps-fleetengine/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.maps google-maps-fleetengine - 0.39.0 + 0.40.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.maps:google-maps-fleetengine:0.39.0' +implementation 'com.google.maps:google-maps-fleetengine:0.40.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.maps" % "google-maps-fleetengine" % "0.39.0" +libraryDependencies += "com.google.maps" % "google-maps-fleetengine" % "0.40.0" ``` ## Authentication @@ -158,7 +158,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-maps-fleetengine/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.maps/google-maps-fleetengine.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-fleetengine/0.39.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-fleetengine/0.40.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-maps-geocode/README.md b/java-maps-geocode/README.md index 31fc8002f6ab..e3eb8be3b68e 100644 --- a/java-maps-geocode/README.md +++ b/java-maps-geocode/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.maps google-maps-geocode - 0.4.0 + 0.5.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.maps:google-maps-geocode:0.4.0' +implementation 'com.google.maps:google-maps-geocode:0.5.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.maps" % "google-maps-geocode" % "0.4.0" +libraryDependencies += "com.google.maps" % "google-maps-geocode" % "0.5.0" ``` ## Authentication @@ -158,7 +158,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-maps-geocode/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.maps/google-maps-geocode.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-geocode/0.4.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-geocode/0.5.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-maps-mapmanagement/README.md b/java-maps-mapmanagement/README.md index 20d37b2ccc08..953f3b708323 100644 --- a/java-maps-mapmanagement/README.md +++ b/java-maps-mapmanagement/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.maps google-maps-mapmanagement - 0.1.0 + 0.2.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.maps:google-maps-mapmanagement:0.1.0' +implementation 'com.google.maps:google-maps-mapmanagement:0.2.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.maps" % "google-maps-mapmanagement" % "0.1.0" +libraryDependencies += "com.google.maps" % "google-maps-mapmanagement" % "0.2.0" ``` ## Authentication @@ -158,7 +158,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-maps-mapmanagement/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.maps/google-maps-mapmanagement.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-mapmanagement/0.1.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-mapmanagement/0.2.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-maps-mapsplatformdatasets/README.md b/java-maps-mapsplatformdatasets/README.md index 00791c2d296a..318c6af0261e 100644 --- a/java-maps-mapsplatformdatasets/README.md +++ b/java-maps-mapsplatformdatasets/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.maps google-maps-mapsplatformdatasets - 0.81.0 + 0.82.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.maps:google-maps-mapsplatformdatasets:0.81.0' +implementation 'com.google.maps:google-maps-mapsplatformdatasets:0.82.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.maps" % "google-maps-mapsplatformdatasets" % "0.81.0" +libraryDependencies += "com.google.maps" % "google-maps-mapsplatformdatasets" % "0.82.0" ``` ## Authentication @@ -159,7 +159,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-maps-mapsplatformdatasets/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.maps/google-maps-mapsplatformdatasets.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-mapsplatformdatasets/0.81.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-mapsplatformdatasets/0.82.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-maps-places/README.md b/java-maps-places/README.md index 2155ac6eac19..ce44d31df743 100644 --- a/java-maps-places/README.md +++ b/java-maps-places/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.maps google-maps-places - 0.63.0 + 0.64.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.maps:google-maps-places:0.63.0' +implementation 'com.google.maps:google-maps-places:0.64.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.maps" % "google-maps-places" % "0.63.0" +libraryDependencies += "com.google.maps" % "google-maps-places" % "0.64.0" ``` ## Authentication @@ -162,7 +162,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-maps-places/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.maps/google-maps-places.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-places/0.63.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-places/0.64.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-maps-routeoptimization/README.md b/java-maps-routeoptimization/README.md index 8b17010381f8..f3ec6559c2e8 100644 --- a/java-maps-routeoptimization/README.md +++ b/java-maps-routeoptimization/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.maps google-maps-routeoptimization - 0.50.0 + 0.51.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.maps:google-maps-routeoptimization:0.50.0' +implementation 'com.google.maps:google-maps-routeoptimization:0.51.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.maps" % "google-maps-routeoptimization" % "0.50.0" +libraryDependencies += "com.google.maps" % "google-maps-routeoptimization" % "0.51.0" ``` ## Authentication @@ -158,7 +158,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-maps-routeoptimization/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.maps/google-maps-routeoptimization.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-routeoptimization/0.50.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-routeoptimization/0.51.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-maps-routing/README.md b/java-maps-routing/README.md index b19ee1197b19..6abfe424b3a9 100644 --- a/java-maps-routing/README.md +++ b/java-maps-routing/README.md @@ -19,20 +19,20 @@ If you are using Maven, add this to your pom.xml file: com.google.maps google-maps-routing - 1.77.0 + 1.78.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.maps:google-maps-routing:1.77.0' +implementation 'com.google.maps:google-maps-routing:1.78.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.maps" % "google-maps-routing" % "1.77.0" +libraryDependencies += "com.google.maps" % "google-maps-routing" % "1.78.0" ``` ## Authentication @@ -152,7 +152,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-maps-routing/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.maps/google-maps-routing.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-routing/1.77.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-routing/1.78.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-maps-solar/README.md b/java-maps-solar/README.md index 0ac12b61351f..9469ce375c08 100644 --- a/java-maps-solar/README.md +++ b/java-maps-solar/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.maps google-maps-solar - 0.51.0 + 0.52.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.maps:google-maps-solar:0.51.0' +implementation 'com.google.maps:google-maps-solar:0.52.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.maps" % "google-maps-solar" % "0.51.0" +libraryDependencies += "com.google.maps" % "google-maps-solar" % "0.52.0" ``` ## Authentication @@ -158,7 +158,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-maps-solar/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.maps/google-maps-solar.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-solar/0.51.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-solar/0.52.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-marketingplatformadminapi/README.md b/java-marketingplatformadminapi/README.md index ad7b2642850a..0c275362b823 100644 --- a/java-marketingplatformadminapi/README.md +++ b/java-marketingplatformadminapi/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.ads-marketingplatform admin - 0.41.0 + 0.42.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.ads-marketingplatform:admin:0.41.0' +implementation 'com.google.ads-marketingplatform:admin:0.42.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.ads-marketingplatform" % "admin" % "0.41.0" +libraryDependencies += "com.google.ads-marketingplatform" % "admin" % "0.42.0" ``` ## Authentication @@ -158,7 +158,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/admin/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.ads-marketingplatform/admin.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.ads-marketingplatform/admin/0.41.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.ads-marketingplatform/admin/0.42.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-mediatranslation/README.md b/java-mediatranslation/README.md index 8a9707dd7c24..dbcb8777d8d8 100644 --- a/java-mediatranslation/README.md +++ b/java-mediatranslation/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-mediatranslation - 0.98.0 + 0.99.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-mediatranslation:0.98.0' +implementation 'com.google.cloud:google-cloud-mediatranslation:0.99.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-mediatranslation" % "0.98.0" +libraryDependencies += "com.google.cloud" % "google-cloud-mediatranslation" % "0.99.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-mediatranslation/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-mediatranslation.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-mediatranslation/0.98.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-mediatranslation/0.99.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-meet/README.md b/java-meet/README.md index 5f42c636450b..c25a08d16d2c 100644 --- a/java-meet/README.md +++ b/java-meet/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-meet - 0.59.0 + 0.60.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-meet:0.59.0' +implementation 'com.google.cloud:google-cloud-meet:0.60.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-meet" % "0.59.0" +libraryDependencies += "com.google.cloud" % "google-cloud-meet" % "0.60.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-meet/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-meet.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-meet/0.59.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-meet/0.60.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-memcache/README.md b/java-memcache/README.md index c13f50b81405..1f4177e5e35f 100644 --- a/java-memcache/README.md +++ b/java-memcache/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-memcache - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-memcache:2.92.0' +implementation 'com.google.cloud:google-cloud-memcache:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-memcache" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-memcache" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-memcache/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-memcache.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-memcache/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-memcache/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-migrationcenter/README.md b/java-migrationcenter/README.md index 3282819c64d9..ab46939e47a5 100644 --- a/java-migrationcenter/README.md +++ b/java-migrationcenter/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-migrationcenter - 0.74.0 + 0.75.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-migrationcenter:0.74.0' +implementation 'com.google.cloud:google-cloud-migrationcenter:0.75.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-migrationcenter" % "0.74.0" +libraryDependencies += "com.google.cloud" % "google-cloud-migrationcenter" % "0.75.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-migrationcenter/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-migrationcenter.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-migrationcenter/0.74.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-migrationcenter/0.75.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-modelarmor/README.md b/java-modelarmor/README.md index c147a8e8f93d..dbb634f02cbf 100644 --- a/java-modelarmor/README.md +++ b/java-modelarmor/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-modelarmor - 0.33.0 + 0.34.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-modelarmor:0.33.0' +implementation 'com.google.cloud:google-cloud-modelarmor:0.34.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-modelarmor" % "0.33.0" +libraryDependencies += "com.google.cloud" % "google-cloud-modelarmor" % "0.34.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-modelarmor/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-modelarmor.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-modelarmor/0.33.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-modelarmor/0.34.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-monitoring-dashboards/README.md b/java-monitoring-dashboards/README.md index c8568a578fe4..af85c32602aa 100644 --- a/java-monitoring-dashboards/README.md +++ b/java-monitoring-dashboards/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-monitoring-dashboard - 2.94.0 + 2.95.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-monitoring-dashboard:2.94.0' +implementation 'com.google.cloud:google-cloud-monitoring-dashboard:2.95.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-monitoring-dashboard" % "2.94.0" +libraryDependencies += "com.google.cloud" % "google-cloud-monitoring-dashboard" % "2.95.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-monitoring-dashboard/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-monitoring-dashboard.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-monitoring-dashboard/2.94.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-monitoring-dashboard/2.95.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-monitoring-metricsscope/README.md b/java-monitoring-metricsscope/README.md index 912e3a0118e3..9641a8a0f4e8 100644 --- a/java-monitoring-metricsscope/README.md +++ b/java-monitoring-metricsscope/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-monitoring-metricsscope - 0.86.0 + 0.87.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-monitoring-metricsscope:0.86.0' +implementation 'com.google.cloud:google-cloud-monitoring-metricsscope:0.87.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-monitoring-metricsscope" % "0.86.0" +libraryDependencies += "com.google.cloud" % "google-cloud-monitoring-metricsscope" % "0.87.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-monitoring-metricsscope/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-monitoring-metricsscope.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-monitoring-metricsscope/0.86.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-monitoring-metricsscope/0.87.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-monitoring/README.md b/java-monitoring/README.md index a929f8db2d81..91902266b72a 100644 --- a/java-monitoring/README.md +++ b/java-monitoring/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-monitoring - 3.93.0 + 3.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-monitoring:3.93.0' +implementation 'com.google.cloud:google-cloud-monitoring:3.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-monitoring" % "3.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-monitoring" % "3.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-monitoring/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-monitoring.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-monitoring/3.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-monitoring/3.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-netapp/README.md b/java-netapp/README.md index 3973ae8a9b34..fcc6dbf87c65 100644 --- a/java-netapp/README.md +++ b/java-netapp/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-netapp - 0.71.0 + 0.72.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-netapp:0.71.0' +implementation 'com.google.cloud:google-cloud-netapp:0.72.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-netapp" % "0.71.0" +libraryDependencies += "com.google.cloud" % "google-cloud-netapp" % "0.72.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-netapp/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-netapp.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-netapp/0.71.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-netapp/0.72.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-network-management/README.md b/java-network-management/README.md index b3cf58ac4222..ed45420cad33 100644 --- a/java-network-management/README.md +++ b/java-network-management/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-network-management - 1.93.0 + 1.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-network-management:1.93.0' +implementation 'com.google.cloud:google-cloud-network-management:1.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-network-management" % "1.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-network-management" % "1.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-network-management/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-network-management.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-network-management/1.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-network-management/1.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-network-security/README.md b/java-network-security/README.md index c2e52c6cb0db..2c061d435b5e 100644 --- a/java-network-security/README.md +++ b/java-network-security/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-network-security - 0.95.0 + 0.96.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-network-security:0.95.0' +implementation 'com.google.cloud:google-cloud-network-security:0.96.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-network-security" % "0.95.0" +libraryDependencies += "com.google.cloud" % "google-cloud-network-security" % "0.96.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-network-security/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-network-security.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-network-security/0.95.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-network-security/0.96.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-networkconnectivity/README.md b/java-networkconnectivity/README.md index 0325be5766fe..847c18f1408d 100644 --- a/java-networkconnectivity/README.md +++ b/java-networkconnectivity/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-networkconnectivity - 1.91.0 + 1.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-networkconnectivity:1.91.0' +implementation 'com.google.cloud:google-cloud-networkconnectivity:1.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-networkconnectivity" % "1.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-networkconnectivity" % "1.92.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-networkconnectivity/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-networkconnectivity.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-networkconnectivity/1.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-networkconnectivity/1.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-networkservices/README.md b/java-networkservices/README.md index d4a612fe661f..71348512d47e 100644 --- a/java-networkservices/README.md +++ b/java-networkservices/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-networkservices - 0.48.0 + 0.49.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-networkservices:0.48.0' +implementation 'com.google.cloud:google-cloud-networkservices:0.49.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-networkservices" % "0.48.0" +libraryDependencies += "com.google.cloud" % "google-cloud-networkservices" % "0.49.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-networkservices/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-networkservices.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-networkservices/0.48.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-networkservices/0.49.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-notebooks/README.md b/java-notebooks/README.md index 06cd3396d735..c00f3d1014e3 100644 --- a/java-notebooks/README.md +++ b/java-notebooks/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-notebooks - 1.90.0 + 1.91.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-notebooks:1.90.0' +implementation 'com.google.cloud:google-cloud-notebooks:1.91.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-notebooks" % "1.90.0" +libraryDependencies += "com.google.cloud" % "google-cloud-notebooks" % "1.91.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-notebooks/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-notebooks.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-notebooks/1.90.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-notebooks/1.91.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-optimization/README.md b/java-optimization/README.md index ff2977eece82..33e4b3b929da 100644 --- a/java-optimization/README.md +++ b/java-optimization/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-optimization - 1.90.0 + 1.91.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-optimization:1.90.0' +implementation 'com.google.cloud:google-cloud-optimization:1.91.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-optimization" % "1.90.0" +libraryDependencies += "com.google.cloud" % "google-cloud-optimization" % "1.91.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-optimization/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-optimization.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-optimization/1.90.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-optimization/1.91.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-oracledatabase/README.md b/java-oracledatabase/README.md index 4eb15cd33f7d..ea6f302e3d7d 100644 --- a/java-oracledatabase/README.md +++ b/java-oracledatabase/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-oracledatabase - 0.41.0 + 0.42.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-oracledatabase:0.41.0' +implementation 'com.google.cloud:google-cloud-oracledatabase:0.42.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-oracledatabase" % "0.41.0" +libraryDependencies += "com.google.cloud" % "google-cloud-oracledatabase" % "0.42.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-oracledatabase/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-oracledatabase.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-oracledatabase/0.41.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-oracledatabase/0.42.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-orchestration-airflow/README.md b/java-orchestration-airflow/README.md index df215bd60bac..7c499cfa641b 100644 --- a/java-orchestration-airflow/README.md +++ b/java-orchestration-airflow/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-orchestration-airflow - 1.92.0 + 1.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-orchestration-airflow:1.92.0' +implementation 'com.google.cloud:google-cloud-orchestration-airflow:1.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-orchestration-airflow" % "1.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-orchestration-airflow" % "1.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-orchestration-airflow/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-orchestration-airflow.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-orchestration-airflow/1.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-orchestration-airflow/1.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-orgpolicy/README.md b/java-orgpolicy/README.md index cf40a938a24c..bb9a1e41d4e7 100644 --- a/java-orgpolicy/README.md +++ b/java-orgpolicy/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-orgpolicy - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-orgpolicy:2.92.0' +implementation 'com.google.cloud:google-cloud-orgpolicy:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-orgpolicy" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-orgpolicy" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/proto-google-cloud-orgpolicy-v1/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-orgpolicy.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-orgpolicy/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-orgpolicy/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-os-config/README.md b/java-os-config/README.md index 13a946c923bb..40de18215735 100644 --- a/java-os-config/README.md +++ b/java-os-config/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-os-config - 2.94.0 + 2.95.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-os-config:2.94.0' +implementation 'com.google.cloud:google-cloud-os-config:2.95.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-os-config" % "2.94.0" +libraryDependencies += "com.google.cloud" % "google-cloud-os-config" % "2.95.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-os-config/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-os-config.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-os-config/2.94.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-os-config/2.95.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-os-login/README.md b/java-os-login/README.md index f4a2803535fc..8334ed3624c2 100644 --- a/java-os-login/README.md +++ b/java-os-login/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-os-login - 2.91.0 + 2.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-os-login:2.91.0' +implementation 'com.google.cloud:google-cloud-os-login:2.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-os-login" % "2.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-os-login" % "2.92.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-os-login/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-os-login.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-os-login/2.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-os-login/2.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-parallelstore/README.md b/java-parallelstore/README.md index 38bd74cb9072..eb1a47da0027 100644 --- a/java-parallelstore/README.md +++ b/java-parallelstore/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-parallelstore - 0.55.0 + 0.56.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-parallelstore:0.55.0' +implementation 'com.google.cloud:google-cloud-parallelstore:0.56.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-parallelstore" % "0.55.0" +libraryDependencies += "com.google.cloud" % "google-cloud-parallelstore" % "0.56.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-parallelstore/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-parallelstore.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-parallelstore/0.55.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-parallelstore/0.56.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-parametermanager/README.md b/java-parametermanager/README.md index b82e34f9da72..6696e0a5bfac 100644 --- a/java-parametermanager/README.md +++ b/java-parametermanager/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-parametermanager - 0.36.0 + 0.37.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-parametermanager:0.36.0' +implementation 'com.google.cloud:google-cloud-parametermanager:0.37.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-parametermanager" % "0.36.0" +libraryDependencies += "com.google.cloud" % "google-cloud-parametermanager" % "0.37.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-parametermanager/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-parametermanager.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-parametermanager/0.36.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-parametermanager/0.37.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-phishingprotection/README.md b/java-phishingprotection/README.md index 6721ffd99657..c11b2edcc2d7 100644 --- a/java-phishingprotection/README.md +++ b/java-phishingprotection/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-phishingprotection - 0.123.0 + 0.124.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-phishingprotection:0.123.0' +implementation 'com.google.cloud:google-cloud-phishingprotection:0.124.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-phishingprotection" % "0.123.0" +libraryDependencies += "com.google.cloud" % "google-cloud-phishingprotection" % "0.124.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-phishingprotection/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-phishingprotection.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-phishingprotection/0.123.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-phishingprotection/0.124.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-policy-troubleshooter/README.md b/java-policy-troubleshooter/README.md index 24d567224c7c..e3a49be51da0 100644 --- a/java-policy-troubleshooter/README.md +++ b/java-policy-troubleshooter/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-policy-troubleshooter - 1.91.0 + 1.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-policy-troubleshooter:1.91.0' +implementation 'com.google.cloud:google-cloud-policy-troubleshooter:1.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-policy-troubleshooter" % "1.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-policy-troubleshooter" % "1.92.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-policy-troubleshooter/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-policy-troubleshooter.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-policy-troubleshooter/1.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-policy-troubleshooter/1.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-policysimulator/README.md b/java-policysimulator/README.md index b1f7d027ea66..4b331cb8ecd6 100644 --- a/java-policysimulator/README.md +++ b/java-policysimulator/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-policysimulator - 0.71.0 + 0.72.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-policysimulator:0.71.0' +implementation 'com.google.cloud:google-cloud-policysimulator:0.72.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-policysimulator" % "0.71.0" +libraryDependencies += "com.google.cloud" % "google-cloud-policysimulator" % "0.72.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-policysimulator/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-policysimulator.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-policysimulator/0.71.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-policysimulator/0.72.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-private-catalog/README.md b/java-private-catalog/README.md index b37c1a0157a6..b42beed9902b 100644 --- a/java-private-catalog/README.md +++ b/java-private-catalog/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-private-catalog - 0.94.0 + 0.95.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-private-catalog:0.94.0' +implementation 'com.google.cloud:google-cloud-private-catalog:0.95.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-private-catalog" % "0.94.0" +libraryDependencies += "com.google.cloud" % "google-cloud-private-catalog" % "0.95.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-private-catalog/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-private-catalog.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-private-catalog/0.94.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-private-catalog/0.95.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-privilegedaccessmanager/README.md b/java-privilegedaccessmanager/README.md index 8b2ff348b6da..daade384a80b 100644 --- a/java-privilegedaccessmanager/README.md +++ b/java-privilegedaccessmanager/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-privilegedaccessmanager - 0.46.0 + 0.47.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-privilegedaccessmanager:0.46.0' +implementation 'com.google.cloud:google-cloud-privilegedaccessmanager:0.47.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-privilegedaccessmanager" % "0.46.0" +libraryDependencies += "com.google.cloud" % "google-cloud-privilegedaccessmanager" % "0.47.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-privilegedaccessmanager/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-privilegedaccessmanager.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-privilegedaccessmanager/0.46.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-privilegedaccessmanager/0.47.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-profiler/README.md b/java-profiler/README.md index 273092c17cdc..5dc0edc1fb74 100644 --- a/java-profiler/README.md +++ b/java-profiler/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-profiler - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-profiler:2.92.0' +implementation 'com.google.cloud:google-cloud-profiler:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-profiler" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-profiler" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-profiler/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-profiler.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-profiler/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-profiler/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-publicca/README.md b/java-publicca/README.md index e7ebd8b6cbf3..6ea668bd55f2 100644 --- a/java-publicca/README.md +++ b/java-publicca/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-publicca - 0.89.0 + 0.90.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-publicca:0.89.0' +implementation 'com.google.cloud:google-cloud-publicca:0.90.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-publicca" % "0.89.0" +libraryDependencies += "com.google.cloud" % "google-cloud-publicca" % "0.90.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-publicca/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-publicca.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-publicca/0.89.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-publicca/0.90.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-pubsub/README.md b/java-pubsub/README.md index 3f1da78e17fa..aaad2993f51c 100644 --- a/java-pubsub/README.md +++ b/java-pubsub/README.md @@ -58,13 +58,13 @@ implementation 'com.google.cloud:google-cloud-pubsub' If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-pubsub:1.150.2' +implementation 'com.google.cloud:google-cloud-pubsub:1.151.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-pubsub" % "1.150.2" +libraryDependencies += "com.google.cloud" % "google-cloud-pubsub" % "1.151.0" ``` ## Authentication @@ -401,7 +401,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-pubsub/latest/history [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-pubsub.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-pubsub/1.150.2 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-pubsub/1.151.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-rapidmigrationassessment/README.md b/java-rapidmigrationassessment/README.md index 2fefc33589e8..b906df7cd8a4 100644 --- a/java-rapidmigrationassessment/README.md +++ b/java-rapidmigrationassessment/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-rapidmigrationassessment - 0.75.0 + 0.76.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-rapidmigrationassessment:0.75.0' +implementation 'com.google.cloud:google-cloud-rapidmigrationassessment:0.76.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-rapidmigrationassessment" % "0.75.0" +libraryDependencies += "com.google.cloud" % "google-cloud-rapidmigrationassessment" % "0.76.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-rapidmigrationassessment/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-rapidmigrationassessment.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-rapidmigrationassessment/0.75.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-rapidmigrationassessment/0.76.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-recaptchaenterprise/README.md b/java-recaptchaenterprise/README.md index c298f835d8cd..a9b866c76c98 100644 --- a/java-recaptchaenterprise/README.md +++ b/java-recaptchaenterprise/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-recaptchaenterprise - 3.89.0 + 3.90.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-recaptchaenterprise:3.89.0' +implementation 'com.google.cloud:google-cloud-recaptchaenterprise:3.90.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-recaptchaenterprise" % "3.89.0" +libraryDependencies += "com.google.cloud" % "google-cloud-recaptchaenterprise" % "3.90.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-recaptchaenterprise/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-recaptchaenterprise.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-recaptchaenterprise/3.89.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-recaptchaenterprise/3.90.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-recommendations-ai/README.md b/java-recommendations-ai/README.md index f486fb9f6783..e86ff526d26d 100644 --- a/java-recommendations-ai/README.md +++ b/java-recommendations-ai/README.md @@ -46,20 +46,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-recommendations-ai - 0.99.0 + 0.100.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-recommendations-ai:0.99.0' +implementation 'com.google.cloud:google-cloud-recommendations-ai:0.100.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-recommendations-ai" % "0.99.0" +libraryDependencies += "com.google.cloud" % "google-cloud-recommendations-ai" % "0.100.0" ``` ## Authentication @@ -182,7 +182,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-recommendations-ai/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-recommendations-ai.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-recommendations-ai/0.99.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-recommendations-ai/0.100.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-recommender/README.md b/java-recommender/README.md index b4ede2a1e04b..998ea36fd4ca 100644 --- a/java-recommender/README.md +++ b/java-recommender/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-recommender - 2.94.0 + 2.95.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-recommender:2.94.0' +implementation 'com.google.cloud:google-cloud-recommender:2.95.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-recommender" % "2.94.0" +libraryDependencies += "com.google.cloud" % "google-cloud-recommender" % "2.95.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-recommender/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-recommender.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-recommender/2.94.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-recommender/2.95.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-redis-cluster/README.md b/java-redis-cluster/README.md index ada6b8362e8e..343d26771b12 100644 --- a/java-redis-cluster/README.md +++ b/java-redis-cluster/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-redis-cluster - 0.64.0 + 0.65.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-redis-cluster:0.64.0' +implementation 'com.google.cloud:google-cloud-redis-cluster:0.65.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-redis-cluster" % "0.64.0" +libraryDependencies += "com.google.cloud" % "google-cloud-redis-cluster" % "0.65.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-redis-cluster/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-redis-cluster.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-redis-cluster/0.64.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-redis-cluster/0.65.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-redis/README.md b/java-redis/README.md index 7872f30991e1..68517414ecf8 100644 --- a/java-redis/README.md +++ b/java-redis/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-redis - 2.95.0 + 2.96.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-redis:2.95.0' +implementation 'com.google.cloud:google-cloud-redis:2.96.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-redis" % "2.95.0" +libraryDependencies += "com.google.cloud" % "google-cloud-redis" % "2.96.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-redis/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-redis.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-redis/2.95.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-redis/2.96.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-resourcemanager/README.md b/java-resourcemanager/README.md index 676b659f87db..a59e7a38e527 100644 --- a/java-resourcemanager/README.md +++ b/java-resourcemanager/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-resourcemanager - 1.94.0 + 1.95.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-resourcemanager:1.94.0' +implementation 'com.google.cloud:google-cloud-resourcemanager:1.95.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-resourcemanager" % "1.94.0" +libraryDependencies += "com.google.cloud" % "google-cloud-resourcemanager" % "1.95.0" ``` ## Authentication @@ -316,7 +316,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-resourcemanager/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-resourcemanager.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-resourcemanager/1.94.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-resourcemanager/1.95.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-retail/README.md b/java-retail/README.md index d2f6deaeee5e..b170a90173df 100644 --- a/java-retail/README.md +++ b/java-retail/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-retail - 2.94.0 + 2.95.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-retail:2.94.0' +implementation 'com.google.cloud:google-cloud-retail:2.95.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-retail" % "2.94.0" +libraryDependencies += "com.google.cloud" % "google-cloud-retail" % "2.95.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-retail/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-retail.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-retail/2.94.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-retail/2.95.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-run/README.md b/java-run/README.md index e3285efc15cb..246be0b57ebe 100644 --- a/java-run/README.md +++ b/java-run/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-run - 0.92.0 + 0.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-run:0.92.0' +implementation 'com.google.cloud:google-cloud-run:0.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-run" % "0.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-run" % "0.93.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-run/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-run.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-run/0.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-run/0.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-saasservicemgmt/README.md b/java-saasservicemgmt/README.md index a0accae06e19..143fa4523706 100644 --- a/java-saasservicemgmt/README.md +++ b/java-saasservicemgmt/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-saasservicemgmt - 0.22.0 + 0.23.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-saasservicemgmt:0.22.0' +implementation 'com.google.cloud:google-cloud-saasservicemgmt:0.23.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-saasservicemgmt" % "0.22.0" +libraryDependencies += "com.google.cloud" % "google-cloud-saasservicemgmt" % "0.23.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-saasservicemgmt/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-saasservicemgmt.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-saasservicemgmt/0.22.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-saasservicemgmt/0.23.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-scheduler/README.md b/java-scheduler/README.md index bbc4f997b84b..60a34d0858ef 100644 --- a/java-scheduler/README.md +++ b/java-scheduler/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-scheduler - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-scheduler:2.92.0' +implementation 'com.google.cloud:google-cloud-scheduler:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-scheduler" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-scheduler" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-scheduler/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-scheduler.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-scheduler/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-scheduler/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-secretmanager/README.md b/java-secretmanager/README.md index 64996a662afc..67f5bd4b11ac 100644 --- a/java-secretmanager/README.md +++ b/java-secretmanager/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-secretmanager - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-secretmanager:2.92.0' +implementation 'com.google.cloud:google-cloud-secretmanager:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-secretmanager" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-secretmanager" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-secretmanager/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-secretmanager.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-secretmanager/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-secretmanager/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-securesourcemanager/README.md b/java-securesourcemanager/README.md index 96fb3710f2f8..abf1e2ba53fb 100644 --- a/java-securesourcemanager/README.md +++ b/java-securesourcemanager/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-securesourcemanager - 0.62.0 + 0.63.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-securesourcemanager:0.62.0' +implementation 'com.google.cloud:google-cloud-securesourcemanager:0.63.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-securesourcemanager" % "0.62.0" +libraryDependencies += "com.google.cloud" % "google-cloud-securesourcemanager" % "0.63.0" ``` ## Authentication @@ -176,7 +176,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-securesourcemanager/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-securesourcemanager.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-securesourcemanager/0.62.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-securesourcemanager/0.63.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-security-private-ca/README.md b/java-security-private-ca/README.md index be58f9e8e8ab..1d4cfde86bba 100644 --- a/java-security-private-ca/README.md +++ b/java-security-private-ca/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-security-private-ca - 2.94.0 + 2.95.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-security-private-ca:2.94.0' +implementation 'com.google.cloud:google-cloud-security-private-ca:2.95.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-security-private-ca" % "2.94.0" +libraryDependencies += "com.google.cloud" % "google-cloud-security-private-ca" % "2.95.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-security-private-ca/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-security-private-ca.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-security-private-ca/2.94.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-security-private-ca/2.95.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-securitycenter-settings/README.md b/java-securitycenter-settings/README.md index bae5bd5efb27..ef0067b01096 100644 --- a/java-securitycenter-settings/README.md +++ b/java-securitycenter-settings/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-securitycenter-settings - 0.95.0 + 0.96.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-securitycenter-settings:0.95.0' +implementation 'com.google.cloud:google-cloud-securitycenter-settings:0.96.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-securitycenter-settings" % "0.95.0" +libraryDependencies += "com.google.cloud" % "google-cloud-securitycenter-settings" % "0.96.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-securitycenter-settings/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-securitycenter-settings.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-securitycenter-settings/0.95.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-securitycenter-settings/0.96.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-securitycenter/README.md b/java-securitycenter/README.md index 65d88856db89..da04d4a5bb36 100644 --- a/java-securitycenter/README.md +++ b/java-securitycenter/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-securitycenter - 2.100.0 + 2.101.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-securitycenter:2.100.0' +implementation 'com.google.cloud:google-cloud-securitycenter:2.101.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-securitycenter" % "2.100.0" +libraryDependencies += "com.google.cloud" % "google-cloud-securitycenter" % "2.101.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-securitycenter/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-securitycenter.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-securitycenter/2.100.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-securitycenter/2.101.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-securitycentermanagement/README.md b/java-securitycentermanagement/README.md index 5b8b2b52c644..13a6b8c82427 100644 --- a/java-securitycentermanagement/README.md +++ b/java-securitycentermanagement/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-securitycentermanagement - 0.60.0 + 0.61.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-securitycentermanagement:0.60.0' +implementation 'com.google.cloud:google-cloud-securitycentermanagement:0.61.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-securitycentermanagement" % "0.60.0" +libraryDependencies += "com.google.cloud" % "google-cloud-securitycentermanagement" % "0.61.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-securitycentermanagement/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-securitycentermanagement.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-securitycentermanagement/0.60.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-securitycentermanagement/0.61.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-securityposture/README.md b/java-securityposture/README.md index 5d988e23a775..eb0da4820dc9 100644 --- a/java-securityposture/README.md +++ b/java-securityposture/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-securityposture - 0.57.0 + 0.58.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-securityposture:0.57.0' +implementation 'com.google.cloud:google-cloud-securityposture:0.58.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-securityposture" % "0.57.0" +libraryDependencies += "com.google.cloud" % "google-cloud-securityposture" % "0.58.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-securityposture/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-securityposture.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-securityposture/0.57.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-securityposture/0.58.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-service-control/README.md b/java-service-control/README.md index 7f5dfac38b81..c0eff9f58952 100644 --- a/java-service-control/README.md +++ b/java-service-control/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-service-control - 1.92.0 + 1.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-service-control:1.92.0' +implementation 'com.google.cloud:google-cloud-service-control:1.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-service-control" % "1.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-service-control" % "1.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-service-control/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-service-control.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-service-control/1.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-service-control/1.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-service-management/README.md b/java-service-management/README.md index 8ea52a549b34..1c0993557c2b 100644 --- a/java-service-management/README.md +++ b/java-service-management/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-service-management - 3.90.0 + 3.91.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-service-management:3.90.0' +implementation 'com.google.cloud:google-cloud-service-management:3.91.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-service-management" % "3.90.0" +libraryDependencies += "com.google.cloud" % "google-cloud-service-management" % "3.91.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-service-management/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-service-management.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-service-management/3.90.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-service-management/3.91.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-service-usage/README.md b/java-service-usage/README.md index 12955c255da2..270750004170 100644 --- a/java-service-usage/README.md +++ b/java-service-usage/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-service-usage - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-service-usage:2.92.0' +implementation 'com.google.cloud:google-cloud-service-usage:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-service-usage" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-service-usage" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-service-usage/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-service-usage.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-service-usage/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-service-usage/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-servicedirectory/README.md b/java-servicedirectory/README.md index ab9ce1ffb392..842cd60bfd3f 100644 --- a/java-servicedirectory/README.md +++ b/java-servicedirectory/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-servicedirectory - 2.93.0 + 2.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-servicedirectory:2.93.0' +implementation 'com.google.cloud:google-cloud-servicedirectory:2.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-servicedirectory" % "2.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-servicedirectory" % "2.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-servicedirectory/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-servicedirectory.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-servicedirectory/2.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-servicedirectory/2.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-servicehealth/README.md b/java-servicehealth/README.md index 2451d09c825f..75a263e862d2 100644 --- a/java-servicehealth/README.md +++ b/java-servicehealth/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-servicehealth - 0.59.0 + 0.60.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-servicehealth:0.59.0' +implementation 'com.google.cloud:google-cloud-servicehealth:0.60.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-servicehealth" % "0.59.0" +libraryDependencies += "com.google.cloud" % "google-cloud-servicehealth" % "0.60.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-servicehealth/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-servicehealth.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-servicehealth/0.59.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-servicehealth/0.60.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-shell/README.md b/java-shell/README.md index 1417d60d173b..4cc699962d18 100644 --- a/java-shell/README.md +++ b/java-shell/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-shell - 2.91.0 + 2.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-shell:2.91.0' +implementation 'com.google.cloud:google-cloud-shell:2.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-shell" % "2.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-shell" % "2.92.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-shell/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-shell.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-shell/2.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-shell/2.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-shopping-css/README.md b/java-shopping-css/README.md index 6aca1650e740..6b3282e02230 100644 --- a/java-shopping-css/README.md +++ b/java-shopping-css/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-css - 0.60.0 + 0.61.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-css:0.60.0' +implementation 'com.google.shopping:google-shopping-css:0.61.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-css" % "0.60.0" +libraryDependencies += "com.google.shopping" % "google-shopping-css" % "0.61.0" ``` ## Authentication @@ -158,7 +158,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-css/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-css.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-css/0.60.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-css/0.61.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-shopping-merchant-accounts/README.md b/java-shopping-merchant-accounts/README.md index a4784a975a68..8b0313b23c66 100644 --- a/java-shopping-merchant-accounts/README.md +++ b/java-shopping-merchant-accounts/README.md @@ -19,20 +19,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-merchant-accounts - 1.20.0 + 1.21.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-merchant-accounts:1.20.0' +implementation 'com.google.shopping:google-shopping-merchant-accounts:1.21.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-merchant-accounts" % "1.20.0" +libraryDependencies += "com.google.shopping" % "google-shopping-merchant-accounts" % "1.21.0" ``` ## Authentication @@ -152,7 +152,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-merchant-accounts/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-merchant-accounts.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-accounts/1.20.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-accounts/1.21.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-shopping-merchant-conversions/README.md b/java-shopping-merchant-conversions/README.md index 55ed55ad9162..bebe6b6ec000 100644 --- a/java-shopping-merchant-conversions/README.md +++ b/java-shopping-merchant-conversions/README.md @@ -19,20 +19,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-merchant-conversions - 1.20.0 + 1.21.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-merchant-conversions:1.20.0' +implementation 'com.google.shopping:google-shopping-merchant-conversions:1.21.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-merchant-conversions" % "1.20.0" +libraryDependencies += "com.google.shopping" % "google-shopping-merchant-conversions" % "1.21.0" ``` ## Authentication @@ -152,7 +152,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-merchant-conversions/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-merchant-conversions.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-conversions/1.20.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-conversions/1.21.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-shopping-merchant-datasources/README.md b/java-shopping-merchant-datasources/README.md index 68e8bf401db8..fd80c9b179b1 100644 --- a/java-shopping-merchant-datasources/README.md +++ b/java-shopping-merchant-datasources/README.md @@ -19,20 +19,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-merchant-datasources - 1.20.0 + 1.21.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-merchant-datasources:1.20.0' +implementation 'com.google.shopping:google-shopping-merchant-datasources:1.21.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-merchant-datasources" % "1.20.0" +libraryDependencies += "com.google.shopping" % "google-shopping-merchant-datasources" % "1.21.0" ``` ## Authentication @@ -152,7 +152,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-merchant-datasources/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-merchant-datasources.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-datasources/1.20.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-datasources/1.21.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-shopping-merchant-inventories/README.md b/java-shopping-merchant-inventories/README.md index d2422bf9c353..bd805c9c9846 100644 --- a/java-shopping-merchant-inventories/README.md +++ b/java-shopping-merchant-inventories/README.md @@ -19,20 +19,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-merchant-inventories - 1.20.0 + 1.21.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-merchant-inventories:1.20.0' +implementation 'com.google.shopping:google-shopping-merchant-inventories:1.21.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-merchant-inventories" % "1.20.0" +libraryDependencies += "com.google.shopping" % "google-shopping-merchant-inventories" % "1.21.0" ``` ## Authentication @@ -152,7 +152,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-merchant-inventories/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-merchant-inventories.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-inventories/1.20.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-inventories/1.21.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-shopping-merchant-lfp/README.md b/java-shopping-merchant-lfp/README.md index 711bf5bfa82c..2e55345e2330 100644 --- a/java-shopping-merchant-lfp/README.md +++ b/java-shopping-merchant-lfp/README.md @@ -19,20 +19,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-merchant-lfp - 1.20.0 + 1.21.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-merchant-lfp:1.20.0' +implementation 'com.google.shopping:google-shopping-merchant-lfp:1.21.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-merchant-lfp" % "1.20.0" +libraryDependencies += "com.google.shopping" % "google-shopping-merchant-lfp" % "1.21.0" ``` ## Authentication @@ -152,7 +152,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-merchant-lfp/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-merchant-lfp.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-lfp/1.20.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-lfp/1.21.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-shopping-merchant-notifications/README.md b/java-shopping-merchant-notifications/README.md index 939d2ee56b3c..21c32abe7d58 100644 --- a/java-shopping-merchant-notifications/README.md +++ b/java-shopping-merchant-notifications/README.md @@ -19,20 +19,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-merchant-notifications - 1.20.0 + 1.21.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-merchant-notifications:1.20.0' +implementation 'com.google.shopping:google-shopping-merchant-notifications:1.21.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-merchant-notifications" % "1.20.0" +libraryDependencies += "com.google.shopping" % "google-shopping-merchant-notifications" % "1.21.0" ``` ## Authentication @@ -152,7 +152,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-merchant-notifications/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-merchant-notifications.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-notifications/1.20.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-notifications/1.21.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-shopping-merchant-product-studio/README.md b/java-shopping-merchant-product-studio/README.md index ed8a2d160c74..2d56f1b05ed6 100644 --- a/java-shopping-merchant-product-studio/README.md +++ b/java-shopping-merchant-product-studio/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-merchant-productstudio - 0.32.0 + 0.33.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-merchant-productstudio:0.32.0' +implementation 'com.google.shopping:google-shopping-merchant-productstudio:0.33.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-merchant-productstudio" % "0.32.0" +libraryDependencies += "com.google.shopping" % "google-shopping-merchant-productstudio" % "0.33.0" ``` ## Authentication @@ -158,7 +158,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-merchant-productstudio/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-merchant-productstudio.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-productstudio/0.32.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-productstudio/0.33.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-shopping-merchant-products/README.md b/java-shopping-merchant-products/README.md index 44ef474e5b71..123127e4806c 100644 --- a/java-shopping-merchant-products/README.md +++ b/java-shopping-merchant-products/README.md @@ -19,20 +19,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-merchant-products - 1.20.0 + 1.21.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-merchant-products:1.20.0' +implementation 'com.google.shopping:google-shopping-merchant-products:1.21.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-merchant-products" % "1.20.0" +libraryDependencies += "com.google.shopping" % "google-shopping-merchant-products" % "1.21.0" ``` ## Authentication @@ -152,7 +152,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-merchant-products/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-merchant-products.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-products/1.20.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-products/1.21.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-shopping-merchant-promotions/README.md b/java-shopping-merchant-promotions/README.md index ba5618f0f9f5..0acfe7f5bb73 100644 --- a/java-shopping-merchant-promotions/README.md +++ b/java-shopping-merchant-promotions/README.md @@ -19,20 +19,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-merchant-promotions - 1.20.0 + 1.21.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-merchant-promotions:1.20.0' +implementation 'com.google.shopping:google-shopping-merchant-promotions:1.21.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-merchant-promotions" % "1.20.0" +libraryDependencies += "com.google.shopping" % "google-shopping-merchant-promotions" % "1.21.0" ``` ## Authentication @@ -152,7 +152,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-merchant-promotions/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-merchant-promotions.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-promotions/1.20.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-promotions/1.21.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-shopping-merchant-quota/README.md b/java-shopping-merchant-quota/README.md index c4e076e251d1..ea13f112a1b7 100644 --- a/java-shopping-merchant-quota/README.md +++ b/java-shopping-merchant-quota/README.md @@ -19,20 +19,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-merchant-quota - 1.20.0 + 1.21.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-merchant-quota:1.20.0' +implementation 'com.google.shopping:google-shopping-merchant-quota:1.21.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-merchant-quota" % "1.20.0" +libraryDependencies += "com.google.shopping" % "google-shopping-merchant-quota" % "1.21.0" ``` ## Authentication @@ -152,7 +152,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-merchant-quota/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-merchant-quota.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-quota/1.20.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-quota/1.21.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-shopping-merchant-reports/README.md b/java-shopping-merchant-reports/README.md index 37459193117b..0cc82c7b96fe 100644 --- a/java-shopping-merchant-reports/README.md +++ b/java-shopping-merchant-reports/README.md @@ -19,20 +19,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-merchant-reports - 1.20.0 + 1.21.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-merchant-reports:1.20.0' +implementation 'com.google.shopping:google-shopping-merchant-reports:1.21.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-merchant-reports" % "1.20.0" +libraryDependencies += "com.google.shopping" % "google-shopping-merchant-reports" % "1.21.0" ``` ## Authentication @@ -152,7 +152,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-merchant-reports/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-merchant-reports.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-reports/1.20.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-reports/1.21.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-shopping-merchant-reviews/README.md b/java-shopping-merchant-reviews/README.md index c77939cdbcc3..bbf97b00a1ec 100644 --- a/java-shopping-merchant-reviews/README.md +++ b/java-shopping-merchant-reviews/README.md @@ -22,20 +22,20 @@ If you are using Maven, add this to your pom.xml file: com.google.shopping google-shopping-merchant-reviews - 0.38.0 + 0.39.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.shopping:google-shopping-merchant-reviews:0.38.0' +implementation 'com.google.shopping:google-shopping-merchant-reviews:0.39.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.shopping" % "google-shopping-merchant-reviews" % "0.38.0" +libraryDependencies += "com.google.shopping" % "google-shopping-merchant-reviews" % "0.39.0" ``` ## Authentication @@ -158,7 +158,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-shopping-merchant-reviews/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.shopping/google-shopping-merchant-reviews.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-reviews/0.38.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.shopping/google-shopping-merchant-reviews/0.39.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-spanner/README.md b/java-spanner/README.md index 7a24b18a6898..b9768f0893f3 100644 --- a/java-spanner/README.md +++ b/java-spanner/README.md @@ -56,13 +56,13 @@ implementation 'com.google.cloud:google-cloud-spanner' If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-spanner:6.117.0' +implementation 'com.google.cloud:google-cloud-spanner:6.118.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-spanner" % "6.117.0" +libraryDependencies += "com.google.cloud" % "google-cloud-spanner" % "6.118.0" ``` ## Authentication @@ -550,7 +550,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-spanner/latest/history [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-spanner.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-spanner/6.117.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-spanner/6.118.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-spanneradapter/README.md b/java-spanneradapter/README.md index 38e57b31ad0a..8319d3f50fe9 100644 --- a/java-spanneradapter/README.md +++ b/java-spanneradapter/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-spanneradapter - 0.28.0 + 0.29.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-spanneradapter:0.28.0' +implementation 'com.google.cloud:google-cloud-spanneradapter:0.29.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-spanneradapter" % "0.28.0" +libraryDependencies += "com.google.cloud" % "google-cloud-spanneradapter" % "0.29.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-spanneradapter/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-spanneradapter.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-spanneradapter/0.28.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-spanneradapter/0.29.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-speech/README.md b/java-speech/README.md index 7d55736e9a49..9fa2d2c9a2e9 100644 --- a/java-speech/README.md +++ b/java-speech/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-speech - 4.87.0 + 4.88.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-speech:4.87.0' +implementation 'com.google.cloud:google-cloud-speech:4.88.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-speech" % "4.87.0" +libraryDependencies += "com.google.cloud" % "google-cloud-speech" % "4.88.0" ``` ## Authentication @@ -211,7 +211,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-speech/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-speech.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-speech/4.87.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-speech/4.88.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-storage-transfer/README.md b/java-storage-transfer/README.md index bfed67234f10..44f0f4103c37 100644 --- a/java-storage-transfer/README.md +++ b/java-storage-transfer/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-storage-transfer - 1.92.0 + 1.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-storage-transfer:1.92.0' +implementation 'com.google.cloud:google-cloud-storage-transfer:1.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-storage-transfer" % "1.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-storage-transfer" % "1.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-storage-transfer/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-storage-transfer.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-storage-transfer/1.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-storage-transfer/1.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-storage/README.md b/java-storage/README.md index 78cba957c1ca..f263d7e72cc4 100644 --- a/java-storage/README.md +++ b/java-storage/README.md @@ -66,13 +66,13 @@ implementation 'com.google.cloud:google-cloud-storage' If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-storage:2.68.0' +implementation 'com.google.cloud:google-cloud-storage:2.69.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-storage" % "2.68.0" +libraryDependencies += "com.google.cloud" % "google-cloud-storage" % "2.69.0" ``` ## Authentication @@ -474,7 +474,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-storage/latest/history [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-storage.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-storage/2.68.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-storage/2.69.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-storagebatchoperations/README.md b/java-storagebatchoperations/README.md index 8981651c1f42..cf4749a29f8a 100644 --- a/java-storagebatchoperations/README.md +++ b/java-storagebatchoperations/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-storagebatchoperations - 0.32.0 + 0.33.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-storagebatchoperations:0.32.0' +implementation 'com.google.cloud:google-cloud-storagebatchoperations:0.33.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-storagebatchoperations" % "0.32.0" +libraryDependencies += "com.google.cloud" % "google-cloud-storagebatchoperations" % "0.33.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-storagebatchoperations/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-storagebatchoperations.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-storagebatchoperations/0.32.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-storagebatchoperations/0.33.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-storageinsights/README.md b/java-storageinsights/README.md index 9bde9a1bd57a..00d05617581d 100644 --- a/java-storageinsights/README.md +++ b/java-storageinsights/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-storageinsights - 0.77.0 + 0.78.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-storageinsights:0.77.0' +implementation 'com.google.cloud:google-cloud-storageinsights:0.78.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-storageinsights" % "0.77.0" +libraryDependencies += "com.google.cloud" % "google-cloud-storageinsights" % "0.78.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-storageinsights/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-storageinsights.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-storageinsights/0.77.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-storageinsights/0.78.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-talent/README.md b/java-talent/README.md index dc90bc4cc8f2..e65334e366b0 100644 --- a/java-talent/README.md +++ b/java-talent/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-talent - 2.93.0 + 2.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-talent:2.93.0' +implementation 'com.google.cloud:google-cloud-talent:2.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-talent" % "2.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-talent" % "2.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-talent/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-talent.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-talent/2.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-talent/2.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-tasks/README.md b/java-tasks/README.md index 699d39022bd6..3ee5cf5ab10f 100644 --- a/java-tasks/README.md +++ b/java-tasks/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-tasks - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-tasks:2.92.0' +implementation 'com.google.cloud:google-cloud-tasks:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-tasks" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-tasks" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-tasks.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-tasks/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-tasks/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-telcoautomation/README.md b/java-telcoautomation/README.md index 16be1382f8f1..90034772e987 100644 --- a/java-telcoautomation/README.md +++ b/java-telcoautomation/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-telcoautomation - 0.62.0 + 0.63.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-telcoautomation:0.62.0' +implementation 'com.google.cloud:google-cloud-telcoautomation:0.63.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-telcoautomation" % "0.62.0" +libraryDependencies += "com.google.cloud" % "google-cloud-telcoautomation" % "0.63.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-telcoautomation/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-telcoautomation.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-telcoautomation/0.62.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-telcoautomation/0.63.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-texttospeech/README.md b/java-texttospeech/README.md index ea6448d24861..9b3d6af09571 100644 --- a/java-texttospeech/README.md +++ b/java-texttospeech/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-texttospeech - 2.93.0 + 2.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-texttospeech:2.93.0' +implementation 'com.google.cloud:google-cloud-texttospeech:2.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-texttospeech" % "2.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-texttospeech" % "2.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-texttospeech/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-texttospeech.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-texttospeech/2.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-texttospeech/2.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-tpu/README.md b/java-tpu/README.md index 99d4dd6e9972..a52981162215 100644 --- a/java-tpu/README.md +++ b/java-tpu/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-tpu - 2.93.0 + 2.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-tpu:2.93.0' +implementation 'com.google.cloud:google-cloud-tpu:2.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-tpu" % "2.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-tpu" % "2.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-tpu/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-tpu.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-tpu/2.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-tpu/2.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-trace/README.md b/java-trace/README.md index 02e1d674bc50..168465f88090 100644 --- a/java-trace/README.md +++ b/java-trace/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-trace - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-trace:2.92.0' +implementation 'com.google.cloud:google-cloud-trace:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-trace" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-trace" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-trace/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-trace.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-trace/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-trace/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-translate/README.md b/java-translate/README.md index 86bac3b7ed5c..be8687966bb4 100644 --- a/java-translate/README.md +++ b/java-translate/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-translate - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-translate:2.92.0' +implementation 'com.google.cloud:google-cloud-translate:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-translate" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-translate" % "2.93.0" ``` ## Authentication @@ -252,7 +252,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-translate/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-translate.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-translate/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-translate/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-valkey/README.md b/java-valkey/README.md index fad203773734..19cf0944052d 100644 --- a/java-valkey/README.md +++ b/java-valkey/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-valkey - 0.38.0 + 0.39.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-valkey:0.38.0' +implementation 'com.google.cloud:google-cloud-valkey:0.39.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-valkey" % "0.38.0" +libraryDependencies += "com.google.cloud" % "google-cloud-valkey" % "0.39.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-memorystore/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-valkey.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-valkey/0.38.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-valkey/0.39.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-vectorsearch/README.md b/java-vectorsearch/README.md index 35f048562c5f..2577c933cd51 100644 --- a/java-vectorsearch/README.md +++ b/java-vectorsearch/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-vectorsearch - 0.14.0 + 0.15.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-vectorsearch:0.14.0' +implementation 'com.google.cloud:google-cloud-vectorsearch:0.15.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-vectorsearch" % "0.14.0" +libraryDependencies += "com.google.cloud" % "google-cloud-vectorsearch" % "0.15.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-vectorsearch/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-vectorsearch.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-vectorsearch/0.14.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-vectorsearch/0.15.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-video-intelligence/README.md b/java-video-intelligence/README.md index a7afd5c8c037..a6a188f0ea6d 100644 --- a/java-video-intelligence/README.md +++ b/java-video-intelligence/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-video-intelligence - 2.91.0 + 2.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-video-intelligence:2.91.0' +implementation 'com.google.cloud:google-cloud-video-intelligence:2.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-video-intelligence" % "2.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-video-intelligence" % "2.92.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-video-intelligence/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-video-intelligence.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-video-intelligence/2.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-video-intelligence/2.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-video-live-stream/README.md b/java-video-live-stream/README.md index 7d86bda481b4..1dab0b73eeb3 100644 --- a/java-video-live-stream/README.md +++ b/java-video-live-stream/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-live-stream - 0.94.0 + 0.95.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-live-stream:0.94.0' +implementation 'com.google.cloud:google-cloud-live-stream:0.95.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-live-stream" % "0.94.0" +libraryDependencies += "com.google.cloud" % "google-cloud-live-stream" % "0.95.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-live-stream/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-live-stream.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-live-stream/0.94.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-live-stream/0.95.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-video-stitcher/README.md b/java-video-stitcher/README.md index d8c6245f6e35..1af4841aaf21 100644 --- a/java-video-stitcher/README.md +++ b/java-video-stitcher/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-video-stitcher - 0.92.0 + 0.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-video-stitcher:0.92.0' +implementation 'com.google.cloud:google-cloud-video-stitcher:0.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-video-stitcher" % "0.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-video-stitcher" % "0.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-video-stitcher/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-video-stitcher.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-video-stitcher/0.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-video-stitcher/0.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-video-transcoder/README.md b/java-video-transcoder/README.md index aa09d42dd13f..01db59573950 100644 --- a/java-video-transcoder/README.md +++ b/java-video-transcoder/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-video-transcoder - 1.91.0 + 1.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-video-transcoder:1.91.0' +implementation 'com.google.cloud:google-cloud-video-transcoder:1.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-video-transcoder" % "1.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-video-transcoder" % "1.92.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-video-transcoder/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-video-transcoder.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-video-transcoder/1.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-video-transcoder/1.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-vision/README.md b/java-vision/README.md index dd011f89e289..863d5851ca9e 100644 --- a/java-vision/README.md +++ b/java-vision/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-vision - 3.90.0 + 3.91.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-vision:3.90.0' +implementation 'com.google.cloud:google-cloud-vision:3.91.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-vision" % "3.90.0" +libraryDependencies += "com.google.cloud" % "google-cloud-vision" % "3.91.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-vision/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-vision.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-vision/3.90.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-vision/3.91.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-visionai/README.md b/java-visionai/README.md index 3e3b17d65699..3fa33cad1606 100644 --- a/java-visionai/README.md +++ b/java-visionai/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-visionai - 0.49.0 + 0.50.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-visionai:0.49.0' +implementation 'com.google.cloud:google-cloud-visionai:0.50.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-visionai" % "0.49.0" +libraryDependencies += "com.google.cloud" % "google-cloud-visionai" % "0.50.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-visionai/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-visionai.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-visionai/0.49.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-visionai/0.50.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-vmmigration/README.md b/java-vmmigration/README.md index 2ba030cf7792..bd69176d0d53 100644 --- a/java-vmmigration/README.md +++ b/java-vmmigration/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-vmmigration - 1.92.0 + 1.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-vmmigration:1.92.0' +implementation 'com.google.cloud:google-cloud-vmmigration:1.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-vmmigration" % "1.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-vmmigration" % "1.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-vmmigration/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-vmmigration.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-vmmigration/1.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-vmmigration/1.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-vmwareengine/README.md b/java-vmwareengine/README.md index 24e4bb6b81c2..2feb89f7f9b1 100644 --- a/java-vmwareengine/README.md +++ b/java-vmwareengine/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-vmwareengine - 0.86.0 + 0.87.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-vmwareengine:0.86.0' +implementation 'com.google.cloud:google-cloud-vmwareengine:0.87.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-vmwareengine" % "0.86.0" +libraryDependencies += "com.google.cloud" % "google-cloud-vmwareengine" % "0.87.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-vmwareengine/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-vmwareengine.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-vmwareengine/0.86.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-vmwareengine/0.87.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-vpcaccess/README.md b/java-vpcaccess/README.md index 2b79919921e4..605900bfde1b 100644 --- a/java-vpcaccess/README.md +++ b/java-vpcaccess/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-vpcaccess - 2.93.0 + 2.94.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-vpcaccess:2.93.0' +implementation 'com.google.cloud:google-cloud-vpcaccess:2.94.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-vpcaccess" % "2.93.0" +libraryDependencies += "com.google.cloud" % "google-cloud-vpcaccess" % "2.94.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-vpcaccess/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-vpcaccess.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-vpcaccess/2.93.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-vpcaccess/2.94.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-webrisk/README.md b/java-webrisk/README.md index bdbd8cb8988e..618268a45a22 100644 --- a/java-webrisk/README.md +++ b/java-webrisk/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-webrisk - 2.91.0 + 2.92.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-webrisk:2.91.0' +implementation 'com.google.cloud:google-cloud-webrisk:2.92.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-webrisk" % "2.91.0" +libraryDependencies += "com.google.cloud" % "google-cloud-webrisk" % "2.92.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-webrisk/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-webrisk.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-webrisk/2.91.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-webrisk/2.92.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-websecurityscanner/README.md b/java-websecurityscanner/README.md index 215737cb191e..26bb2bd07cc8 100644 --- a/java-websecurityscanner/README.md +++ b/java-websecurityscanner/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-websecurityscanner - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-websecurityscanner:2.92.0' +implementation 'com.google.cloud:google-cloud-websecurityscanner:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-websecurityscanner" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-websecurityscanner" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-websecurityscanner/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-websecurityscanner.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-websecurityscanner/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-websecurityscanner/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-workflow-executions/README.md b/java-workflow-executions/README.md index fb64e9829832..156254af78a8 100644 --- a/java-workflow-executions/README.md +++ b/java-workflow-executions/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-workflow-executions - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-workflow-executions:2.92.0' +implementation 'com.google.cloud:google-cloud-workflow-executions:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-workflow-executions" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-workflow-executions" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-workflow-executions/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-workflow-executions.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-workflow-executions/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-workflow-executions/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-workflows/README.md b/java-workflows/README.md index 69f8a9455dba..0bf4bbcd5614 100644 --- a/java-workflows/README.md +++ b/java-workflows/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-workflows - 2.92.0 + 2.93.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-workflows:2.92.0' +implementation 'com.google.cloud:google-cloud-workflows:2.93.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-workflows" % "2.92.0" +libraryDependencies += "com.google.cloud" % "google-cloud-workflows" % "2.93.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-workflows/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-workflows.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-workflows/2.92.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-workflows/2.93.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-workloadmanager/README.md b/java-workloadmanager/README.md index 0a9dd16e28c9..dda340265628 100644 --- a/java-workloadmanager/README.md +++ b/java-workloadmanager/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-workloadmanager - 0.8.0 + 0.9.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-workloadmanager:0.8.0' +implementation 'com.google.cloud:google-cloud-workloadmanager:0.9.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-workloadmanager" % "0.8.0" +libraryDependencies += "com.google.cloud" % "google-cloud-workloadmanager" % "0.9.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-workloadmanager/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-workloadmanager.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-workloadmanager/0.8.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-workloadmanager/0.9.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-workspaceevents/README.md b/java-workspaceevents/README.md index 32bb147866c7..a56adbf306c0 100644 --- a/java-workspaceevents/README.md +++ b/java-workspaceevents/README.md @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-workspaceevents - 0.56.0 + 0.57.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-workspaceevents:0.56.0' +implementation 'com.google.cloud:google-cloud-workspaceevents:0.57.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-workspaceevents" % "0.56.0" +libraryDependencies += "com.google.cloud" % "google-cloud-workspaceevents" % "0.57.0" ``` ## Authentication @@ -181,7 +181,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-workspaceevents/latest/overview [stability-image]: https://img.shields.io/badge/stability-preview-yellow [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-workspaceevents.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-workspaceevents/0.56.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-workspaceevents/0.57.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-workstations/README.md b/java-workstations/README.md index 0530d5ab34a9..30751e874968 100644 --- a/java-workstations/README.md +++ b/java-workstations/README.md @@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-workstations - 0.80.0 + 0.81.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-workstations:0.80.0' +implementation 'com.google.cloud:google-cloud-workstations:0.81.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-workstations" % "0.80.0" +libraryDependencies += "com.google.cloud" % "google-cloud-workstations" % "0.81.0" ``` ## Authentication @@ -175,7 +175,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-workstations/latest/overview [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-workstations.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-workstations/0.80.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-workstations/0.81.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1/WorkstationsClient.java b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1/WorkstationsClient.java index c946b931d24c..126030197c63 100644 --- a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1/WorkstationsClient.java +++ b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1/WorkstationsClient.java @@ -449,7 +449,7 @@ * * *

        GenerateAccessToken - *

        Returns a short-lived credential that can be used to send authenticated and authorized traffic to a workstation. + *

        Returns a short-lived credential that can be used to send authenticated and authorized traffic to a workstation. Once generated this token cannot be revoked and is good for the lifetime of the token. * *

        Request object method variants only take one parameter, a request object, which must be constructed before the call.

        *
          @@ -837,6 +837,7 @@ public final ListWorkstationClustersPagedResponse listWorkstationClusters(String * .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * for (WorkstationCluster element : * workstationsClient.listWorkstationClusters(request).iterateAll()) { @@ -871,6 +872,7 @@ public final ListWorkstationClustersPagedResponse listWorkstationClusters( * .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * ApiFuture future = * workstationsClient.listWorkstationClustersPagedCallable().futureCall(request); @@ -904,6 +906,7 @@ public final ListWorkstationClustersPagedResponse listWorkstationClusters( * .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * while (true) { * ListWorkstationClustersResponse response = @@ -1611,6 +1614,7 @@ public final ListWorkstationConfigsPagedResponse listWorkstationConfigs(String p * .toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * for (WorkstationConfig element : * workstationsClient.listWorkstationConfigs(request).iterateAll()) { @@ -1647,6 +1651,7 @@ public final ListWorkstationConfigsPagedResponse listWorkstationConfigs( * .toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * ApiFuture future = * workstationsClient.listWorkstationConfigsPagedCallable().futureCall(request); @@ -1682,6 +1687,7 @@ public final ListWorkstationConfigsPagedResponse listWorkstationConfigs( * .toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * while (true) { * ListWorkstationConfigsResponse response = @@ -1915,7 +1921,7 @@ public final ListUsableWorkstationConfigsPagedResponse listUsableWorkstationConf * } * * @param parent Required. Parent resource name. - * @param workstationConfig Required. Config to create. + * @param workstationConfig Required. Workstation configuration to create. * @param workstationConfigId Required. ID to use for the workstation configuration. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ @@ -1957,7 +1963,7 @@ public final OperationFuture createWorksta * } * * @param parent Required. Parent resource name. - * @param workstationConfig Required. Config to create. + * @param workstationConfig Required. Workstation configuration to create. * @param workstationConfigId Required. ID to use for the workstation configuration. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ @@ -2095,7 +2101,7 @@ public final OperationFuture createWorksta * } * } * - * @param workstationConfig Required. Config to update. + * @param workstationConfig Required. Workstation configuration to update. * @param updateMask Required. Mask specifying which fields in the workstation configuration * should be updated. * @throws com.google.api.gax.rpc.ApiException if the remote call fails @@ -2610,6 +2616,7 @@ public final ListWorkstationsPagedResponse listWorkstations(String parent) { * .toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * for (Workstation element : workstationsClient.listWorkstations(request).iterateAll()) { * // doThingsWith(element); @@ -2648,6 +2655,7 @@ public final ListWorkstationsPagedResponse listWorkstations(ListWorkstationsRequ * .toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * ApiFuture future = * workstationsClient.listWorkstationsPagedCallable().futureCall(request); @@ -2687,6 +2695,7 @@ public final ListWorkstationsPagedResponse listWorkstations(ListWorkstationsRequ * .toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * while (true) { * ListWorkstationsResponse response = @@ -2928,7 +2937,11 @@ public final ListUsableWorkstationsPagedResponse listUsableWorkstations( * } * * @param parent Required. Parent resource name. - * @param workstation Required. Workstation to create. + * @param workstation Required. Workstation to create. If source_workstation is specified, the + * user must have `workstations.workstations.use` permission on the source workstation, and + * the Cloud Workstations Service Agent for the project where you are creating the new + * workstation must have compute.disks.createSnapshot and compute.snapshots.useReadOnly on the + * source project. * @param workstationId Required. ID to use for the workstation. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ @@ -2968,7 +2981,11 @@ public final OperationFuture createWorkstationAs * } * * @param parent Required. Parent resource name. - * @param workstation Required. Workstation to create. + * @param workstation Required. Workstation to create. If source_workstation is specified, the + * user must have `workstations.workstations.use` permission on the source workstation, and + * the Cloud Workstations Service Agent for the project where you are creating the new + * workstation must have compute.disks.createSnapshot and compute.snapshots.useReadOnly on the + * source project. * @param workstationId Required. ID to use for the workstation. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ @@ -3117,8 +3134,7 @@ public final UnaryCallable createWorkstatio * } * * @param workstation Required. Workstation to update. - * @param updateMask Required. Mask specifying which fields in the workstation configuration - * should be updated. + * @param updateMask Required. Mask specifying which fields in the workstation should be updated. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture updateWorkstationAsync( @@ -3500,6 +3516,7 @@ public final OperationFuture startWorkstationAsy * .toString()) * .setValidateOnly(true) * .setEtag("etag3123477") + * .setBoostConfig("boostConfig1345260741") * .build(); * Workstation response = workstationsClient.startWorkstationAsync(request).get(); * } @@ -3538,6 +3555,7 @@ public final OperationFuture startWorkstationAsy * .toString()) * .setValidateOnly(true) * .setEtag("etag3123477") + * .setBoostConfig("boostConfig1345260741") * .build(); * OperationFuture future = * workstationsClient.startWorkstationOperationCallable().futureCall(request); @@ -3576,6 +3594,7 @@ public final OperationFuture startWorkstationAsy * .toString()) * .setValidateOnly(true) * .setEtag("etag3123477") + * .setBoostConfig("boostConfig1345260741") * .build(); * ApiFuture future = * workstationsClient.startWorkstationCallable().futureCall(request); @@ -3771,7 +3790,8 @@ public final UnaryCallable stopWorkstationCal // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Returns a short-lived credential that can be used to send authenticated and authorized traffic - * to a workstation. + * to a workstation. Once generated this token cannot be revoked and is good for the lifetime of + * the token. * *

          Sample code: * @@ -3808,7 +3828,8 @@ public final GenerateAccessTokenResponse generateAccessToken(WorkstationName wor // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Returns a short-lived credential that can be used to send authenticated and authorized traffic - * to a workstation. + * to a workstation. Once generated this token cannot be revoked and is good for the lifetime of + * the token. * *

          Sample code: * @@ -3844,7 +3865,8 @@ public final GenerateAccessTokenResponse generateAccessToken(String workstation) // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Returns a short-lived credential that can be used to send authenticated and authorized traffic - * to a workstation. + * to a workstation. Once generated this token cannot be revoked and is good for the lifetime of + * the token. * *

          Sample code: * @@ -3865,6 +3887,7 @@ public final GenerateAccessTokenResponse generateAccessToken(String workstation) * "[WORKSTATION_CONFIG]", * "[WORKSTATION]") * .toString()) + * .setPort(3446913) * .build(); * GenerateAccessTokenResponse response = workstationsClient.generateAccessToken(request); * } @@ -3880,7 +3903,8 @@ public final GenerateAccessTokenResponse generateAccessToken(GenerateAccessToken // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Returns a short-lived credential that can be used to send authenticated and authorized traffic - * to a workstation. + * to a workstation. Once generated this token cannot be revoked and is good for the lifetime of + * the token. * *

          Sample code: * @@ -3901,6 +3925,7 @@ public final GenerateAccessTokenResponse generateAccessToken(GenerateAccessToken * "[WORKSTATION_CONFIG]", * "[WORKSTATION]") * .toString()) + * .setPort(3446913) * .build(); * ApiFuture future = * workstationsClient.generateAccessTokenCallable().futureCall(request); diff --git a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1/stub/HttpJsonWorkstationsStub.java b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1/stub/HttpJsonWorkstationsStub.java index 012529b8bd7d..e247e097f6f2 100644 --- a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1/stub/HttpJsonWorkstationsStub.java +++ b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1/stub/HttpJsonWorkstationsStub.java @@ -159,6 +159,7 @@ public class HttpJsonWorkstationsStub extends WorkstationsStub { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); + serializer.putQueryParam(fields, "filter", request.getFilter()); serializer.putQueryParam(fields, "pageSize", request.getPageSize()); serializer.putQueryParam(fields, "pageToken", request.getPageToken()); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); @@ -369,6 +370,7 @@ public class HttpJsonWorkstationsStub extends WorkstationsStub { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); + serializer.putQueryParam(fields, "filter", request.getFilter()); serializer.putQueryParam(fields, "pageSize", request.getPageSize()); serializer.putQueryParam(fields, "pageToken", request.getPageToken()); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); @@ -617,6 +619,7 @@ public class HttpJsonWorkstationsStub extends WorkstationsStub { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); + serializer.putQueryParam(fields, "filter", request.getFilter()); serializer.putQueryParam(fields, "pageSize", request.getPageSize()); serializer.putQueryParam(fields, "pageToken", request.getPageToken()); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); diff --git a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsClient.java b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsClient.java index ee8a650b3d96..9040874cdb08 100644 --- a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsClient.java +++ b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsClient.java @@ -449,7 +449,7 @@ * * *

          GenerateAccessToken - *

          Returns a short-lived credential that can be used to send authenticated and authorized traffic to a workstation. + *

          Returns a short-lived credential that can be used to send authenticated and authorized traffic to a workstation. Once generated this token cannot be revoked and is good for the lifetime of the token. * *

          Request object method variants only take one parameter, a request object, which must be constructed before the call.

          *
            @@ -467,6 +467,26 @@ * * * + *

            PushCredentials + *

            Pushes credentials to a running workstation on behalf of a user. Once complete, supported credential types (application_default_credentials) are made available to processes running in the user container. + * + *

            Request object method variants only take one parameter, a request object, which must be constructed before the call.

            + *
              + *
            • pushCredentialsAsync(PushCredentialsRequest request) + *

            + *

            Methods that return long-running operations have "Async" method variants that return `OperationFuture`, which is used to track polling of the service.

            + *
              + *
            • pushCredentialsAsync(WorkstationName workstation) + *

            • pushCredentialsAsync(String workstation) + *

            + *

            Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

            + *
              + *
            • pushCredentialsOperationCallable() + *

            • pushCredentialsCallable() + *

            + * + * + * *

            SetIamPolicy *

            Sets the access control policy on the specified resource. Replacesany existing policy. *

            Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED`errors. @@ -838,6 +858,7 @@ public final ListWorkstationClustersPagedResponse listWorkstationClusters(String * .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * for (WorkstationCluster element : * workstationsClient.listWorkstationClusters(request).iterateAll()) { @@ -872,6 +893,7 @@ public final ListWorkstationClustersPagedResponse listWorkstationClusters( * .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * ApiFuture future = * workstationsClient.listWorkstationClustersPagedCallable().futureCall(request); @@ -905,6 +927,7 @@ public final ListWorkstationClustersPagedResponse listWorkstationClusters( * .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * while (true) { * ListWorkstationClustersResponse response = @@ -1612,6 +1635,7 @@ public final ListWorkstationConfigsPagedResponse listWorkstationConfigs(String p * .toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * for (WorkstationConfig element : * workstationsClient.listWorkstationConfigs(request).iterateAll()) { @@ -1648,6 +1672,7 @@ public final ListWorkstationConfigsPagedResponse listWorkstationConfigs( * .toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * ApiFuture future = * workstationsClient.listWorkstationConfigsPagedCallable().futureCall(request); @@ -1683,6 +1708,7 @@ public final ListWorkstationConfigsPagedResponse listWorkstationConfigs( * .toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * while (true) { * ListWorkstationConfigsResponse response = @@ -1916,7 +1942,7 @@ public final ListUsableWorkstationConfigsPagedResponse listUsableWorkstationConf * } * * @param parent Required. Parent resource name. - * @param workstationConfig Required. Config to create. + * @param workstationConfig Required. Workstation configuration to create. * @param workstationConfigId Required. ID to use for the workstation configuration. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ @@ -1958,7 +1984,7 @@ public final OperationFuture createWorksta * } * * @param parent Required. Parent resource name. - * @param workstationConfig Required. Config to create. + * @param workstationConfig Required. Workstation configuration to create. * @param workstationConfigId Required. ID to use for the workstation configuration. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ @@ -2096,7 +2122,7 @@ public final OperationFuture createWorksta * } * } * - * @param workstationConfig Required. Config to update. + * @param workstationConfig Required. Workstation configuration to update. * @param updateMask Required. Mask specifying which fields in the workstation configuration * should be updated. * @throws com.google.api.gax.rpc.ApiException if the remote call fails @@ -2611,6 +2637,7 @@ public final ListWorkstationsPagedResponse listWorkstations(String parent) { * .toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * for (Workstation element : workstationsClient.listWorkstations(request).iterateAll()) { * // doThingsWith(element); @@ -2649,6 +2676,7 @@ public final ListWorkstationsPagedResponse listWorkstations(ListWorkstationsRequ * .toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * ApiFuture future = * workstationsClient.listWorkstationsPagedCallable().futureCall(request); @@ -2688,6 +2716,7 @@ public final ListWorkstationsPagedResponse listWorkstations(ListWorkstationsRequ * .toString()) * .setPageSize(883849137) * .setPageToken("pageToken873572522") + * .setFilter("filter-1274492040") * .build(); * while (true) { * ListWorkstationsResponse response = @@ -2929,7 +2958,11 @@ public final ListUsableWorkstationsPagedResponse listUsableWorkstations( * } * * @param parent Required. Parent resource name. - * @param workstation Required. Workstation to create. + * @param workstation Required. Workstation to create. If source_workstation is specified, the + * user must have `workstations.workstations.use` permission on the source workstation, and + * the Cloud Workstations Service Agent for the project where you are creating the new + * workstation must have compute.disks.createSnapshot and compute.snapshots.useReadOnly on the + * source project. * @param workstationId Required. ID to use for the workstation. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ @@ -2969,7 +3002,11 @@ public final OperationFuture createWorkstationAs * } * * @param parent Required. Parent resource name. - * @param workstation Required. Workstation to create. + * @param workstation Required. Workstation to create. If source_workstation is specified, the + * user must have `workstations.workstations.use` permission on the source workstation, and + * the Cloud Workstations Service Agent for the project where you are creating the new + * workstation must have compute.disks.createSnapshot and compute.snapshots.useReadOnly on the + * source project. * @param workstationId Required. ID to use for the workstation. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ @@ -3118,8 +3155,7 @@ public final UnaryCallable createWorkstatio * } * * @param workstation Required. Workstation to update. - * @param updateMask Required. Mask specifying which fields in the workstation configuration - * should be updated. + * @param updateMask Required. Mask specifying which fields in the workstation should be updated. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture updateWorkstationAsync( @@ -3501,6 +3537,7 @@ public final OperationFuture startWorkstationAsy * .toString()) * .setValidateOnly(true) * .setEtag("etag3123477") + * .setBoostConfig("boostConfig1345260741") * .build(); * Workstation response = workstationsClient.startWorkstationAsync(request).get(); * } @@ -3539,6 +3576,7 @@ public final OperationFuture startWorkstationAsy * .toString()) * .setValidateOnly(true) * .setEtag("etag3123477") + * .setBoostConfig("boostConfig1345260741") * .build(); * OperationFuture future = * workstationsClient.startWorkstationOperationCallable().futureCall(request); @@ -3577,6 +3615,7 @@ public final OperationFuture startWorkstationAsy * .toString()) * .setValidateOnly(true) * .setEtag("etag3123477") + * .setBoostConfig("boostConfig1345260741") * .build(); * ApiFuture future = * workstationsClient.startWorkstationCallable().futureCall(request); @@ -3772,7 +3811,8 @@ public final UnaryCallable stopWorkstationCal // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Returns a short-lived credential that can be used to send authenticated and authorized traffic - * to a workstation. + * to a workstation. Once generated this token cannot be revoked and is good for the lifetime of + * the token. * *

            Sample code: * @@ -3809,7 +3849,8 @@ public final GenerateAccessTokenResponse generateAccessToken(WorkstationName wor // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Returns a short-lived credential that can be used to send authenticated and authorized traffic - * to a workstation. + * to a workstation. Once generated this token cannot be revoked and is good for the lifetime of + * the token. * *

            Sample code: * @@ -3845,7 +3886,8 @@ public final GenerateAccessTokenResponse generateAccessToken(String workstation) // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Returns a short-lived credential that can be used to send authenticated and authorized traffic - * to a workstation. + * to a workstation. Once generated this token cannot be revoked and is good for the lifetime of + * the token. * *

            Sample code: * @@ -3866,6 +3908,7 @@ public final GenerateAccessTokenResponse generateAccessToken(String workstation) * "[WORKSTATION_CONFIG]", * "[WORKSTATION]") * .toString()) + * .setPort(3446913) * .build(); * GenerateAccessTokenResponse response = workstationsClient.generateAccessToken(request); * } @@ -3881,7 +3924,8 @@ public final GenerateAccessTokenResponse generateAccessToken(GenerateAccessToken // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Returns a short-lived credential that can be used to send authenticated and authorized traffic - * to a workstation. + * to a workstation. Once generated this token cannot be revoked and is good for the lifetime of + * the token. * *

            Sample code: * @@ -3902,6 +3946,7 @@ public final GenerateAccessTokenResponse generateAccessToken(GenerateAccessToken * "[WORKSTATION_CONFIG]", * "[WORKSTATION]") * .toString()) + * .setPort(3446913) * .build(); * ApiFuture future = * workstationsClient.generateAccessTokenCallable().futureCall(request); @@ -3915,6 +3960,202 @@ public final GenerateAccessTokenResponse generateAccessToken(GenerateAccessToken return stub.generateAccessTokenCallable(); } + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Pushes credentials to a running workstation on behalf of a user. Once complete, supported + * credential types (application_default_credentials) are made available to processes running in + * the user container. + * + *

            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 (WorkstationsClient workstationsClient = WorkstationsClient.create()) {
            +   *   WorkstationName workstation =
            +   *       WorkstationName.of(
            +   *           "[PROJECT]",
            +   *           "[LOCATION]",
            +   *           "[WORKSTATION_CLUSTER]",
            +   *           "[WORKSTATION_CONFIG]",
            +   *           "[WORKSTATION]");
            +   *   Workstation response = workstationsClient.pushCredentialsAsync(workstation).get();
            +   * }
            +   * }
            + * + * @param workstation Required. Name of the workstation for which the credentials should be + * pushed. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final OperationFuture pushCredentialsAsync( + WorkstationName workstation) { + PushCredentialsRequest request = + PushCredentialsRequest.newBuilder() + .setWorkstation(workstation == null ? null : workstation.toString()) + .build(); + return pushCredentialsAsync(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Pushes credentials to a running workstation on behalf of a user. Once complete, supported + * credential types (application_default_credentials) are made available to processes running in + * the user container. + * + *

            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 (WorkstationsClient workstationsClient = WorkstationsClient.create()) {
            +   *   String workstation =
            +   *       WorkstationName.of(
            +   *               "[PROJECT]",
            +   *               "[LOCATION]",
            +   *               "[WORKSTATION_CLUSTER]",
            +   *               "[WORKSTATION_CONFIG]",
            +   *               "[WORKSTATION]")
            +   *           .toString();
            +   *   Workstation response = workstationsClient.pushCredentialsAsync(workstation).get();
            +   * }
            +   * }
            + * + * @param workstation Required. Name of the workstation for which the credentials should be + * pushed. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final OperationFuture pushCredentialsAsync( + String workstation) { + PushCredentialsRequest request = + PushCredentialsRequest.newBuilder().setWorkstation(workstation).build(); + return pushCredentialsAsync(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Pushes credentials to a running workstation on behalf of a user. Once complete, supported + * credential types (application_default_credentials) are made available to processes running in + * the user container. + * + *

            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 (WorkstationsClient workstationsClient = WorkstationsClient.create()) {
            +   *   PushCredentialsRequest request =
            +   *       PushCredentialsRequest.newBuilder()
            +   *           .setWorkstation(
            +   *               WorkstationName.of(
            +   *                       "[PROJECT]",
            +   *                       "[LOCATION]",
            +   *                       "[WORKSTATION_CLUSTER]",
            +   *                       "[WORKSTATION_CONFIG]",
            +   *                       "[WORKSTATION]")
            +   *                   .toString())
            +   *           .setApplicationDefaultCredentials(
            +   *               PushCredentialsRequest.OAuthToken.newBuilder().build())
            +   *           .build();
            +   *   Workstation response = workstationsClient.pushCredentialsAsync(request).get();
            +   * }
            +   * }
            + * + * @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 OperationFuture pushCredentialsAsync( + PushCredentialsRequest request) { + return pushCredentialsOperationCallable().futureCall(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Pushes credentials to a running workstation on behalf of a user. Once complete, supported + * credential types (application_default_credentials) are made available to processes running in + * the user container. + * + *

            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 (WorkstationsClient workstationsClient = WorkstationsClient.create()) {
            +   *   PushCredentialsRequest request =
            +   *       PushCredentialsRequest.newBuilder()
            +   *           .setWorkstation(
            +   *               WorkstationName.of(
            +   *                       "[PROJECT]",
            +   *                       "[LOCATION]",
            +   *                       "[WORKSTATION_CLUSTER]",
            +   *                       "[WORKSTATION_CONFIG]",
            +   *                       "[WORKSTATION]")
            +   *                   .toString())
            +   *           .setApplicationDefaultCredentials(
            +   *               PushCredentialsRequest.OAuthToken.newBuilder().build())
            +   *           .build();
            +   *   OperationFuture future =
            +   *       workstationsClient.pushCredentialsOperationCallable().futureCall(request);
            +   *   // Do something.
            +   *   Workstation response = future.get();
            +   * }
            +   * }
            + */ + public final OperationCallable + pushCredentialsOperationCallable() { + return stub.pushCredentialsOperationCallable(); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Pushes credentials to a running workstation on behalf of a user. Once complete, supported + * credential types (application_default_credentials) are made available to processes running in + * the user container. + * + *

            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 (WorkstationsClient workstationsClient = WorkstationsClient.create()) {
            +   *   PushCredentialsRequest request =
            +   *       PushCredentialsRequest.newBuilder()
            +   *           .setWorkstation(
            +   *               WorkstationName.of(
            +   *                       "[PROJECT]",
            +   *                       "[LOCATION]",
            +   *                       "[WORKSTATION_CLUSTER]",
            +   *                       "[WORKSTATION_CONFIG]",
            +   *                       "[WORKSTATION]")
            +   *                   .toString())
            +   *           .setApplicationDefaultCredentials(
            +   *               PushCredentialsRequest.OAuthToken.newBuilder().build())
            +   *           .build();
            +   *   ApiFuture future =
            +   *       workstationsClient.pushCredentialsCallable().futureCall(request);
            +   *   // Do something.
            +   *   Operation response = future.get();
            +   * }
            +   * }
            + */ + public final UnaryCallable pushCredentialsCallable() { + return stub.pushCredentialsCallable(); + } + // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Sets the access control policy on the specified resource. Replacesany existing policy. diff --git a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsSettings.java b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsSettings.java index 4f0757d50b6f..f83636286622 100644 --- a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsSettings.java +++ b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsSettings.java @@ -326,6 +326,17 @@ public UnaryCallSettings stopWorkstationSetti return ((WorkstationsStubSettings) getStubSettings()).generateAccessTokenSettings(); } + /** Returns the object with the settings used for calls to pushCredentials. */ + public UnaryCallSettings pushCredentialsSettings() { + return ((WorkstationsStubSettings) getStubSettings()).pushCredentialsSettings(); + } + + /** Returns the object with the settings used for calls to pushCredentials. */ + public OperationCallSettings + pushCredentialsOperationSettings() { + return ((WorkstationsStubSettings) getStubSettings()).pushCredentialsOperationSettings(); + } + /** Returns the object with the settings used for calls to setIamPolicy. */ public UnaryCallSettings setIamPolicySettings() { return ((WorkstationsStubSettings) getStubSettings()).setIamPolicySettings(); @@ -657,6 +668,18 @@ public UnaryCallSettings.Builder stopWorkstat return getStubSettingsBuilder().generateAccessTokenSettings(); } + /** Returns the builder for the settings used for calls to pushCredentials. */ + public UnaryCallSettings.Builder pushCredentialsSettings() { + return getStubSettingsBuilder().pushCredentialsSettings(); + } + + /** Returns the builder for the settings used for calls to pushCredentials. */ + public OperationCallSettings.Builder< + PushCredentialsRequest, Workstation, PushCredentialsMetadata> + pushCredentialsOperationSettings() { + return getStubSettingsBuilder().pushCredentialsOperationSettings(); + } + /** Returns the builder for the settings used for calls to setIamPolicy. */ public UnaryCallSettings.Builder setIamPolicySettings() { return getStubSettingsBuilder().setIamPolicySettings(); diff --git a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/gapic_metadata.json b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/gapic_metadata.json index 43d1f65780c5..ff22d83ba4e3 100644 --- a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/gapic_metadata.json +++ b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/gapic_metadata.json @@ -58,6 +58,9 @@ "ListWorkstations": { "methods": ["listWorkstations", "listWorkstations", "listWorkstations", "listWorkstationsPagedCallable", "listWorkstationsCallable"] }, + "PushCredentials": { + "methods": ["pushCredentialsAsync", "pushCredentialsAsync", "pushCredentialsAsync", "pushCredentialsOperationCallable", "pushCredentialsCallable"] + }, "SetIamPolicy": { "methods": ["setIamPolicy", "setIamPolicyCallable"] }, diff --git a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/GrpcWorkstationsStub.java b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/GrpcWorkstationsStub.java index cbafd491c4c5..da616c32c958 100644 --- a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/GrpcWorkstationsStub.java +++ b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/GrpcWorkstationsStub.java @@ -53,6 +53,8 @@ import com.google.cloud.workstations.v1beta.ListWorkstationsRequest; import com.google.cloud.workstations.v1beta.ListWorkstationsResponse; import com.google.cloud.workstations.v1beta.OperationMetadata; +import com.google.cloud.workstations.v1beta.PushCredentialsMetadata; +import com.google.cloud.workstations.v1beta.PushCredentialsRequest; import com.google.cloud.workstations.v1beta.StartWorkstationRequest; import com.google.cloud.workstations.v1beta.StopWorkstationRequest; import com.google.cloud.workstations.v1beta.UpdateWorkstationClusterRequest; @@ -331,6 +333,17 @@ public class GrpcWorkstationsStub extends WorkstationsStub { .setSampledToLocalTracing(true) .build(); + private static final MethodDescriptor + pushCredentialsMethodDescriptor = + MethodDescriptor.newBuilder() + .setType(MethodDescriptor.MethodType.UNARY) + .setFullMethodName("google.cloud.workstations.v1beta.Workstations/PushCredentials") + .setRequestMarshaller( + ProtoUtils.marshaller(PushCredentialsRequest.getDefaultInstance())) + .setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance())) + .setSampledToLocalTracing(true) + .build(); + private static final MethodDescriptor setIamPolicyMethodDescriptor = MethodDescriptor.newBuilder() .setType(MethodDescriptor.MethodType.UNARY) @@ -435,6 +448,9 @@ public class GrpcWorkstationsStub extends WorkstationsStub { stopWorkstationOperationCallable; private final UnaryCallable generateAccessTokenCallable; + private final UnaryCallable pushCredentialsCallable; + private final OperationCallable + pushCredentialsOperationCallable; private final UnaryCallable setIamPolicyCallable; private final UnaryCallable getIamPolicyCallable; private final UnaryCallable @@ -723,6 +739,17 @@ protected GrpcWorkstationsStub( }) .setResourceNameExtractor(request -> request.getWorkstation()) .build(); + GrpcCallSettings pushCredentialsTransportSettings = + GrpcCallSettings.newBuilder() + .setMethodDescriptor(pushCredentialsMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add("workstation", String.valueOf(request.getWorkstation())); + return builder.build(); + }) + .setResourceNameExtractor(request -> request.getWorkstation()) + .build(); GrpcCallSettings setIamPolicyTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(setIamPolicyMethodDescriptor) @@ -939,6 +966,15 @@ protected GrpcWorkstationsStub( generateAccessTokenTransportSettings, settings.generateAccessTokenSettings(), clientContext); + this.pushCredentialsCallable = + callableFactory.createUnaryCallable( + pushCredentialsTransportSettings, settings.pushCredentialsSettings(), clientContext); + this.pushCredentialsOperationCallable = + callableFactory.createOperationCallable( + pushCredentialsTransportSettings, + settings.pushCredentialsOperationSettings(), + clientContext, + operationsStub); this.setIamPolicyCallable = callableFactory.createUnaryCallable( setIamPolicyTransportSettings, settings.setIamPolicySettings(), clientContext); @@ -1170,6 +1206,17 @@ public UnaryCallable stopWorkstationCallable( return generateAccessTokenCallable; } + @Override + public UnaryCallable pushCredentialsCallable() { + return pushCredentialsCallable; + } + + @Override + public OperationCallable + pushCredentialsOperationCallable() { + return pushCredentialsOperationCallable; + } + @Override public UnaryCallable setIamPolicyCallable() { return setIamPolicyCallable; diff --git a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/HttpJsonWorkstationsStub.java b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/HttpJsonWorkstationsStub.java index 3aa371c2d132..204f7174fa5d 100644 --- a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/HttpJsonWorkstationsStub.java +++ b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/HttpJsonWorkstationsStub.java @@ -61,6 +61,8 @@ import com.google.cloud.workstations.v1beta.ListWorkstationsRequest; import com.google.cloud.workstations.v1beta.ListWorkstationsResponse; import com.google.cloud.workstations.v1beta.OperationMetadata; +import com.google.cloud.workstations.v1beta.PushCredentialsMetadata; +import com.google.cloud.workstations.v1beta.PushCredentialsRequest; import com.google.cloud.workstations.v1beta.StartWorkstationRequest; import com.google.cloud.workstations.v1beta.StopWorkstationRequest; import com.google.cloud.workstations.v1beta.UpdateWorkstationClusterRequest; @@ -96,6 +98,7 @@ public class HttpJsonWorkstationsStub extends WorkstationsStub { private static final TypeRegistry typeRegistry = TypeRegistry.newBuilder() + .add(PushCredentialsMetadata.getDescriptor()) .add(WorkstationCluster.getDescriptor()) .add(WorkstationConfig.getDescriptor()) .add(Workstation.getDescriptor()) @@ -162,6 +165,7 @@ public class HttpJsonWorkstationsStub extends WorkstationsStub { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); + serializer.putQueryParam(fields, "filter", request.getFilter()); serializer.putQueryParam(fields, "pageSize", request.getPageSize()); serializer.putQueryParam(fields, "pageToken", request.getPageToken()); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); @@ -374,6 +378,7 @@ public class HttpJsonWorkstationsStub extends WorkstationsStub { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); + serializer.putQueryParam(fields, "filter", request.getFilter()); serializer.putQueryParam(fields, "pageSize", request.getPageSize()); serializer.putQueryParam(fields, "pageToken", request.getPageToken()); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); @@ -622,6 +627,7 @@ public class HttpJsonWorkstationsStub extends WorkstationsStub { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); + serializer.putQueryParam(fields, "filter", request.getFilter()); serializer.putQueryParam(fields, "pageSize", request.getPageSize()); serializer.putQueryParam(fields, "pageToken", request.getPageToken()); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); @@ -925,6 +931,48 @@ public class HttpJsonWorkstationsStub extends WorkstationsStub { .build()) .build(); + private static final ApiMethodDescriptor + pushCredentialsMethodDescriptor = + ApiMethodDescriptor.newBuilder() + .setFullMethodName("google.cloud.workstations.v1beta.Workstations/PushCredentials") + .setHttpMethod("POST") + .setType(ApiMethodDescriptor.MethodType.UNARY) + .setRequestFormatter( + ProtoMessageRequestFormatter.newBuilder() + .setPath( + "/v1beta/{workstation=projects/*/locations/*/workstationClusters/*/workstationConfigs/*/workstations/*}:pushCredentials", + request -> { + Map fields = new HashMap<>(); + ProtoRestSerializer serializer = + ProtoRestSerializer.create(); + serializer.putPathParam( + fields, "workstation", request.getWorkstation()); + return fields; + }) + .setQueryParamsExtractor( + request -> { + Map> fields = new HashMap<>(); + ProtoRestSerializer serializer = + ProtoRestSerializer.create(); + serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); + return fields; + }) + .setRequestBodyExtractor( + request -> + ProtoRestSerializer.create() + .toBody( + "*", request.toBuilder().clearWorkstation().build(), true)) + .build()) + .setResponseParser( + ProtoMessageResponseParser.newBuilder() + .setDefaultInstance(Operation.getDefaultInstance()) + .setDefaultTypeRegistry(typeRegistry) + .build()) + .setOperationSnapshotFactory( + (PushCredentialsRequest request, Operation response) -> + HttpJsonOperationSnapshot.create(response)) + .build(); + private static final ApiMethodDescriptor setIamPolicyMethodDescriptor = ApiMethodDescriptor.newBuilder() @@ -1113,6 +1161,9 @@ public class HttpJsonWorkstationsStub extends WorkstationsStub { stopWorkstationOperationCallable; private final UnaryCallable generateAccessTokenCallable; + private final UnaryCallable pushCredentialsCallable; + private final OperationCallable + pushCredentialsOperationCallable; private final UnaryCallable setIamPolicyCallable; private final UnaryCallable getIamPolicyCallable; private final UnaryCallable @@ -1450,6 +1501,18 @@ protected HttpJsonWorkstationsStub( }) .setResourceNameExtractor(request -> request.getWorkstation()) .build(); + HttpJsonCallSettings pushCredentialsTransportSettings = + HttpJsonCallSettings.newBuilder() + .setMethodDescriptor(pushCredentialsMethodDescriptor) + .setTypeRegistry(typeRegistry) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add("workstation", String.valueOf(request.getWorkstation())); + return builder.build(); + }) + .setResourceNameExtractor(request -> request.getWorkstation()) + .build(); HttpJsonCallSettings setIamPolicyTransportSettings = HttpJsonCallSettings.newBuilder() .setMethodDescriptor(setIamPolicyMethodDescriptor) @@ -1669,6 +1732,15 @@ protected HttpJsonWorkstationsStub( generateAccessTokenTransportSettings, settings.generateAccessTokenSettings(), clientContext); + this.pushCredentialsCallable = + callableFactory.createUnaryCallable( + pushCredentialsTransportSettings, settings.pushCredentialsSettings(), clientContext); + this.pushCredentialsOperationCallable = + callableFactory.createOperationCallable( + pushCredentialsTransportSettings, + settings.pushCredentialsOperationSettings(), + clientContext, + httpJsonOperationsStub); this.setIamPolicyCallable = callableFactory.createUnaryCallable( setIamPolicyTransportSettings, settings.setIamPolicySettings(), clientContext); @@ -1708,6 +1780,7 @@ public static List getMethodDescriptors() { methodDescriptors.add(startWorkstationMethodDescriptor); methodDescriptors.add(stopWorkstationMethodDescriptor); methodDescriptors.add(generateAccessTokenMethodDescriptor); + methodDescriptors.add(pushCredentialsMethodDescriptor); methodDescriptors.add(setIamPolicyMethodDescriptor); methodDescriptors.add(getIamPolicyMethodDescriptor); methodDescriptors.add(testIamPermissionsMethodDescriptor); @@ -1929,6 +2002,17 @@ public UnaryCallable stopWorkstationCallable( return generateAccessTokenCallable; } + @Override + public UnaryCallable pushCredentialsCallable() { + return pushCredentialsCallable; + } + + @Override + public OperationCallable + pushCredentialsOperationCallable() { + return pushCredentialsOperationCallable; + } + @Override public UnaryCallable setIamPolicyCallable() { return setIamPolicyCallable; diff --git a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/WorkstationsStub.java b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/WorkstationsStub.java index c6eec562cc13..885752950414 100644 --- a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/WorkstationsStub.java +++ b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/WorkstationsStub.java @@ -48,6 +48,8 @@ import com.google.cloud.workstations.v1beta.ListWorkstationsRequest; import com.google.cloud.workstations.v1beta.ListWorkstationsResponse; import com.google.cloud.workstations.v1beta.OperationMetadata; +import com.google.cloud.workstations.v1beta.PushCredentialsMetadata; +import com.google.cloud.workstations.v1beta.PushCredentialsRequest; import com.google.cloud.workstations.v1beta.StartWorkstationRequest; import com.google.cloud.workstations.v1beta.StopWorkstationRequest; import com.google.cloud.workstations.v1beta.UpdateWorkstationClusterRequest; @@ -272,6 +274,15 @@ public UnaryCallable stopWorkstationCallable( throw new UnsupportedOperationException("Not implemented: generateAccessTokenCallable()"); } + public OperationCallable + pushCredentialsOperationCallable() { + throw new UnsupportedOperationException("Not implemented: pushCredentialsOperationCallable()"); + } + + public UnaryCallable pushCredentialsCallable() { + throw new UnsupportedOperationException("Not implemented: pushCredentialsCallable()"); + } + public UnaryCallable setIamPolicyCallable() { throw new UnsupportedOperationException("Not implemented: setIamPolicyCallable()"); } diff --git a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/WorkstationsStubSettings.java b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/WorkstationsStubSettings.java index ff003f418b28..a70421e9920e 100644 --- a/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/WorkstationsStubSettings.java +++ b/java-workstations/google-cloud-workstations/src/main/java/com/google/cloud/workstations/v1beta/stub/WorkstationsStubSettings.java @@ -75,6 +75,8 @@ import com.google.cloud.workstations.v1beta.ListWorkstationsRequest; import com.google.cloud.workstations.v1beta.ListWorkstationsResponse; import com.google.cloud.workstations.v1beta.OperationMetadata; +import com.google.cloud.workstations.v1beta.PushCredentialsMetadata; +import com.google.cloud.workstations.v1beta.PushCredentialsRequest; import com.google.cloud.workstations.v1beta.StartWorkstationRequest; import com.google.cloud.workstations.v1beta.StopWorkstationRequest; import com.google.cloud.workstations.v1beta.UpdateWorkstationClusterRequest; @@ -257,6 +259,9 @@ public class WorkstationsStubSettings extends StubSettings generateAccessTokenSettings; + private final UnaryCallSettings pushCredentialsSettings; + private final OperationCallSettings + pushCredentialsOperationSettings; private final UnaryCallSettings setIamPolicySettings; private final UnaryCallSettings getIamPolicySettings; private final UnaryCallSettings @@ -797,6 +802,17 @@ public UnaryCallSettings stopWorkstationSetti return generateAccessTokenSettings; } + /** Returns the object with the settings used for calls to pushCredentials. */ + public UnaryCallSettings pushCredentialsSettings() { + return pushCredentialsSettings; + } + + /** Returns the object with the settings used for calls to pushCredentials. */ + public OperationCallSettings + pushCredentialsOperationSettings() { + return pushCredentialsOperationSettings; + } + /** Returns the object with the settings used for calls to setIamPolicy. */ public UnaryCallSettings setIamPolicySettings() { return setIamPolicySettings; @@ -965,6 +981,8 @@ protected WorkstationsStubSettings(Builder settingsBuilder) throws IOException { stopWorkstationSettings = settingsBuilder.stopWorkstationSettings().build(); stopWorkstationOperationSettings = settingsBuilder.stopWorkstationOperationSettings().build(); generateAccessTokenSettings = settingsBuilder.generateAccessTokenSettings().build(); + pushCredentialsSettings = settingsBuilder.pushCredentialsSettings().build(); + pushCredentialsOperationSettings = settingsBuilder.pushCredentialsOperationSettings().build(); setIamPolicySettings = settingsBuilder.setIamPolicySettings().build(); getIamPolicySettings = settingsBuilder.getIamPolicySettings().build(); testIamPermissionsSettings = settingsBuilder.testIamPermissionsSettings().build(); @@ -1068,6 +1086,11 @@ public static class Builder extends StubSettings.Builder generateAccessTokenSettings; + private final UnaryCallSettings.Builder + pushCredentialsSettings; + private final OperationCallSettings.Builder< + PushCredentialsRequest, Workstation, PushCredentialsMetadata> + pushCredentialsOperationSettings; private final UnaryCallSettings.Builder setIamPolicySettings; private final UnaryCallSettings.Builder getIamPolicySettings; private final UnaryCallSettings.Builder @@ -1158,6 +1181,8 @@ protected Builder(ClientContext clientContext) { stopWorkstationSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); stopWorkstationOperationSettings = OperationCallSettings.newBuilder(); generateAccessTokenSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); + pushCredentialsSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); + pushCredentialsOperationSettings = OperationCallSettings.newBuilder(); setIamPolicySettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); getIamPolicySettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); testIamPermissionsSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); @@ -1184,6 +1209,7 @@ protected Builder(ClientContext clientContext) { startWorkstationSettings, stopWorkstationSettings, generateAccessTokenSettings, + pushCredentialsSettings, setIamPolicySettings, getIamPolicySettings, testIamPermissionsSettings); @@ -1231,6 +1257,8 @@ protected Builder(WorkstationsStubSettings settings) { stopWorkstationSettings = settings.stopWorkstationSettings.toBuilder(); stopWorkstationOperationSettings = settings.stopWorkstationOperationSettings.toBuilder(); generateAccessTokenSettings = settings.generateAccessTokenSettings.toBuilder(); + pushCredentialsSettings = settings.pushCredentialsSettings.toBuilder(); + pushCredentialsOperationSettings = settings.pushCredentialsOperationSettings.toBuilder(); setIamPolicySettings = settings.setIamPolicySettings.toBuilder(); getIamPolicySettings = settings.getIamPolicySettings.toBuilder(); testIamPermissionsSettings = settings.testIamPermissionsSettings.toBuilder(); @@ -1257,6 +1285,7 @@ protected Builder(WorkstationsStubSettings settings) { startWorkstationSettings, stopWorkstationSettings, generateAccessTokenSettings, + pushCredentialsSettings, setIamPolicySettings, getIamPolicySettings, testIamPermissionsSettings); @@ -1387,6 +1416,11 @@ private static Builder initDefaults(Builder builder) { .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_0_codes")) .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_0_params")); + builder + .pushCredentialsSettings() + .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("no_retry_codes")) + .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("no_retry_params")); + builder .setIamPolicySettings() .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("no_retry_codes")) @@ -1666,6 +1700,30 @@ private static Builder initDefaults(Builder builder) { .setTotalTimeoutDuration(Duration.ofMillis(300000L)) .build())); + builder + .pushCredentialsOperationSettings() + .setInitialCallSettings( + UnaryCallSettings + .newUnaryCallSettingsBuilder() + .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("no_retry_codes")) + .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("no_retry_params")) + .build()) + .setResponseTransformer( + ProtoOperationTransformers.ResponseTransformer.create(Workstation.class)) + .setMetadataTransformer( + ProtoOperationTransformers.MetadataTransformer.create(PushCredentialsMetadata.class)) + .setPollingAlgorithm( + OperationTimedPollAlgorithm.create( + RetrySettings.newBuilder() + .setInitialRetryDelayDuration(Duration.ofMillis(5000L)) + .setRetryDelayMultiplier(1.5) + .setMaxRetryDelayDuration(Duration.ofMillis(45000L)) + .setInitialRpcTimeoutDuration(Duration.ZERO) + .setRpcTimeoutMultiplier(1.0) + .setMaxRpcTimeoutDuration(Duration.ZERO) + .setTotalTimeoutDuration(Duration.ofMillis(300000L)) + .build())); + return builder; } @@ -1887,6 +1945,18 @@ public UnaryCallSettings.Builder stopWorkstat return generateAccessTokenSettings; } + /** Returns the builder for the settings used for calls to pushCredentials. */ + public UnaryCallSettings.Builder pushCredentialsSettings() { + return pushCredentialsSettings; + } + + /** Returns the builder for the settings used for calls to pushCredentials. */ + public OperationCallSettings.Builder< + PushCredentialsRequest, Workstation, PushCredentialsMetadata> + pushCredentialsOperationSettings() { + return pushCredentialsOperationSettings; + } + /** Returns the builder for the settings used for calls to setIamPolicy. */ public UnaryCallSettings.Builder setIamPolicySettings() { return setIamPolicySettings; diff --git a/java-workstations/google-cloud-workstations/src/main/resources/META-INF/native-image/com.google.cloud.workstations.v1/reflect-config.json b/java-workstations/google-cloud-workstations/src/main/resources/META-INF/native-image/com.google.cloud.workstations.v1/reflect-config.json index 248aa2acf728..2245745a3cca 100644 --- a/java-workstations/google-cloud-workstations/src/main/resources/META-INF/native-image/com.google.cloud.workstations.v1/reflect-config.json +++ b/java-workstations/google-cloud-workstations/src/main/resources/META-INF/native-image/com.google.cloud.workstations.v1/reflect-config.json @@ -170,6 +170,33 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.api.FieldInfo", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.api.FieldInfo$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.api.FieldInfo$Format", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.api.FlowControlLimitExceededBehaviorProto", "queryAllDeclaredConstructors": true, @@ -476,6 +503,24 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.api.TypeReference", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.api.TypeReference$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.location.GetLocationRequest", "queryAllDeclaredConstructors": true, @@ -1052,6 +1097,42 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1.Workstation$RuntimeHost", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.Workstation$RuntimeHost$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.Workstation$RuntimeHost$GceInstanceHost", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.Workstation$RuntimeHost$GceInstanceHost$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1.Workstation$State", "queryAllDeclaredConstructors": true, @@ -1061,6 +1142,24 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1.Workstation$WorkstationPersistentDirectory", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.Workstation$WorkstationPersistentDirectory$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1.WorkstationCluster", "queryAllDeclaredConstructors": true, @@ -1079,6 +1178,42 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1.WorkstationCluster$DomainConfig", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.WorkstationCluster$DomainConfig$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.WorkstationCluster$GatewayConfig", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.WorkstationCluster$GatewayConfig$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1.WorkstationCluster$PrivateClusterConfig", "queryAllDeclaredConstructors": true, @@ -1151,6 +1286,42 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1.WorkstationConfig$EphemeralDirectory", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.WorkstationConfig$EphemeralDirectory$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.WorkstationConfig$EphemeralDirectory$GcePersistentDisk", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.WorkstationConfig$EphemeralDirectory$GcePersistentDisk$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1.WorkstationConfig$Host", "queryAllDeclaredConstructors": true, @@ -1178,6 +1349,42 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1.WorkstationConfig$Host$GceInstance$Accelerator", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.WorkstationConfig$Host$GceInstance$Accelerator$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.WorkstationConfig$Host$GceInstance$BoostConfig", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.WorkstationConfig$Host$GceInstance$BoostConfig$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1.WorkstationConfig$Host$GceInstance$Builder", "queryAllDeclaredConstructors": true, @@ -1241,6 +1448,33 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1.WorkstationConfig$PersistentDirectory$GceHyperdiskBalancedHighAvailability", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.WorkstationConfig$PersistentDirectory$GceHyperdiskBalancedHighAvailability$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.WorkstationConfig$PersistentDirectory$GceHyperdiskBalancedHighAvailability$ReclaimPolicy", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1.WorkstationConfig$PersistentDirectory$GceRegionalPersistentDisk", "queryAllDeclaredConstructors": true, @@ -1268,6 +1502,24 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1.WorkstationConfig$PortRange", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1.WorkstationConfig$PortRange$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1.WorkstationConfig$ReadinessCheck", "queryAllDeclaredConstructors": true, diff --git a/java-workstations/google-cloud-workstations/src/main/resources/META-INF/native-image/com.google.cloud.workstations.v1beta/reflect-config.json b/java-workstations/google-cloud-workstations/src/main/resources/META-INF/native-image/com.google.cloud.workstations.v1beta/reflect-config.json index 354decbff035..3ae9ae05b3dc 100644 --- a/java-workstations/google-cloud-workstations/src/main/resources/META-INF/native-image/com.google.cloud.workstations.v1beta/reflect-config.json +++ b/java-workstations/google-cloud-workstations/src/main/resources/META-INF/native-image/com.google.cloud.workstations.v1beta/reflect-config.json @@ -170,6 +170,33 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.api.FieldInfo", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.api.FieldInfo$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.api.FieldInfo$Format", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.api.FlowControlLimitExceededBehaviorProto", "queryAllDeclaredConstructors": true, @@ -476,6 +503,24 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.api.TypeReference", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.api.TypeReference$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.location.GetLocationRequest", "queryAllDeclaredConstructors": true, @@ -944,6 +989,60 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1beta.PushCredentialsMetadata", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.PushCredentialsMetadata$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.PushCredentialsRequest", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.PushCredentialsRequest$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.PushCredentialsRequest$OAuthToken", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.PushCredentialsRequest$OAuthToken$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1beta.StartWorkstationRequest", "queryAllDeclaredConstructors": true, @@ -1052,6 +1151,42 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1beta.Workstation$RuntimeHost", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.Workstation$RuntimeHost$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.Workstation$RuntimeHost$GceInstanceHost", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.Workstation$RuntimeHost$GceInstanceHost$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1beta.Workstation$State", "queryAllDeclaredConstructors": true, @@ -1061,6 +1196,42 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1beta.Workstation$WorkstationBoostConfig", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.Workstation$WorkstationBoostConfig$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.Workstation$WorkstationPersistentDirectory", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.Workstation$WorkstationPersistentDirectory$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1beta.WorkstationCluster", "queryAllDeclaredConstructors": true, @@ -1079,6 +1250,42 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationCluster$DomainConfig", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationCluster$DomainConfig$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationCluster$GatewayConfig", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationCluster$GatewayConfig$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1beta.WorkstationCluster$PrivateClusterConfig", "queryAllDeclaredConstructors": true, @@ -1232,6 +1439,24 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$Host$GceInstance$BoostConfig", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$Host$GceInstance$BoostConfig$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$Host$GceInstance$Builder", "queryAllDeclaredConstructors": true, @@ -1277,6 +1502,51 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$Host$GceInstance$ReservationAffinity", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$Host$GceInstance$ReservationAffinity$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$Host$GceInstance$ReservationAffinity$Type", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$HttpOptions", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$HttpOptions$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$PersistentDirectory", "queryAllDeclaredConstructors": true, @@ -1295,6 +1565,33 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$PersistentDirectory$GceHyperdiskBalancedHighAvailability", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$PersistentDirectory$GceHyperdiskBalancedHighAvailability$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$PersistentDirectory$GceHyperdiskBalancedHighAvailability$ReclaimPolicy", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$PersistentDirectory$GceRegionalPersistentDisk", "queryAllDeclaredConstructors": true, @@ -1322,6 +1619,24 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$PortRange", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$PortRange$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.workstations.v1beta.WorkstationConfig$ReadinessCheck", "queryAllDeclaredConstructors": true, diff --git a/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1/WorkstationsClientHttpJsonTest.java b/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1/WorkstationsClientHttpJsonTest.java index 0500d052e537..6d2ca61730d2 100644 --- a/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1/WorkstationsClientHttpJsonTest.java +++ b/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1/WorkstationsClientHttpJsonTest.java @@ -117,8 +117,13 @@ public void getWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); mockService.addResponse(expectedResponse); @@ -180,8 +185,13 @@ public void getWorkstationClusterTest2() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); mockService.addResponse(expectedResponse); @@ -343,8 +353,13 @@ public void createWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -416,8 +431,13 @@ public void createWorkstationClusterTest2() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -489,8 +509,13 @@ public void updateWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -518,8 +543,13 @@ public void updateWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); FieldMask updateMask = FieldMask.newBuilder().build(); @@ -568,8 +598,13 @@ public void updateWorkstationClusterExceptionTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); FieldMask updateMask = FieldMask.newBuilder().build(); client.updateWorkstationClusterAsync(workstationCluster, updateMask).get(); @@ -598,8 +633,13 @@ public void deleteWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -666,8 +706,13 @@ public void deleteWorkstationClusterTest2() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -733,14 +778,20 @@ public void getWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); mockService.addResponse(expectedResponse); @@ -803,14 +854,20 @@ public void getWorkstationConfigTest2() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); mockService.addResponse(expectedResponse); @@ -1081,14 +1138,20 @@ public void createWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1159,14 +1222,20 @@ public void createWorkstationConfigTest2() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1237,14 +1306,20 @@ public void updateWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1271,14 +1346,20 @@ public void updateWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); FieldMask updateMask = FieldMask.newBuilder().build(); @@ -1329,14 +1410,20 @@ public void updateWorkstationConfigExceptionTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); FieldMask updateMask = FieldMask.newBuilder().build(); client.updateWorkstationConfigAsync(workstationConfig, updateMask).get(); @@ -1364,14 +1451,20 @@ public void deleteWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1439,14 +1532,20 @@ public void deleteWorkstationConfigTest2() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1515,7 +1614,13 @@ public void getWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); mockService.addResponse(expectedResponse); @@ -1589,7 +1694,13 @@ public void getWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); mockService.addResponse(expectedResponse); @@ -1865,7 +1976,13 @@ public void createWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -1941,7 +2058,13 @@ public void createWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2015,7 +2138,13 @@ public void updateWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2045,7 +2174,13 @@ public void updateWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); FieldMask updateMask = FieldMask.newBuilder().build(); @@ -2095,7 +2230,13 @@ public void updateWorkstationExceptionTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); FieldMask updateMask = FieldMask.newBuilder().build(); client.updateWorkstationAsync(workstation, updateMask).get(); @@ -2126,7 +2267,13 @@ public void deleteWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2205,7 +2352,13 @@ public void deleteWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2274,7 +2427,13 @@ public void startWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2353,7 +2512,13 @@ public void startWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2422,7 +2587,13 @@ public void stopWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2501,7 +2672,13 @@ public void stopWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() diff --git a/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1/WorkstationsClientTest.java b/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1/WorkstationsClientTest.java index 77793111eba8..f8bba37dc741 100644 --- a/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1/WorkstationsClientTest.java +++ b/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1/WorkstationsClientTest.java @@ -126,8 +126,13 @@ public void getWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); mockWorkstations.addResponse(expectedResponse); @@ -184,8 +189,13 @@ public void getWorkstationClusterTest2() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); mockWorkstations.addResponse(expectedResponse); @@ -330,8 +340,13 @@ public void createWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -403,8 +418,13 @@ public void createWorkstationClusterTest2() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -476,8 +496,13 @@ public void updateWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -544,8 +569,13 @@ public void deleteWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -610,8 +640,13 @@ public void deleteWorkstationClusterTest2() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -673,14 +708,20 @@ public void getWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); mockWorkstations.addResponse(expectedResponse); @@ -738,14 +779,20 @@ public void getWorkstationConfigTest2() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); mockWorkstations.addResponse(expectedResponse); @@ -985,14 +1032,20 @@ public void createWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1063,14 +1116,20 @@ public void createWorkstationConfigTest2() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1139,14 +1198,20 @@ public void updateWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1212,14 +1277,20 @@ public void deleteWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1285,14 +1356,20 @@ public void deleteWorkstationConfigTest2() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) + .addAllEphemeralDirectories(new ArrayList()) .setContainer(WorkstationConfig.Container.newBuilder().build()) .setEncryptionKey(WorkstationConfig.CustomerEncryptionKey.newBuilder().build()) .addAllReadinessChecks(new ArrayList()) .addAllReplicaZones(new ArrayList()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setEnableAuditAgent(true) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setGrantWorkstationAdminRoleOnCreate(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1357,7 +1434,13 @@ public void getWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); mockWorkstations.addResponse(expectedResponse); @@ -1425,7 +1508,13 @@ public void getWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); mockWorkstations.addResponse(expectedResponse); @@ -1667,7 +1756,13 @@ public void createWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -1742,7 +1837,13 @@ public void createWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -1813,7 +1914,13 @@ public void updateWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -1880,7 +1987,13 @@ public void deleteWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -1956,7 +2069,13 @@ public void deleteWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2020,7 +2139,13 @@ public void startWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2096,7 +2221,13 @@ public void startWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2160,7 +2291,13 @@ public void stopWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2236,7 +2373,13 @@ public void stopWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .setSourceWorkstation("sourceWorkstation2087650792") + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() diff --git a/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1beta/MockWorkstationsImpl.java b/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1beta/MockWorkstationsImpl.java index 7813178f8eb1..1309bcdab129 100644 --- a/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1beta/MockWorkstationsImpl.java +++ b/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1beta/MockWorkstationsImpl.java @@ -495,4 +495,25 @@ public void generateAccessToken( Exception.class.getName()))); } } + + @Override + public void pushCredentials( + PushCredentialsRequest request, StreamObserver responseObserver) { + Object response = responses.poll(); + if (response instanceof Operation) { + requests.add(request); + responseObserver.onNext(((Operation) response)); + responseObserver.onCompleted(); + } else if (response instanceof Exception) { + responseObserver.onError(((Exception) response)); + } else { + responseObserver.onError( + new IllegalArgumentException( + String.format( + "Unrecognized response type %s for method PushCredentials, expected %s or %s", + response == null ? "null" : response.getClass().getName(), + Operation.class.getName(), + Exception.class.getName()))); + } + } } diff --git a/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1beta/WorkstationsClientHttpJsonTest.java b/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1beta/WorkstationsClientHttpJsonTest.java index 2c86307f26b3..b443ebb80fe6 100644 --- a/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1beta/WorkstationsClientHttpJsonTest.java +++ b/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1beta/WorkstationsClientHttpJsonTest.java @@ -117,8 +117,15 @@ public void getWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); mockService.addResponse(expectedResponse); @@ -180,8 +187,15 @@ public void getWorkstationClusterTest2() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); mockService.addResponse(expectedResponse); @@ -343,8 +357,15 @@ public void createWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -416,8 +437,15 @@ public void createWorkstationClusterTest2() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -489,8 +517,15 @@ public void updateWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -518,8 +553,15 @@ public void updateWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); FieldMask updateMask = FieldMask.newBuilder().build(); @@ -568,8 +610,15 @@ public void updateWorkstationClusterExceptionTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); FieldMask updateMask = FieldMask.newBuilder().build(); client.updateWorkstationClusterAsync(workstationCluster, updateMask).get(); @@ -598,8 +647,15 @@ public void deleteWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -666,8 +722,15 @@ public void deleteWorkstationClusterTest2() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -733,6 +796,7 @@ public void getWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -743,6 +807,13 @@ public void getWorkstationConfigTest() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); mockService.addResponse(expectedResponse); @@ -805,6 +876,7 @@ public void getWorkstationConfigTest2() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -815,6 +887,13 @@ public void getWorkstationConfigTest2() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); mockService.addResponse(expectedResponse); @@ -1085,6 +1164,7 @@ public void createWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -1095,6 +1175,13 @@ public void createWorkstationConfigTest() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1165,6 +1252,7 @@ public void createWorkstationConfigTest2() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -1175,6 +1263,13 @@ public void createWorkstationConfigTest2() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1245,6 +1340,7 @@ public void updateWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -1255,6 +1351,13 @@ public void updateWorkstationConfigTest() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1281,6 +1384,7 @@ public void updateWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -1291,6 +1395,13 @@ public void updateWorkstationConfigTest() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); FieldMask updateMask = FieldMask.newBuilder().build(); @@ -1341,6 +1452,7 @@ public void updateWorkstationConfigExceptionTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -1351,6 +1463,13 @@ public void updateWorkstationConfigExceptionTest() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); FieldMask updateMask = FieldMask.newBuilder().build(); client.updateWorkstationConfigAsync(workstationConfig, updateMask).get(); @@ -1378,6 +1497,7 @@ public void deleteWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -1388,6 +1508,13 @@ public void deleteWorkstationConfigTest() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1455,6 +1582,7 @@ public void deleteWorkstationConfigTest2() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -1465,6 +1593,13 @@ public void deleteWorkstationConfigTest2() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1533,8 +1668,18 @@ public void getWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); mockService.addResponse(expectedResponse); @@ -1608,8 +1753,18 @@ public void getWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); mockService.addResponse(expectedResponse); @@ -1885,8 +2040,18 @@ public void createWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -1962,8 +2127,18 @@ public void createWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2037,8 +2212,18 @@ public void updateWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2068,8 +2253,18 @@ public void updateWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); FieldMask updateMask = FieldMask.newBuilder().build(); @@ -2119,8 +2314,18 @@ public void updateWorkstationExceptionTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); FieldMask updateMask = FieldMask.newBuilder().build(); client.updateWorkstationAsync(workstation, updateMask).get(); @@ -2151,8 +2356,18 @@ public void deleteWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2231,8 +2446,18 @@ public void deleteWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2301,8 +2526,18 @@ public void startWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2381,8 +2616,18 @@ public void startWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2451,8 +2696,18 @@ public void stopWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2531,8 +2786,18 @@ public void stopWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2683,6 +2948,176 @@ public void generateAccessTokenExceptionTest2() throws Exception { } } + @Test + public void pushCredentialsTest() throws Exception { + Workstation expectedResponse = + Workstation.newBuilder() + .setName( + WorkstationName.of( + "[PROJECT]", + "[LOCATION]", + "[WORKSTATION_CLUSTER]", + "[WORKSTATION_CONFIG]", + "[WORKSTATION]") + .toString()) + .setDisplayName("displayName1714148973") + .setUid("uid115792") + .setReconciling(true) + .putAllAnnotations(new HashMap()) + .putAllLabels(new HashMap()) + .setCreateTime(Timestamp.newBuilder().build()) + .setUpdateTime(Timestamp.newBuilder().build()) + .setStartTime(Timestamp.newBuilder().build()) + .setDeleteTime(Timestamp.newBuilder().build()) + .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) + .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) + .build(); + Operation resultOperation = + Operation.newBuilder() + .setName("pushCredentialsTest") + .setDone(true) + .setResponse(Any.pack(expectedResponse)) + .build(); + mockService.addResponse(resultOperation); + + WorkstationName workstation = + WorkstationName.of( + "[PROJECT]", + "[LOCATION]", + "[WORKSTATION_CLUSTER]", + "[WORKSTATION_CONFIG]", + "[WORKSTATION]"); + + Workstation actualResponse = client.pushCredentialsAsync(workstation).get(); + Assert.assertEquals(expectedResponse, actualResponse); + + List actualRequests = mockService.getRequestPaths(); + Assert.assertEquals(1, actualRequests.size()); + + String apiClientHeaderKey = + mockService + .getRequestHeaders() + .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) + .iterator() + .next(); + Assert.assertTrue( + GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() + .matcher(apiClientHeaderKey) + .matches()); + } + + @Test + public void pushCredentialsExceptionTest() throws Exception { + ApiException exception = + ApiExceptionFactory.createException( + new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); + mockService.addException(exception); + + try { + WorkstationName workstation = + WorkstationName.of( + "[PROJECT]", + "[LOCATION]", + "[WORKSTATION_CLUSTER]", + "[WORKSTATION_CONFIG]", + "[WORKSTATION]"); + client.pushCredentialsAsync(workstation).get(); + Assert.fail("No exception raised"); + } catch (ExecutionException e) { + } + } + + @Test + public void pushCredentialsTest2() throws Exception { + Workstation expectedResponse = + Workstation.newBuilder() + .setName( + WorkstationName.of( + "[PROJECT]", + "[LOCATION]", + "[WORKSTATION_CLUSTER]", + "[WORKSTATION_CONFIG]", + "[WORKSTATION]") + .toString()) + .setDisplayName("displayName1714148973") + .setUid("uid115792") + .setReconciling(true) + .putAllAnnotations(new HashMap()) + .putAllLabels(new HashMap()) + .setCreateTime(Timestamp.newBuilder().build()) + .setUpdateTime(Timestamp.newBuilder().build()) + .setStartTime(Timestamp.newBuilder().build()) + .setDeleteTime(Timestamp.newBuilder().build()) + .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) + .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) + .build(); + Operation resultOperation = + Operation.newBuilder() + .setName("pushCredentialsTest") + .setDone(true) + .setResponse(Any.pack(expectedResponse)) + .build(); + mockService.addResponse(resultOperation); + + String workstation = + "projects/project-2916/locations/location-2916/workstationClusters/workstationCluster-2916/workstationConfigs/workstationConfig-2916/workstations/workstation-2916"; + + Workstation actualResponse = client.pushCredentialsAsync(workstation).get(); + Assert.assertEquals(expectedResponse, actualResponse); + + List actualRequests = mockService.getRequestPaths(); + Assert.assertEquals(1, actualRequests.size()); + + String apiClientHeaderKey = + mockService + .getRequestHeaders() + .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) + .iterator() + .next(); + Assert.assertTrue( + GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() + .matcher(apiClientHeaderKey) + .matches()); + } + + @Test + public void pushCredentialsExceptionTest2() throws Exception { + ApiException exception = + ApiExceptionFactory.createException( + new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); + mockService.addException(exception); + + try { + String workstation = + "projects/project-2916/locations/location-2916/workstationClusters/workstationCluster-2916/workstationConfigs/workstationConfig-2916/workstations/workstation-2916"; + client.pushCredentialsAsync(workstation).get(); + Assert.fail("No exception raised"); + } catch (ExecutionException e) { + } + } + @Test public void setIamPolicyTest() throws Exception { Policy expectedResponse = diff --git a/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1beta/WorkstationsClientTest.java b/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1beta/WorkstationsClientTest.java index 461579de7530..259f8c1265f2 100644 --- a/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1beta/WorkstationsClientTest.java +++ b/java-workstations/google-cloud-workstations/src/test/java/com/google/cloud/workstations/v1beta/WorkstationsClientTest.java @@ -126,8 +126,15 @@ public void getWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); mockWorkstations.addResponse(expectedResponse); @@ -184,8 +191,15 @@ public void getWorkstationClusterTest2() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); mockWorkstations.addResponse(expectedResponse); @@ -330,8 +344,15 @@ public void createWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -403,8 +424,15 @@ public void createWorkstationClusterTest2() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -476,8 +504,15 @@ public void updateWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -544,8 +579,15 @@ public void deleteWorkstationClusterTest() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -610,8 +652,15 @@ public void deleteWorkstationClusterTest2() throws Exception { .setSubnetwork("subnetwork-1302785042") .setControlPlaneIp("controlPlaneIp-1263362938") .setPrivateClusterConfig(WorkstationCluster.PrivateClusterConfig.newBuilder().build()) + .setDomainConfig(WorkstationCluster.DomainConfig.newBuilder().build()) .setDegraded(true) .addAllConditions(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .putAllTags(new HashMap()) + .setGatewayConfig(WorkstationCluster.GatewayConfig.newBuilder().build()) + .setWorkstationAuthorizationUrl("workstationAuthorizationUrl153395545") + .setWorkstationLaunchUrl("workstationLaunchUrl-885627143") .build(); Operation resultOperation = Operation.newBuilder() @@ -673,6 +722,7 @@ public void getWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -683,6 +733,13 @@ public void getWorkstationConfigTest() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); mockWorkstations.addResponse(expectedResponse); @@ -740,6 +797,7 @@ public void getWorkstationConfigTest2() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -750,6 +808,13 @@ public void getWorkstationConfigTest2() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); mockWorkstations.addResponse(expectedResponse); @@ -989,6 +1054,7 @@ public void createWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -999,6 +1065,13 @@ public void createWorkstationConfigTest() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1069,6 +1142,7 @@ public void createWorkstationConfigTest2() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -1079,6 +1153,13 @@ public void createWorkstationConfigTest2() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1147,6 +1228,7 @@ public void updateWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -1157,6 +1239,13 @@ public void updateWorkstationConfigTest() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1222,6 +1311,7 @@ public void deleteWorkstationConfigTest() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -1232,6 +1322,13 @@ public void deleteWorkstationConfigTest() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1297,6 +1394,7 @@ public void deleteWorkstationConfigTest2() throws Exception { .setEtag("etag3123477") .setIdleTimeout(Duration.newBuilder().build()) .setRunningTimeout(Duration.newBuilder().build()) + .setMaxUsableWorkstations(1568144476) .setHost(WorkstationConfig.Host.newBuilder().build()) .addAllPersistentDirectories(new ArrayList()) .addAllEphemeralDirectories(new ArrayList()) @@ -1307,6 +1405,13 @@ public void deleteWorkstationConfigTest2() throws Exception { .setDegraded(true) .addAllConditions(new ArrayList()) .setEnableAuditAgent(true) + .setHttpOptions(WorkstationConfig.HttpOptions.newBuilder().build()) + .setDisableTcpConnections(true) + .addAllAllowedPorts(new ArrayList()) + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setGrantWorkstationAdminRoleOnCreate(true) + .setEnablePushingCredentials(true) .build(); Operation resultOperation = Operation.newBuilder() @@ -1371,8 +1476,18 @@ public void getWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); mockWorkstations.addResponse(expectedResponse); @@ -1440,8 +1555,18 @@ public void getWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); mockWorkstations.addResponse(expectedResponse); @@ -1683,8 +1808,18 @@ public void createWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -1759,8 +1894,18 @@ public void createWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -1831,8 +1976,18 @@ public void updateWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -1899,8 +2054,18 @@ public void deleteWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -1976,8 +2141,18 @@ public void deleteWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2041,8 +2216,18 @@ public void startWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2118,8 +2303,18 @@ public void startWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2183,8 +2378,18 @@ public void stopWorkstationTest() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2260,8 +2465,18 @@ public void stopWorkstationTest2() throws Exception { .setStartTime(Timestamp.newBuilder().build()) .setDeleteTime(Timestamp.newBuilder().build()) .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) .setHost("host3208616") .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) .build(); Operation resultOperation = Operation.newBuilder() @@ -2393,6 +2608,168 @@ public void generateAccessTokenExceptionTest2() throws Exception { } } + @Test + public void pushCredentialsTest() throws Exception { + Workstation expectedResponse = + Workstation.newBuilder() + .setName( + WorkstationName.of( + "[PROJECT]", + "[LOCATION]", + "[WORKSTATION_CLUSTER]", + "[WORKSTATION_CONFIG]", + "[WORKSTATION]") + .toString()) + .setDisplayName("displayName1714148973") + .setUid("uid115792") + .setReconciling(true) + .putAllAnnotations(new HashMap()) + .putAllLabels(new HashMap()) + .setCreateTime(Timestamp.newBuilder().build()) + .setUpdateTime(Timestamp.newBuilder().build()) + .setStartTime(Timestamp.newBuilder().build()) + .setDeleteTime(Timestamp.newBuilder().build()) + .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) + .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) + .build(); + Operation resultOperation = + Operation.newBuilder() + .setName("pushCredentialsTest") + .setDone(true) + .setResponse(Any.pack(expectedResponse)) + .build(); + mockWorkstations.addResponse(resultOperation); + + WorkstationName workstation = + WorkstationName.of( + "[PROJECT]", + "[LOCATION]", + "[WORKSTATION_CLUSTER]", + "[WORKSTATION_CONFIG]", + "[WORKSTATION]"); + + Workstation actualResponse = client.pushCredentialsAsync(workstation).get(); + Assert.assertEquals(expectedResponse, actualResponse); + + List actualRequests = mockWorkstations.getRequests(); + Assert.assertEquals(1, actualRequests.size()); + PushCredentialsRequest actualRequest = ((PushCredentialsRequest) actualRequests.get(0)); + + Assert.assertEquals(workstation.toString(), actualRequest.getWorkstation()); + Assert.assertTrue( + channelProvider.isHeaderSent( + ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), + GaxGrpcProperties.getDefaultApiClientHeaderPattern())); + } + + @Test + public void pushCredentialsExceptionTest() throws Exception { + StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); + mockWorkstations.addException(exception); + + try { + WorkstationName workstation = + WorkstationName.of( + "[PROJECT]", + "[LOCATION]", + "[WORKSTATION_CLUSTER]", + "[WORKSTATION_CONFIG]", + "[WORKSTATION]"); + client.pushCredentialsAsync(workstation).get(); + Assert.fail("No exception raised"); + } catch (ExecutionException e) { + Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); + InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); + Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); + } + } + + @Test + public void pushCredentialsTest2() throws Exception { + Workstation expectedResponse = + Workstation.newBuilder() + .setName( + WorkstationName.of( + "[PROJECT]", + "[LOCATION]", + "[WORKSTATION_CLUSTER]", + "[WORKSTATION_CONFIG]", + "[WORKSTATION]") + .toString()) + .setDisplayName("displayName1714148973") + .setUid("uid115792") + .setReconciling(true) + .putAllAnnotations(new HashMap()) + .putAllLabels(new HashMap()) + .setCreateTime(Timestamp.newBuilder().build()) + .setUpdateTime(Timestamp.newBuilder().build()) + .setStartTime(Timestamp.newBuilder().build()) + .setDeleteTime(Timestamp.newBuilder().build()) + .setEtag("etag3123477") + .addAllPersistentDirectories( + new ArrayList()) + .setHost("host3208616") + .putAllEnv(new HashMap()) + .setKmsKey("kmsKey-1127483058") + .addAllBoostConfigs(new ArrayList()) + .setSourceWorkstation("sourceWorkstation2087650792") + .setSatisfiesPzs(true) + .setSatisfiesPzi(true) + .setRuntimeHost(Workstation.RuntimeHost.newBuilder().build()) + .setDegraded(true) + .addAllConditions(new ArrayList()) + .build(); + Operation resultOperation = + Operation.newBuilder() + .setName("pushCredentialsTest") + .setDone(true) + .setResponse(Any.pack(expectedResponse)) + .build(); + mockWorkstations.addResponse(resultOperation); + + String workstation = "workstation581588227"; + + Workstation actualResponse = client.pushCredentialsAsync(workstation).get(); + Assert.assertEquals(expectedResponse, actualResponse); + + List actualRequests = mockWorkstations.getRequests(); + Assert.assertEquals(1, actualRequests.size()); + PushCredentialsRequest actualRequest = ((PushCredentialsRequest) actualRequests.get(0)); + + Assert.assertEquals(workstation, actualRequest.getWorkstation()); + Assert.assertTrue( + channelProvider.isHeaderSent( + ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), + GaxGrpcProperties.getDefaultApiClientHeaderPattern())); + } + + @Test + public void pushCredentialsExceptionTest2() throws Exception { + StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); + mockWorkstations.addException(exception); + + try { + String workstation = "workstation581588227"; + client.pushCredentialsAsync(workstation).get(); + Assert.fail("No exception raised"); + } catch (ExecutionException e) { + Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); + InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); + Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); + } + } + @Test public void setIamPolicyTest() throws Exception { Policy expectedResponse = diff --git a/java-workstations/grpc-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationsGrpc.java b/java-workstations/grpc-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationsGrpc.java index 548a7c7fc2b3..93b6cd85e45f 100644 --- a/java-workstations/grpc-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationsGrpc.java +++ b/java-workstations/grpc-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationsGrpc.java @@ -1344,6 +1344,8 @@ default void stopWorkstation( *
                  * Returns a short-lived credential that can be used to send authenticated and
                  * authorized traffic to a workstation.
            +     * Once generated this token cannot be revoked and is good for the lifetime
            +     * of the token.
                  * 
            */ default void generateAccessToken( @@ -1711,6 +1713,8 @@ public void stopWorkstation( *
                  * Returns a short-lived credential that can be used to send authenticated and
                  * authorized traffic to a workstation.
            +     * Once generated this token cannot be revoked and is good for the lifetime
            +     * of the token.
                  * 
            */ public void generateAccessToken( @@ -2018,6 +2022,8 @@ public com.google.longrunning.Operation stopWorkstation( *
                  * Returns a short-lived credential that can be used to send authenticated and
                  * authorized traffic to a workstation.
            +     * Once generated this token cannot be revoked and is good for the lifetime
            +     * of the token.
                  * 
            */ public com.google.cloud.workstations.v1.GenerateAccessTokenResponse generateAccessToken( @@ -2303,6 +2309,8 @@ public com.google.longrunning.Operation stopWorkstation( *
                  * Returns a short-lived credential that can be used to send authenticated and
                  * authorized traffic to a workstation.
            +     * Once generated this token cannot be revoked and is good for the lifetime
            +     * of the token.
                  * 
            */ public com.google.cloud.workstations.v1.GenerateAccessTokenResponse generateAccessToken( @@ -2605,6 +2613,8 @@ protected WorkstationsFutureStub build( *
                  * Returns a short-lived credential that can be used to send authenticated and
                  * authorized traffic to a workstation.
            +     * Once generated this token cannot be revoked and is good for the lifetime
            +     * of the token.
                  * 
            */ public com.google.common.util.concurrent.ListenableFuture< diff --git a/java-workstations/grpc-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsGrpc.java b/java-workstations/grpc-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsGrpc.java index 849f5af89255..d35c4a5f9b7c 100644 --- a/java-workstations/grpc-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsGrpc.java +++ b/java-workstations/grpc-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsGrpc.java @@ -1002,6 +1002,52 @@ private WorkstationsGrpc() {} return getGenerateAccessTokenMethod; } + private static volatile io.grpc.MethodDescriptor< + com.google.cloud.workstations.v1beta.PushCredentialsRequest, + com.google.longrunning.Operation> + getPushCredentialsMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "PushCredentials", + requestType = com.google.cloud.workstations.v1beta.PushCredentialsRequest.class, + responseType = com.google.longrunning.Operation.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor< + com.google.cloud.workstations.v1beta.PushCredentialsRequest, + com.google.longrunning.Operation> + getPushCredentialsMethod() { + io.grpc.MethodDescriptor< + com.google.cloud.workstations.v1beta.PushCredentialsRequest, + com.google.longrunning.Operation> + getPushCredentialsMethod; + if ((getPushCredentialsMethod = WorkstationsGrpc.getPushCredentialsMethod) == null) { + synchronized (WorkstationsGrpc.class) { + if ((getPushCredentialsMethod = WorkstationsGrpc.getPushCredentialsMethod) == null) { + WorkstationsGrpc.getPushCredentialsMethod = + getPushCredentialsMethod = + io.grpc.MethodDescriptor + . + newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "PushCredentials")) + .setSampledToLocalTracing(true) + .setRequestMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.cloud.workstations.v1beta.PushCredentialsRequest + .getDefaultInstance())) + .setResponseMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.longrunning.Operation.getDefaultInstance())) + .setSchemaDescriptor( + new WorkstationsMethodDescriptorSupplier("PushCredentials")) + .build(); + } + } + } + return getPushCredentialsMethod; + } + /** Creates a new async stub that supports all call types for the service */ public static WorkstationsStub newStub(io.grpc.Channel channel) { io.grpc.stub.AbstractStub.StubFactory factory = @@ -1351,6 +1397,8 @@ default void stopWorkstation( *
                  * Returns a short-lived credential that can be used to send authenticated and
                  * authorized traffic to a workstation.
            +     * Once generated this token cannot be revoked and is good for the lifetime
            +     * of the token.
                  * 
            */ default void generateAccessToken( @@ -1361,6 +1409,22 @@ default void generateAccessToken( io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getGenerateAccessTokenMethod(), responseObserver); } + + /** + * + * + *
            +     * Pushes credentials to a running workstation on behalf of a user. Once
            +     * complete, supported credential types (application_default_credentials) are
            +     * made available to processes running in the user container.
            +     * 
            + */ + default void pushCredentials( + com.google.cloud.workstations.v1beta.PushCredentialsRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( + getPushCredentialsMethod(), responseObserver); + } } /** @@ -1721,6 +1785,8 @@ public void stopWorkstation( *
                  * Returns a short-lived credential that can be used to send authenticated and
                  * authorized traffic to a workstation.
            +     * Once generated this token cannot be revoked and is good for the lifetime
            +     * of the token.
                  * 
            */ public void generateAccessToken( @@ -1733,6 +1799,24 @@ public void generateAccessToken( request, responseObserver); } + + /** + * + * + *
            +     * Pushes credentials to a running workstation on behalf of a user. Once
            +     * complete, supported credential types (application_default_credentials) are
            +     * made available to processes running in the user container.
            +     * 
            + */ + public void pushCredentials( + com.google.cloud.workstations.v1beta.PushCredentialsRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getPushCredentialsMethod(), getCallOptions()), + request, + responseObserver); + } } /** @@ -2032,6 +2116,8 @@ public com.google.longrunning.Operation stopWorkstation( *
                  * Returns a short-lived credential that can be used to send authenticated and
                  * authorized traffic to a workstation.
            +     * Once generated this token cannot be revoked and is good for the lifetime
            +     * of the token.
                  * 
            */ public com.google.cloud.workstations.v1beta.GenerateAccessTokenResponse generateAccessToken( @@ -2040,6 +2126,22 @@ public com.google.cloud.workstations.v1beta.GenerateAccessTokenResponse generate return io.grpc.stub.ClientCalls.blockingV2UnaryCall( getChannel(), getGenerateAccessTokenMethod(), getCallOptions(), request); } + + /** + * + * + *
            +     * Pushes credentials to a running workstation on behalf of a user. Once
            +     * complete, supported credential types (application_default_credentials) are
            +     * made available to processes running in the user container.
            +     * 
            + */ + public com.google.longrunning.Operation pushCredentials( + com.google.cloud.workstations.v1beta.PushCredentialsRequest request) + throws io.grpc.StatusException { + return io.grpc.stub.ClientCalls.blockingV2UnaryCall( + getChannel(), getPushCredentialsMethod(), getCallOptions(), request); + } } /** @@ -2320,6 +2422,8 @@ public com.google.longrunning.Operation stopWorkstation( *
                  * Returns a short-lived credential that can be used to send authenticated and
                  * authorized traffic to a workstation.
            +     * Once generated this token cannot be revoked and is good for the lifetime
            +     * of the token.
                  * 
            */ public com.google.cloud.workstations.v1beta.GenerateAccessTokenResponse generateAccessToken( @@ -2327,6 +2431,21 @@ public com.google.cloud.workstations.v1beta.GenerateAccessTokenResponse generate return io.grpc.stub.ClientCalls.blockingUnaryCall( getChannel(), getGenerateAccessTokenMethod(), getCallOptions(), request); } + + /** + * + * + *
            +     * Pushes credentials to a running workstation on behalf of a user. Once
            +     * complete, supported credential types (application_default_credentials) are
            +     * made available to processes running in the user container.
            +     * 
            + */ + public com.google.longrunning.Operation pushCredentials( + com.google.cloud.workstations.v1beta.PushCredentialsRequest request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getPushCredentialsMethod(), getCallOptions(), request); + } } /** @@ -2623,6 +2742,8 @@ protected WorkstationsFutureStub build( *
                  * Returns a short-lived credential that can be used to send authenticated and
                  * authorized traffic to a workstation.
            +     * Once generated this token cannot be revoked and is good for the lifetime
            +     * of the token.
                  * 
            */ public com.google.common.util.concurrent.ListenableFuture< @@ -2632,6 +2753,21 @@ protected WorkstationsFutureStub build( return io.grpc.stub.ClientCalls.futureUnaryCall( getChannel().newCall(getGenerateAccessTokenMethod(), getCallOptions()), request); } + + /** + * + * + *
            +     * Pushes credentials to a running workstation on behalf of a user. Once
            +     * complete, supported credential types (application_default_credentials) are
            +     * made available to processes running in the user container.
            +     * 
            + */ + public com.google.common.util.concurrent.ListenableFuture + pushCredentials(com.google.cloud.workstations.v1beta.PushCredentialsRequest request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getPushCredentialsMethod(), getCallOptions()), request); + } } private static final int METHODID_GET_WORKSTATION_CLUSTER = 0; @@ -2654,6 +2790,7 @@ protected WorkstationsFutureStub build( private static final int METHODID_START_WORKSTATION = 17; private static final int METHODID_STOP_WORKSTATION = 18; private static final int METHODID_GENERATE_ACCESS_TOKEN = 19; + private static final int METHODID_PUSH_CREDENTIALS = 20; private static final class MethodHandlers implements io.grpc.stub.ServerCalls.UnaryMethod, @@ -2787,6 +2924,11 @@ public void invoke(Req request, io.grpc.stub.StreamObserver responseObserv com.google.cloud.workstations.v1beta.GenerateAccessTokenResponse>) responseObserver); break; + case METHODID_PUSH_CREDENTIALS: + serviceImpl.pushCredentials( + (com.google.cloud.workstations.v1beta.PushCredentialsRequest) request, + (io.grpc.stub.StreamObserver) responseObserver); + break; default: throw new AssertionError(); } @@ -2937,6 +3079,12 @@ public static final io.grpc.ServerServiceDefinition bindService(AsyncService ser com.google.cloud.workstations.v1beta.GenerateAccessTokenRequest, com.google.cloud.workstations.v1beta.GenerateAccessTokenResponse>( service, METHODID_GENERATE_ACCESS_TOKEN))) + .addMethod( + getPushCredentialsMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + com.google.cloud.workstations.v1beta.PushCredentialsRequest, + com.google.longrunning.Operation>(service, METHODID_PUSH_CREDENTIALS))) .build(); } @@ -3008,6 +3156,7 @@ public static io.grpc.ServiceDescriptor getServiceDescriptor() { .addMethod(getStartWorkstationMethod()) .addMethod(getStopWorkstationMethod()) .addMethod(getGenerateAccessTokenMethod()) + .addMethod(getPushCredentialsMethod()) .build(); } } diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationClusterRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationClusterRequest.java index 1b77ebd8c7ee..386069b60678 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationClusterRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationClusterRequest.java @@ -249,7 +249,7 @@ public com.google.cloud.workstations.v1.WorkstationCluster getWorkstationCluster * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -1126,7 +1126,7 @@ public Builder clearWorkstationCluster() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1143,7 +1143,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1164,7 +1164,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationClusterRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationClusterRequestOrBuilder.java index a82033648047..c051b5330290 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationClusterRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationClusterRequestOrBuilder.java @@ -129,7 +129,7 @@ public interface CreateWorkstationClusterRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationConfigRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationConfigRequest.java index 40b7966d1a48..ba15e3e5a62a 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationConfigRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationConfigRequest.java @@ -189,7 +189,7 @@ public com.google.protobuf.ByteString getWorkstationConfigIdBytes() { * * *
            -   * Required. Config to create.
            +   * Required. Workstation configuration to create.
                * 
            * * @@ -207,7 +207,7 @@ public boolean hasWorkstationConfig() { * * *
            -   * Required. Config to create.
            +   * Required. Workstation configuration to create.
                * 
            * * @@ -227,7 +227,7 @@ public com.google.cloud.workstations.v1.WorkstationConfig getWorkstationConfig() * * *
            -   * Required. Config to create.
            +   * Required. Workstation configuration to create.
                * 
            * * @@ -249,7 +249,7 @@ public com.google.cloud.workstations.v1.WorkstationConfig getWorkstationConfig() * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -913,7 +913,7 @@ public Builder setWorkstationConfigIdBytes(com.google.protobuf.ByteString value) * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -930,7 +930,7 @@ public boolean hasWorkstationConfig() { * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -953,7 +953,7 @@ public com.google.cloud.workstations.v1.WorkstationConfig getWorkstationConfig() * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -978,7 +978,7 @@ public Builder setWorkstationConfig(com.google.cloud.workstations.v1.Workstation * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -1001,7 +1001,7 @@ public Builder setWorkstationConfig( * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -1033,7 +1033,7 @@ public Builder mergeWorkstationConfig( * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -1055,7 +1055,7 @@ public Builder clearWorkstationConfig() { * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -1073,7 +1073,7 @@ public Builder clearWorkstationConfig() { * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -1095,7 +1095,7 @@ public Builder clearWorkstationConfig() { * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -1125,7 +1125,7 @@ public Builder clearWorkstationConfig() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1142,7 +1142,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1163,7 +1163,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationConfigRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationConfigRequestOrBuilder.java index 076229e1310c..1dcccd69dde4 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationConfigRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationConfigRequestOrBuilder.java @@ -86,7 +86,7 @@ public interface CreateWorkstationConfigRequestOrBuilder * * *
            -   * Required. Config to create.
            +   * Required. Workstation configuration to create.
                * 
            * * @@ -101,7 +101,7 @@ public interface CreateWorkstationConfigRequestOrBuilder * * *
            -   * Required. Config to create.
            +   * Required. Workstation configuration to create.
                * 
            * * @@ -116,7 +116,7 @@ public interface CreateWorkstationConfigRequestOrBuilder * * *
            -   * Required. Config to create.
            +   * Required. Workstation configuration to create.
                * 
            * * @@ -129,7 +129,7 @@ public interface CreateWorkstationConfigRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationRequest.java index dbde82dbc947..5bec85ac6b8c 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationRequest.java @@ -189,7 +189,11 @@ public com.google.protobuf.ByteString getWorkstationIdBytes() { * * *
            -   * Required. Workstation to create.
            +   * Required. Workstation to create. If source_workstation is specified, the
            +   * user must have `workstations.workstations.use` permission on the source
            +   * workstation, and the Cloud Workstations Service Agent for the project where
            +   * you are creating the new workstation must have compute.disks.createSnapshot
            +   * and compute.snapshots.useReadOnly on the source project.
                * 
            * * @@ -207,7 +211,11 @@ public boolean hasWorkstation() { * * *
            -   * Required. Workstation to create.
            +   * Required. Workstation to create. If source_workstation is specified, the
            +   * user must have `workstations.workstations.use` permission on the source
            +   * workstation, and the Cloud Workstations Service Agent for the project where
            +   * you are creating the new workstation must have compute.disks.createSnapshot
            +   * and compute.snapshots.useReadOnly on the source project.
                * 
            * * @@ -227,7 +235,11 @@ public com.google.cloud.workstations.v1.Workstation getWorkstation() { * * *
            -   * Required. Workstation to create.
            +   * Required. Workstation to create. If source_workstation is specified, the
            +   * user must have `workstations.workstations.use` permission on the source
            +   * workstation, and the Cloud Workstations Service Agent for the project where
            +   * you are creating the new workstation must have compute.disks.createSnapshot
            +   * and compute.snapshots.useReadOnly on the source project.
                * 
            * * @@ -248,7 +260,7 @@ public com.google.cloud.workstations.v1.WorkstationOrBuilder getWorkstationOrBui * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -906,7 +918,11 @@ public Builder setWorkstationIdBytes(com.google.protobuf.ByteString value) { * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -923,7 +939,11 @@ public boolean hasWorkstation() { * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -946,7 +966,11 @@ public com.google.cloud.workstations.v1.Workstation getWorkstation() { * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -971,7 +995,11 @@ public Builder setWorkstation(com.google.cloud.workstations.v1.Workstation value * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -994,7 +1022,11 @@ public Builder setWorkstation( * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -1024,7 +1056,11 @@ public Builder mergeWorkstation(com.google.cloud.workstations.v1.Workstation val * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -1046,7 +1082,11 @@ public Builder clearWorkstation() { * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -1063,7 +1103,11 @@ public com.google.cloud.workstations.v1.Workstation.Builder getWorkstationBuilde * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -1084,7 +1128,11 @@ public com.google.cloud.workstations.v1.WorkstationOrBuilder getWorkstationOrBui * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -1114,7 +1162,7 @@ public com.google.cloud.workstations.v1.WorkstationOrBuilder getWorkstationOrBui * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1131,7 +1179,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1152,7 +1200,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationRequestOrBuilder.java index 5918204b3356..051559581b15 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/CreateWorkstationRequestOrBuilder.java @@ -86,7 +86,11 @@ public interface CreateWorkstationRequestOrBuilder * * *
            -   * Required. Workstation to create.
            +   * Required. Workstation to create. If source_workstation is specified, the
            +   * user must have `workstations.workstations.use` permission on the source
            +   * workstation, and the Cloud Workstations Service Agent for the project where
            +   * you are creating the new workstation must have compute.disks.createSnapshot
            +   * and compute.snapshots.useReadOnly on the source project.
                * 
            * * @@ -101,7 +105,11 @@ public interface CreateWorkstationRequestOrBuilder * * *
            -   * Required. Workstation to create.
            +   * Required. Workstation to create. If source_workstation is specified, the
            +   * user must have `workstations.workstations.use` permission on the source
            +   * workstation, and the Cloud Workstations Service Agent for the project where
            +   * you are creating the new workstation must have compute.disks.createSnapshot
            +   * and compute.snapshots.useReadOnly on the source project.
                * 
            * * @@ -116,7 +124,11 @@ public interface CreateWorkstationRequestOrBuilder * * *
            -   * Required. Workstation to create.
            +   * Required. Workstation to create. If source_workstation is specified, the
            +   * user must have `workstations.workstations.use` permission on the source
            +   * workstation, and the Cloud Workstations Service Agent for the project where
            +   * you are creating the new workstation must have compute.disks.createSnapshot
            +   * and compute.snapshots.useReadOnly on the source project.
                * 
            * * @@ -129,7 +141,7 @@ public interface CreateWorkstationRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationClusterRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationClusterRequest.java index 7471bbd6a38c..c3d951d3b7e5 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationClusterRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationClusterRequest.java @@ -135,7 +135,7 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * apply it.
                * 
            * @@ -734,7 +734,7 @@ public Builder setNameBytes(com.google.protobuf.ByteString value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * apply it.
                  * 
            * @@ -751,7 +751,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * apply it.
                  * 
            * @@ -772,7 +772,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationClusterRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationClusterRequestOrBuilder.java index 33b79755f086..8c8212d2a080 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationClusterRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationClusterRequestOrBuilder.java @@ -60,7 +60,7 @@ public interface DeleteWorkstationClusterRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationConfigRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationConfigRequest.java index 78cb3da9b977..9cdb0782524c 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationConfigRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationConfigRequest.java @@ -135,7 +135,7 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -734,7 +734,7 @@ public Builder setNameBytes(com.google.protobuf.ByteString value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -751,7 +751,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -772,7 +772,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationConfigRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationConfigRequestOrBuilder.java index b912d51361d3..33fa57bfbe89 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationConfigRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationConfigRequestOrBuilder.java @@ -60,7 +60,7 @@ public interface DeleteWorkstationConfigRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationRequest.java index ed566e36c9ca..663a5cd92a8c 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationRequest.java @@ -135,7 +135,7 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -687,7 +687,7 @@ public Builder setNameBytes(com.google.protobuf.ByteString value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -704,7 +704,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -725,7 +725,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationRequestOrBuilder.java index deff36fff838..c3f30b26181b 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/DeleteWorkstationRequestOrBuilder.java @@ -60,7 +60,7 @@ public interface DeleteWorkstationRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/GenerateAccessTokenRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/GenerateAccessTokenRequest.java index 9858e218d616..cd2c41b42a29 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/GenerateAccessTokenRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/GenerateAccessTokenRequest.java @@ -302,6 +302,29 @@ public com.google.protobuf.ByteString getWorkstationBytes() { } } + public static final int PORT_FIELD_NUMBER = 4; + private int port_ = 0; + + /** + * + * + *
            +   * Optional. Port for which the access token should be generated. If
            +   * specified, the generated access token grants access only to the
            +   * specified port of the workstation. If specified, values must be within the
            +   * range [1 - 65535]. If not specified, the generated access token grants
            +   * access to all ports of the workstation.
            +   * 
            + * + * int32 port = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The port. + */ + @java.lang.Override + public int getPort() { + return port_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -325,6 +348,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (expirationCase_ == 3) { output.writeMessage(3, (com.google.protobuf.Duration) expiration_); } + if (port_ != 0) { + output.writeInt32(4, port_); + } getUnknownFields().writeTo(output); } @@ -347,6 +373,9 @@ public int getSerializedSize() { com.google.protobuf.CodedOutputStream.computeMessageSize( 3, (com.google.protobuf.Duration) expiration_); } + if (port_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(4, port_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -364,6 +393,7 @@ public boolean equals(final java.lang.Object obj) { (com.google.cloud.workstations.v1.GenerateAccessTokenRequest) obj; if (!getWorkstation().equals(other.getWorkstation())) return false; + if (getPort() != other.getPort()) return false; if (!getExpirationCase().equals(other.getExpirationCase())) return false; switch (expirationCase_) { case 2: @@ -388,6 +418,8 @@ public int hashCode() { hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + WORKSTATION_FIELD_NUMBER; hash = (53 * hash) + getWorkstation().hashCode(); + hash = (37 * hash) + PORT_FIELD_NUMBER; + hash = (53 * hash) + getPort(); switch (expirationCase_) { case 2: hash = (37 * hash) + EXPIRE_TIME_FIELD_NUMBER; @@ -548,6 +580,7 @@ public Builder clear() { ttlBuilder_.clear(); } workstation_ = ""; + port_ = 0; expirationCase_ = 0; expiration_ = null; return this; @@ -590,6 +623,9 @@ private void buildPartial0(com.google.cloud.workstations.v1.GenerateAccessTokenR if (((from_bitField0_ & 0x00000004) != 0)) { result.workstation_ = workstation_; } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.port_ = port_; + } } private void buildPartialOneofs( @@ -622,6 +658,9 @@ public Builder mergeFrom(com.google.cloud.workstations.v1.GenerateAccessTokenReq bitField0_ |= 0x00000004; onChanged(); } + if (other.getPort() != 0) { + setPort(other.getPort()); + } switch (other.getExpirationCase()) { case EXPIRE_TIME: { @@ -683,6 +722,12 @@ public Builder mergeFrom( expirationCase_ = 3; break; } // case 26 + case 32: + { + port_ = input.readInt32(); + bitField0_ |= 0x00000008; + break; + } // case 32 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -1315,6 +1360,74 @@ public Builder setWorkstationBytes(com.google.protobuf.ByteString value) { return this; } + private int port_; + + /** + * + * + *
            +     * Optional. Port for which the access token should be generated. If
            +     * specified, the generated access token grants access only to the
            +     * specified port of the workstation. If specified, values must be within the
            +     * range [1 - 65535]. If not specified, the generated access token grants
            +     * access to all ports of the workstation.
            +     * 
            + * + * int32 port = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The port. + */ + @java.lang.Override + public int getPort() { + return port_; + } + + /** + * + * + *
            +     * Optional. Port for which the access token should be generated. If
            +     * specified, the generated access token grants access only to the
            +     * specified port of the workstation. If specified, values must be within the
            +     * range [1 - 65535]. If not specified, the generated access token grants
            +     * access to all ports of the workstation.
            +     * 
            + * + * int32 port = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The port to set. + * @return This builder for chaining. + */ + public Builder setPort(int value) { + + port_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Port for which the access token should be generated. If
            +     * specified, the generated access token grants access only to the
            +     * specified port of the workstation. If specified, values must be within the
            +     * range [1 - 65535]. If not specified, the generated access token grants
            +     * access to all ports of the workstation.
            +     * 
            + * + * int32 port = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearPort() { + bitField0_ = (bitField0_ & ~0x00000008); + port_ = 0; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.GenerateAccessTokenRequest) } diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/GenerateAccessTokenRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/GenerateAccessTokenRequestOrBuilder.java index e4bfe6114d54..571600339900 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/GenerateAccessTokenRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/GenerateAccessTokenRequestOrBuilder.java @@ -147,5 +147,22 @@ public interface GenerateAccessTokenRequestOrBuilder */ com.google.protobuf.ByteString getWorkstationBytes(); + /** + * + * + *
            +   * Optional. Port for which the access token should be generated. If
            +   * specified, the generated access token grants access only to the
            +   * specified port of the workstation. If specified, values must be within the
            +   * range [1 - 65535]. If not specified, the generated access token grants
            +   * access to all ports of the workstation.
            +   * 
            + * + * int32 port = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The port. + */ + int getPort(); + com.google.cloud.workstations.v1.GenerateAccessTokenRequest.ExpirationCase getExpirationCase(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationClustersRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationClustersRequest.java index 4291720c2391..df33ebc3f13f 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationClustersRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationClustersRequest.java @@ -54,6 +54,7 @@ private ListWorkstationClustersRequest(com.google.protobuf.GeneratedMessage.Buil private ListWorkstationClustersRequest() { parent_ = ""; pageToken_ = ""; + filter_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -202,6 +203,61 @@ public com.google.protobuf.ByteString getPageTokenBytes() { } } + public static final int FILTER_FIELD_NUMBER = 4; + + @SuppressWarnings("serial") + private volatile java.lang.Object filter_ = ""; + + /** + * + * + *
            +   * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + @java.lang.Override + public java.lang.String getFilter() { + java.lang.Object ref = filter_; + 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(); + filter_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + @java.lang.Override + public com.google.protobuf.ByteString getFilterBytes() { + java.lang.Object ref = filter_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + filter_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -225,6 +281,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessage.writeString(output, 3, pageToken_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 4, filter_); + } getUnknownFields().writeTo(output); } @@ -243,6 +302,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(3, pageToken_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(4, filter_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -262,6 +324,7 @@ public boolean equals(final java.lang.Object obj) { if (!getParent().equals(other.getParent())) return false; if (getPageSize() != other.getPageSize()) return false; if (!getPageToken().equals(other.getPageToken())) return false; + if (!getFilter().equals(other.getFilter())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -279,6 +342,8 @@ public int hashCode() { hash = (53 * hash) + getPageSize(); hash = (37 * hash) + PAGE_TOKEN_FIELD_NUMBER; hash = (53 * hash) + getPageToken().hashCode(); + hash = (37 * hash) + FILTER_FIELD_NUMBER; + hash = (53 * hash) + getFilter().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -423,6 +488,7 @@ public Builder clear() { parent_ = ""; pageSize_ = 0; pageToken_ = ""; + filter_ = ""; return this; } @@ -470,6 +536,9 @@ private void buildPartial0( if (((from_bitField0_ & 0x00000004) != 0)) { result.pageToken_ = pageToken_; } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.filter_ = filter_; + } } @java.lang.Override @@ -500,6 +569,11 @@ public Builder mergeFrom( bitField0_ |= 0x00000004; onChanged(); } + if (!other.getFilter().isEmpty()) { + filter_ = other.filter_; + bitField0_ |= 0x00000008; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -544,6 +618,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000004; break; } // case 26 + case 34: + { + filter_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 34 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -856,6 +936,122 @@ public Builder setPageTokenBytes(com.google.protobuf.ByteString value) { return this; } + private java.lang.Object filter_ = ""; + + /** + * + * + *
            +     * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + public java.lang.String getFilter() { + java.lang.Object ref = filter_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + filter_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + public com.google.protobuf.ByteString getFilterBytes() { + java.lang.Object ref = filter_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + filter_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The filter to set. + * @return This builder for chaining. + */ + public Builder setFilter(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + filter_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearFilter() { + filter_ = getDefaultInstance().getFilter(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for filter to set. + * @return This builder for chaining. + */ + public Builder setFilterBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + filter_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.ListWorkstationClustersRequest) } diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationClustersRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationClustersRequestOrBuilder.java index 5e7d25c34ce7..10fdc2dca9ac 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationClustersRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationClustersRequestOrBuilder.java @@ -96,4 +96,32 @@ public interface ListWorkstationClustersRequestOrBuilder * @return The bytes for pageToken. */ com.google.protobuf.ByteString getPageTokenBytes(); + + /** + * + * + *
            +   * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + java.lang.String getFilter(); + + /** + * + * + *
            +   * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + com.google.protobuf.ByteString getFilterBytes(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationConfigsRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationConfigsRequest.java index a35bb23e682b..debd867fb81e 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationConfigsRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationConfigsRequest.java @@ -54,6 +54,7 @@ private ListWorkstationConfigsRequest(com.google.protobuf.GeneratedMessage.Build private ListWorkstationConfigsRequest() { parent_ = ""; pageToken_ = ""; + filter_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -202,6 +203,61 @@ public com.google.protobuf.ByteString getPageTokenBytes() { } } + public static final int FILTER_FIELD_NUMBER = 4; + + @SuppressWarnings("serial") + private volatile java.lang.Object filter_ = ""; + + /** + * + * + *
            +   * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + @java.lang.Override + public java.lang.String getFilter() { + java.lang.Object ref = filter_; + 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(); + filter_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + @java.lang.Override + public com.google.protobuf.ByteString getFilterBytes() { + java.lang.Object ref = filter_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + filter_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -225,6 +281,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessage.writeString(output, 3, pageToken_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 4, filter_); + } getUnknownFields().writeTo(output); } @@ -243,6 +302,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(3, pageToken_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(4, filter_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -262,6 +324,7 @@ public boolean equals(final java.lang.Object obj) { if (!getParent().equals(other.getParent())) return false; if (getPageSize() != other.getPageSize()) return false; if (!getPageToken().equals(other.getPageToken())) return false; + if (!getFilter().equals(other.getFilter())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -279,6 +342,8 @@ public int hashCode() { hash = (53 * hash) + getPageSize(); hash = (37 * hash) + PAGE_TOKEN_FIELD_NUMBER; hash = (53 * hash) + getPageToken().hashCode(); + hash = (37 * hash) + FILTER_FIELD_NUMBER; + hash = (53 * hash) + getFilter().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -423,6 +488,7 @@ public Builder clear() { parent_ = ""; pageSize_ = 0; pageToken_ = ""; + filter_ = ""; return this; } @@ -470,6 +536,9 @@ private void buildPartial0( if (((from_bitField0_ & 0x00000004) != 0)) { result.pageToken_ = pageToken_; } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.filter_ = filter_; + } } @java.lang.Override @@ -499,6 +568,11 @@ public Builder mergeFrom(com.google.cloud.workstations.v1.ListWorkstationConfigs bitField0_ |= 0x00000004; onChanged(); } + if (!other.getFilter().isEmpty()) { + filter_ = other.filter_; + bitField0_ |= 0x00000008; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -543,6 +617,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000004; break; } // case 26 + case 34: + { + filter_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 34 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -855,6 +935,122 @@ public Builder setPageTokenBytes(com.google.protobuf.ByteString value) { return this; } + private java.lang.Object filter_ = ""; + + /** + * + * + *
            +     * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + public java.lang.String getFilter() { + java.lang.Object ref = filter_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + filter_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + public com.google.protobuf.ByteString getFilterBytes() { + java.lang.Object ref = filter_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + filter_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The filter to set. + * @return This builder for chaining. + */ + public Builder setFilter(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + filter_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearFilter() { + filter_ = getDefaultInstance().getFilter(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for filter to set. + * @return This builder for chaining. + */ + public Builder setFilterBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + filter_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.ListWorkstationConfigsRequest) } diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationConfigsRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationConfigsRequestOrBuilder.java index 1198cd51b27a..f3107d6ffbc9 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationConfigsRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationConfigsRequestOrBuilder.java @@ -96,4 +96,32 @@ public interface ListWorkstationConfigsRequestOrBuilder * @return The bytes for pageToken. */ com.google.protobuf.ByteString getPageTokenBytes(); + + /** + * + * + *
            +   * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + java.lang.String getFilter(); + + /** + * + * + *
            +   * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + com.google.protobuf.ByteString getFilterBytes(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationsRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationsRequest.java index 37cb9a0d09b2..ae4ecb605143 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationsRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationsRequest.java @@ -54,6 +54,7 @@ private ListWorkstationsRequest(com.google.protobuf.GeneratedMessage.Builder private ListWorkstationsRequest() { parent_ = ""; pageToken_ = ""; + filter_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -202,6 +203,61 @@ public com.google.protobuf.ByteString getPageTokenBytes() { } } + public static final int FILTER_FIELD_NUMBER = 4; + + @SuppressWarnings("serial") + private volatile java.lang.Object filter_ = ""; + + /** + * + * + *
            +   * Optional. Filter the Workstations to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + @java.lang.Override + public java.lang.String getFilter() { + java.lang.Object ref = filter_; + 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(); + filter_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Filter the Workstations to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + @java.lang.Override + public com.google.protobuf.ByteString getFilterBytes() { + java.lang.Object ref = filter_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + filter_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -225,6 +281,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessage.writeString(output, 3, pageToken_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 4, filter_); + } getUnknownFields().writeTo(output); } @@ -243,6 +302,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(3, pageToken_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(4, filter_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -262,6 +324,7 @@ public boolean equals(final java.lang.Object obj) { if (!getParent().equals(other.getParent())) return false; if (getPageSize() != other.getPageSize()) return false; if (!getPageToken().equals(other.getPageToken())) return false; + if (!getFilter().equals(other.getFilter())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -279,6 +342,8 @@ public int hashCode() { hash = (53 * hash) + getPageSize(); hash = (37 * hash) + PAGE_TOKEN_FIELD_NUMBER; hash = (53 * hash) + getPageToken().hashCode(); + hash = (37 * hash) + FILTER_FIELD_NUMBER; + hash = (53 * hash) + getFilter().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -423,6 +488,7 @@ public Builder clear() { parent_ = ""; pageSize_ = 0; pageToken_ = ""; + filter_ = ""; return this; } @@ -468,6 +534,9 @@ private void buildPartial0(com.google.cloud.workstations.v1.ListWorkstationsRequ if (((from_bitField0_ & 0x00000004) != 0)) { result.pageToken_ = pageToken_; } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.filter_ = filter_; + } } @java.lang.Override @@ -496,6 +565,11 @@ public Builder mergeFrom(com.google.cloud.workstations.v1.ListWorkstationsReques bitField0_ |= 0x00000004; onChanged(); } + if (!other.getFilter().isEmpty()) { + filter_ = other.filter_; + bitField0_ |= 0x00000008; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -540,6 +614,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000004; break; } // case 26 + case 34: + { + filter_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 34 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -852,6 +932,122 @@ public Builder setPageTokenBytes(com.google.protobuf.ByteString value) { return this; } + private java.lang.Object filter_ = ""; + + /** + * + * + *
            +     * Optional. Filter the Workstations to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + public java.lang.String getFilter() { + java.lang.Object ref = filter_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + filter_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +     * Optional. Filter the Workstations to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + public com.google.protobuf.ByteString getFilterBytes() { + java.lang.Object ref = filter_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + filter_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Optional. Filter the Workstations to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The filter to set. + * @return This builder for chaining. + */ + public Builder setFilter(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + filter_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Filter the Workstations to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearFilter() { + filter_ = getDefaultInstance().getFilter(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Filter the Workstations to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for filter to set. + * @return This builder for chaining. + */ + public Builder setFilterBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + filter_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.ListWorkstationsRequest) } diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationsRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationsRequestOrBuilder.java index bc8af0b73d44..a58a85675be7 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationsRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/ListWorkstationsRequestOrBuilder.java @@ -96,4 +96,32 @@ public interface ListWorkstationsRequestOrBuilder * @return The bytes for pageToken. */ com.google.protobuf.ByteString getPageTokenBytes(); + + /** + * + * + *
            +   * Optional. Filter the Workstations to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + java.lang.String getFilter(); + + /** + * + * + *
            +   * Optional. Filter the Workstations to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + com.google.protobuf.ByteString getFilterBytes(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StartWorkstationRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StartWorkstationRequest.java index 59cee5a2fed1..aa60e9a8d594 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StartWorkstationRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StartWorkstationRequest.java @@ -54,6 +54,7 @@ private StartWorkstationRequest(com.google.protobuf.GeneratedMessage.Builder private StartWorkstationRequest() { name_ = ""; etag_ = ""; + boostConfig_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -135,7 +136,7 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -203,6 +204,61 @@ public com.google.protobuf.ByteString getEtagBytes() { } } + public static final int BOOST_CONFIG_FIELD_NUMBER = 4; + + @SuppressWarnings("serial") + private volatile java.lang.Object boostConfig_ = ""; + + /** + * + * + *
            +   * Optional. If set, the workstation starts using the boost configuration with
            +   * the specified ID.
            +   * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The boostConfig. + */ + @java.lang.Override + public java.lang.String getBoostConfig() { + java.lang.Object ref = boostConfig_; + 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(); + boostConfig_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. If set, the workstation starts using the boost configuration with
            +   * the specified ID.
            +   * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for boostConfig. + */ + @java.lang.Override + public com.google.protobuf.ByteString getBoostConfigBytes() { + java.lang.Object ref = boostConfig_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + boostConfig_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -226,6 +282,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { com.google.protobuf.GeneratedMessage.writeString(output, 3, etag_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(boostConfig_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 4, boostConfig_); + } getUnknownFields().writeTo(output); } @@ -244,6 +303,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(3, etag_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(boostConfig_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(4, boostConfig_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -263,6 +325,7 @@ public boolean equals(final java.lang.Object obj) { if (!getName().equals(other.getName())) return false; if (getValidateOnly() != other.getValidateOnly()) return false; if (!getEtag().equals(other.getEtag())) return false; + if (!getBoostConfig().equals(other.getBoostConfig())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -280,6 +343,8 @@ public int hashCode() { hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getValidateOnly()); hash = (37 * hash) + ETAG_FIELD_NUMBER; hash = (53 * hash) + getEtag().hashCode(); + hash = (37 * hash) + BOOST_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getBoostConfig().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -424,6 +489,7 @@ public Builder clear() { name_ = ""; validateOnly_ = false; etag_ = ""; + boostConfig_ = ""; return this; } @@ -469,6 +535,9 @@ private void buildPartial0(com.google.cloud.workstations.v1.StartWorkstationRequ if (((from_bitField0_ & 0x00000004) != 0)) { result.etag_ = etag_; } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.boostConfig_ = boostConfig_; + } } @java.lang.Override @@ -497,6 +566,11 @@ public Builder mergeFrom(com.google.cloud.workstations.v1.StartWorkstationReques bitField0_ |= 0x00000004; onChanged(); } + if (!other.getBoostConfig().isEmpty()) { + boostConfig_ = other.boostConfig_; + bitField0_ |= 0x00000008; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -541,6 +615,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000004; break; } // case 26 + case 34: + { + boostConfig_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 34 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -687,7 +767,7 @@ public Builder setNameBytes(com.google.protobuf.ByteString value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -704,7 +784,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -725,7 +805,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -856,6 +936,122 @@ public Builder setEtagBytes(com.google.protobuf.ByteString value) { return this; } + private java.lang.Object boostConfig_ = ""; + + /** + * + * + *
            +     * Optional. If set, the workstation starts using the boost configuration with
            +     * the specified ID.
            +     * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The boostConfig. + */ + public java.lang.String getBoostConfig() { + java.lang.Object ref = boostConfig_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + boostConfig_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +     * Optional. If set, the workstation starts using the boost configuration with
            +     * the specified ID.
            +     * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for boostConfig. + */ + public com.google.protobuf.ByteString getBoostConfigBytes() { + java.lang.Object ref = boostConfig_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + boostConfig_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Optional. If set, the workstation starts using the boost configuration with
            +     * the specified ID.
            +     * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The boostConfig to set. + * @return This builder for chaining. + */ + public Builder setBoostConfig(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + boostConfig_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. If set, the workstation starts using the boost configuration with
            +     * the specified ID.
            +     * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearBoostConfig() { + boostConfig_ = getDefaultInstance().getBoostConfig(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. If set, the workstation starts using the boost configuration with
            +     * the specified ID.
            +     * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for boostConfig to set. + * @return This builder for chaining. + */ + public Builder setBoostConfigBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + boostConfig_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.StartWorkstationRequest) } diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StartWorkstationRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StartWorkstationRequestOrBuilder.java index 22e50bf029aa..7427b56251de 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StartWorkstationRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StartWorkstationRequestOrBuilder.java @@ -60,7 +60,7 @@ public interface StartWorkstationRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -97,4 +97,32 @@ public interface StartWorkstationRequestOrBuilder * @return The bytes for etag. */ com.google.protobuf.ByteString getEtagBytes(); + + /** + * + * + *
            +   * Optional. If set, the workstation starts using the boost configuration with
            +   * the specified ID.
            +   * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The boostConfig. + */ + java.lang.String getBoostConfig(); + + /** + * + * + *
            +   * Optional. If set, the workstation starts using the boost configuration with
            +   * the specified ID.
            +   * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for boostConfig. + */ + com.google.protobuf.ByteString getBoostConfigBytes(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StopWorkstationRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StopWorkstationRequest.java index 942b0d21ce21..75eb8eb873f6 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StopWorkstationRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StopWorkstationRequest.java @@ -135,7 +135,7 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -687,7 +687,7 @@ public Builder setNameBytes(com.google.protobuf.ByteString value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -704,7 +704,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -725,7 +725,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StopWorkstationRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StopWorkstationRequestOrBuilder.java index c3dae1c9ade9..2c82644f00e1 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StopWorkstationRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/StopWorkstationRequestOrBuilder.java @@ -60,7 +60,7 @@ public interface StopWorkstationRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationClusterRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationClusterRequest.java index a890fd687fe3..b62cd8cd3c82 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationClusterRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationClusterRequest.java @@ -191,7 +191,7 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -1077,7 +1077,7 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1094,7 +1094,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1115,7 +1115,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationClusterRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationClusterRequestOrBuilder.java index 19cfeef14ad5..fd68c68d25f0 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationClusterRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationClusterRequestOrBuilder.java @@ -116,7 +116,7 @@ public interface UpdateWorkstationClusterRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationConfigRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationConfigRequest.java index 7bb8567d43c9..8953a5fdcbe4 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationConfigRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationConfigRequest.java @@ -76,7 +76,7 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
            -   * Required. Config to update.
            +   * Required. Workstation configuration to update.
                * 
            * * @@ -94,7 +94,7 @@ public boolean hasWorkstationConfig() { * * *
            -   * Required. Config to update.
            +   * Required. Workstation configuration to update.
                * 
            * * @@ -114,7 +114,7 @@ public com.google.cloud.workstations.v1.WorkstationConfig getWorkstationConfig() * * *
            -   * Required. Config to update.
            +   * Required. Workstation configuration to update.
                * 
            * * @@ -191,7 +191,7 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -652,7 +652,7 @@ public Builder mergeFrom( * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -669,7 +669,7 @@ public boolean hasWorkstationConfig() { * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -692,7 +692,7 @@ public com.google.cloud.workstations.v1.WorkstationConfig getWorkstationConfig() * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -717,7 +717,7 @@ public Builder setWorkstationConfig(com.google.cloud.workstations.v1.Workstation * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -740,7 +740,7 @@ public Builder setWorkstationConfig( * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -772,7 +772,7 @@ public Builder mergeWorkstationConfig( * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -794,7 +794,7 @@ public Builder clearWorkstationConfig() { * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -812,7 +812,7 @@ public Builder clearWorkstationConfig() { * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -834,7 +834,7 @@ public Builder clearWorkstationConfig() { * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -1076,7 +1076,7 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1093,7 +1093,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1114,7 +1114,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationConfigRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationConfigRequestOrBuilder.java index c11adabcf47e..c95649d51c96 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationConfigRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationConfigRequestOrBuilder.java @@ -30,7 +30,7 @@ public interface UpdateWorkstationConfigRequestOrBuilder * * *
            -   * Required. Config to update.
            +   * Required. Workstation configuration to update.
                * 
            * * @@ -45,7 +45,7 @@ public interface UpdateWorkstationConfigRequestOrBuilder * * *
            -   * Required. Config to update.
            +   * Required. Workstation configuration to update.
                * 
            * * @@ -60,7 +60,7 @@ public interface UpdateWorkstationConfigRequestOrBuilder * * *
            -   * Required. Config to update.
            +   * Required. Workstation configuration to update.
                * 
            * * @@ -116,7 +116,7 @@ public interface UpdateWorkstationConfigRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationRequest.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationRequest.java index ee74aeafd344..ba12f95834ac 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationRequest.java @@ -135,8 +135,8 @@ public com.google.cloud.workstations.v1.WorkstationOrBuilder getWorkstationOrBui * * *
            -   * Required. Mask specifying which fields in the workstation configuration
            -   * should be updated.
            +   * Required. Mask specifying which fields in the workstation should be
            +   * updated.
                * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -153,8 +153,8 @@ public boolean hasUpdateMask() { * * *
            -   * Required. Mask specifying which fields in the workstation configuration
            -   * should be updated.
            +   * Required. Mask specifying which fields in the workstation should be
            +   * updated.
                * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -171,8 +171,8 @@ public com.google.protobuf.FieldMask getUpdateMask() { * * *
            -   * Required. Mask specifying which fields in the workstation configuration
            -   * should be updated.
            +   * Required. Mask specifying which fields in the workstation should be
            +   * updated.
                * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -190,7 +190,7 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -210,9 +210,8 @@ public boolean getValidateOnly() { * * *
            -   * Optional. If set and the workstation configuration is not found, a new
            -   * workstation configuration is created. In this situation, update_mask
            -   * is ignored.
            +   * Optional. If set and the workstation is not found, a new workstation is
            +   * created. In this situation, update_mask is ignored.
                * 
            * * bool allow_missing = 4 [(.google.api.field_behavior) = OPTIONAL]; @@ -858,8 +857,8 @@ public com.google.cloud.workstations.v1.WorkstationOrBuilder getWorkstationOrBui * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -875,8 +874,8 @@ public boolean hasUpdateMask() { * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -898,8 +897,8 @@ public com.google.protobuf.FieldMask getUpdateMask() { * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -923,8 +922,8 @@ public Builder setUpdateMask(com.google.protobuf.FieldMask value) { * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -945,8 +944,8 @@ public Builder setUpdateMask(com.google.protobuf.FieldMask.Builder builderForVal * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -975,8 +974,8 @@ public Builder mergeUpdateMask(com.google.protobuf.FieldMask value) { * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -997,8 +996,8 @@ public Builder clearUpdateMask() { * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -1014,8 +1013,8 @@ public com.google.protobuf.FieldMask.Builder getUpdateMaskBuilder() { * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -1035,8 +1034,8 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -1065,7 +1064,7 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1082,7 +1081,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1103,7 +1102,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1124,9 +1123,8 @@ public Builder clearValidateOnly() { * * *
            -     * Optional. If set and the workstation configuration is not found, a new
            -     * workstation configuration is created. In this situation, update_mask
            -     * is ignored.
            +     * Optional. If set and the workstation is not found, a new workstation is
            +     * created. In this situation, update_mask is ignored.
                  * 
            * * bool allow_missing = 4 [(.google.api.field_behavior) = OPTIONAL]; @@ -1142,9 +1140,8 @@ public boolean getAllowMissing() { * * *
            -     * Optional. If set and the workstation configuration is not found, a new
            -     * workstation configuration is created. In this situation, update_mask
            -     * is ignored.
            +     * Optional. If set and the workstation is not found, a new workstation is
            +     * created. In this situation, update_mask is ignored.
                  * 
            * * bool allow_missing = 4 [(.google.api.field_behavior) = OPTIONAL]; @@ -1164,9 +1161,8 @@ public Builder setAllowMissing(boolean value) { * * *
            -     * Optional. If set and the workstation configuration is not found, a new
            -     * workstation configuration is created. In this situation, update_mask
            -     * is ignored.
            +     * Optional. If set and the workstation is not found, a new workstation is
            +     * created. In this situation, update_mask is ignored.
                  * 
            * * bool allow_missing = 4 [(.google.api.field_behavior) = OPTIONAL]; diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationRequestOrBuilder.java index b91a4723b13b..eb8bbc625dbb 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/UpdateWorkstationRequestOrBuilder.java @@ -73,8 +73,8 @@ public interface UpdateWorkstationRequestOrBuilder * * *
            -   * Required. Mask specifying which fields in the workstation configuration
            -   * should be updated.
            +   * Required. Mask specifying which fields in the workstation should be
            +   * updated.
                * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -88,8 +88,8 @@ public interface UpdateWorkstationRequestOrBuilder * * *
            -   * Required. Mask specifying which fields in the workstation configuration
            -   * should be updated.
            +   * Required. Mask specifying which fields in the workstation should be
            +   * updated.
                * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -103,8 +103,8 @@ public interface UpdateWorkstationRequestOrBuilder * * *
            -   * Required. Mask specifying which fields in the workstation configuration
            -   * should be updated.
            +   * Required. Mask specifying which fields in the workstation should be
            +   * updated.
                * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -116,7 +116,7 @@ public interface UpdateWorkstationRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -130,9 +130,8 @@ public interface UpdateWorkstationRequestOrBuilder * * *
            -   * Optional. If set and the workstation configuration is not found, a new
            -   * workstation configuration is created. In this situation, update_mask
            -   * is ignored.
            +   * Optional. If set and the workstation is not found, a new workstation is
            +   * created. In this situation, update_mask is ignored.
                * 
            * * bool allow_missing = 4 [(.google.api.field_behavior) = OPTIONAL]; diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/Workstation.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/Workstation.java index 36b0329f479b..0cb1d283481e 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/Workstation.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/Workstation.java @@ -56,8 +56,11 @@ private Workstation() { displayName_ = ""; uid_ = ""; etag_ = ""; + persistentDirectories_ = java.util.Collections.emptyList(); state_ = 0; host_ = ""; + kmsKey_ = ""; + sourceWorkstation_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -74,6 +77,8 @@ protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldRefl return internalGetAnnotations(); case 13: return internalGetLabels(); + case 12: + return internalGetEnv(); default: throw new RuntimeException("Invalid map field number: " + number); } @@ -308,1375 +313,4661 @@ private State(int value) { // @@protoc_insertion_point(enum_scope:google.cloud.workstations.v1.Workstation.State) } - private int bitField0_; - public static final int NAME_FIELD_NUMBER = 1; + public interface WorkstationPersistentDirectoryOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory) + com.google.protobuf.MessageOrBuilder { - @SuppressWarnings("serial") - private volatile java.lang.Object name_ = ""; + /** + * + * + *
            +     * Optional. The mount path of the persistent directory.
            +     * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The mountPath. + */ + java.lang.String getMountPath(); - /** - * - * - *
            -   * Full name of this workstation.
            -   * 
            - * - * string name = 1; - * - * @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; - } + /** + * + * + *
            +     * Optional. The mount path of the persistent directory.
            +     * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for mountPath. + */ + com.google.protobuf.ByteString getMountPathBytes(); + + /** + * + * + *
            +     * Optional. Size of the persistent directory in GB. If specified in an
            +     * update request, this is the desired size of the directory.
            +     * 
            + * + * int32 size_gb = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sizeGb. + */ + int getSizeGb(); } /** * * *
            -   * Full name of this workstation.
            +   * A directory to persist across workstation sessions. Updates to this field
            +   * will only take effect on this workstation after it is restarted.
                * 
            * - * string name = 1; - * - * @return The bytes for name. + * Protobuf type {@code google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory} */ - @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 class WorkstationPersistentDirectory + extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory) + WorkstationPersistentDirectoryOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "WorkstationPersistentDirectory"); } - } - public static final int DISPLAY_NAME_FIELD_NUMBER = 2; + // Use WorkstationPersistentDirectory.newBuilder() to construct. + private WorkstationPersistentDirectory( + com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } - @SuppressWarnings("serial") - private volatile java.lang.Object displayName_ = ""; + private WorkstationPersistentDirectory() { + mountPath_ = ""; + } - /** - * - * - *
            -   * Optional. Human-readable name for this workstation.
            -   * 
            - * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The displayName. - */ - @java.lang.Override - public java.lang.String getDisplayName() { - java.lang.Object ref = displayName_; - 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(); - displayName_ = s; - return s; + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_WorkstationPersistentDirectory_descriptor; } - } - /** - * - * - *
            -   * Optional. Human-readable name for this workstation.
            -   * 
            - * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for displayName. - */ - @java.lang.Override - public com.google.protobuf.ByteString getDisplayNameBytes() { - java.lang.Object ref = displayName_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - displayName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_WorkstationPersistentDirectory_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.class, + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.Builder + .class); } - } - public static final int UID_FIELD_NUMBER = 3; + public static final int MOUNT_PATH_FIELD_NUMBER = 2; - @SuppressWarnings("serial") - private volatile java.lang.Object uid_ = ""; + @SuppressWarnings("serial") + private volatile java.lang.Object mountPath_ = ""; - /** - * - * - *
            -   * Output only. A system-assigned unique identifier for this workstation.
            -   * 
            - * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The uid. - */ - @java.lang.Override - public java.lang.String getUid() { - java.lang.Object ref = uid_; - 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(); - uid_ = s; - return s; + /** + * + * + *
            +     * Optional. The mount path of the persistent directory.
            +     * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The mountPath. + */ + @java.lang.Override + public java.lang.String getMountPath() { + java.lang.Object ref = mountPath_; + 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(); + mountPath_ = s; + return s; + } } - } - /** - * - * - *
            -   * Output only. A system-assigned unique identifier for this workstation.
            -   * 
            - * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for uid. - */ - @java.lang.Override - public com.google.protobuf.ByteString getUidBytes() { - java.lang.Object ref = uid_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - uid_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
            +     * Optional. The mount path of the persistent directory.
            +     * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for mountPath. + */ + @java.lang.Override + public com.google.protobuf.ByteString getMountPathBytes() { + java.lang.Object ref = mountPath_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + mountPath_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - } - public static final int RECONCILING_FIELD_NUMBER = 4; - private boolean reconciling_ = false; + public static final int SIZE_GB_FIELD_NUMBER = 3; + private int sizeGb_ = 0; - /** - * - * - *
            -   * Output only. Indicates whether this workstation is currently being updated
            -   * to match its intended state.
            -   * 
            - * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The reconciling. - */ - @java.lang.Override - public boolean getReconciling() { - return reconciling_; - } + /** + * + * + *
            +     * Optional. Size of the persistent directory in GB. If specified in an
            +     * update request, this is the desired size of the directory.
            +     * 
            + * + * int32 size_gb = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sizeGb. + */ + @java.lang.Override + public int getSizeGb() { + return sizeGb_; + } - public static final int ANNOTATIONS_FIELD_NUMBER = 5; + private byte memoizedIsInitialized = -1; - private static final class AnnotationsDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_Workstation_AnnotationsEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - @SuppressWarnings("serial") - private com.google.protobuf.MapField annotations_; + memoizedIsInitialized = 1; + return true; + } - private com.google.protobuf.MapField - internalGetAnnotations() { - if (annotations_ == null) { - return com.google.protobuf.MapField.emptyMapField(AnnotationsDefaultEntryHolder.defaultEntry); + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mountPath_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, mountPath_); + } + if (sizeGb_ != 0) { + output.writeInt32(3, sizeGb_); + } + getUnknownFields().writeTo(output); } - return annotations_; - } - public int getAnnotationsCount() { - return internalGetAnnotations().getMap().size(); - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public boolean containsAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mountPath_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, mountPath_); + } + if (sizeGb_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(3, sizeGb_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - return internalGetAnnotations().getMap().containsKey(key); - } - /** Use {@link #getAnnotationsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getAnnotations() { - return getAnnotationsMap(); - } + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory other = + (com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory) obj; - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.Map getAnnotationsMap() { - return internalGetAnnotations().getMap(); - } + if (!getMountPath().equals(other.getMountPath())) return false; + if (getSizeGb() != other.getSizeGb()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public /* nullable */ java.lang.String getAnnotationsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + MOUNT_PATH_FIELD_NUMBER; + hash = (53 * hash) + getMountPath().hashCode(); + hash = (37 * hash) + SIZE_GB_FIELD_NUMBER; + hash = (53 * hash) + getSizeGb(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - java.util.Map map = internalGetAnnotations().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.lang.String getAnnotationsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - java.util.Map map = internalGetAnnotations().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + + public static com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - return map.get(key); - } - public static final int LABELS_FIELD_NUMBER = 13; + public static com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - private static final class LabelsDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_Workstation_LabelsEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + public static com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - @SuppressWarnings("serial") - private com.google.protobuf.MapField labels_; + public static com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - private com.google.protobuf.MapField internalGetLabels() { - if (labels_ == null) { - return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); + public static com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - return labels_; - } - public int getLabelsCount() { - return internalGetLabels().getMap().size(); - } + public static com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public boolean containsLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); } - return internalGetLabels().getMap().containsKey(key); - } - /** Use {@link #getLabelsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getLabels() { - return getLabelsMap(); - } + public static com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.util.Map getLabelsMap() { - return internalGetLabels().getMap(); - } + public static com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public /* nullable */ java.lang.String getLabelsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + 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.util.Map map = internalGetLabels().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.lang.String getLabelsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); } - java.util.Map map = internalGetLabels().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); } - return map.get(key); - } - public static final int CREATE_TIME_FIELD_NUMBER = 6; - private com.google.protobuf.Timestamp createTime_; + public static Builder newBuilder( + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - /** - * - * - *
            -   * Output only. Time when this workstation was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the createTime field is set. - */ - @java.lang.Override - public boolean hasCreateTime() { - return ((bitField0_ & 0x00000001) != 0); - } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } - /** - * - * - *
            -   * Output only. Time when this workstation was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The createTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getCreateTime() { - return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; - } + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } - /** - * - * - *
            -   * Output only. Time when this workstation was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { - return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; - } + /** + * + * + *
            +     * A directory to persist across workstation sessions. Updates to this field
            +     * will only take effect on this workstation after it is restarted.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory) + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectoryOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_WorkstationPersistentDirectory_descriptor; + } - public static final int UPDATE_TIME_FIELD_NUMBER = 7; - private com.google.protobuf.Timestamp updateTime_; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_WorkstationPersistentDirectory_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.class, + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.Builder + .class); + } - /** - * - * - *
            -   * Output only. Time when this workstation was most recently updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the updateTime field is set. - */ - @java.lang.Override - public boolean hasUpdateTime() { - return ((bitField0_ & 0x00000002) != 0); - } + // Construct using + // com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.newBuilder() + private Builder() {} - /** - * - * - *
            -   * Output only. Time when this workstation was most recently updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The updateTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getUpdateTime() { - return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; - } + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } - /** - * - * - *
            -   * Output only. Time when this workstation was most recently updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { - return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; - } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + mountPath_ = ""; + sizeGb_ = 0; + return this; + } - public static final int START_TIME_FIELD_NUMBER = 14; - private com.google.protobuf.Timestamp startTime_; + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_WorkstationPersistentDirectory_descriptor; + } - /** - * - * - *
            -   * Output only. Time when this workstation was most recently successfully
            -   * started, regardless of the workstation's initial state.
            -   * 
            - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the startTime field is set. - */ - @java.lang.Override - public boolean hasStartTime() { - return ((bitField0_ & 0x00000004) != 0); - } + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + .getDefaultInstance(); + } - /** - * - * - *
            -   * Output only. Time when this workstation was most recently successfully
            -   * started, regardless of the workstation's initial state.
            -   * 
            - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The startTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getStartTime() { - return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; - } + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory build() { + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - /** - * - * - *
            -   * Output only. Time when this workstation was most recently successfully
            -   * started, regardless of the workstation's initial state.
            -   * 
            - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getStartTimeOrBuilder() { - return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + buildPartial() { + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory result = + new com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.mountPath_ = mountPath_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.sizeGb_ = sizeGb_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory) { + return mergeFrom( + (com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory other) { + if (other + == com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + .getDefaultInstance()) return this; + if (!other.getMountPath().isEmpty()) { + mountPath_ = other.mountPath_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.getSizeGb() != 0) { + setSizeGb(other.getSizeGb()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 18: + { + mountPath_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 18 + case 24: + { + sizeGb_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 24 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object mountPath_ = ""; + + /** + * + * + *
            +       * Optional. The mount path of the persistent directory.
            +       * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The mountPath. + */ + public java.lang.String getMountPath() { + java.lang.Object ref = mountPath_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + mountPath_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Optional. The mount path of the persistent directory.
            +       * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for mountPath. + */ + public com.google.protobuf.ByteString getMountPathBytes() { + java.lang.Object ref = mountPath_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + mountPath_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Optional. The mount path of the persistent directory.
            +       * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The mountPath to set. + * @return This builder for chaining. + */ + public Builder setMountPath(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + mountPath_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. The mount path of the persistent directory.
            +       * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearMountPath() { + mountPath_ = getDefaultInstance().getMountPath(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. The mount path of the persistent directory.
            +       * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for mountPath to set. + * @return This builder for chaining. + */ + public Builder setMountPathBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + mountPath_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private int sizeGb_; + + /** + * + * + *
            +       * Optional. Size of the persistent directory in GB. If specified in an
            +       * update request, this is the desired size of the directory.
            +       * 
            + * + * int32 size_gb = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sizeGb. + */ + @java.lang.Override + public int getSizeGb() { + return sizeGb_; + } + + /** + * + * + *
            +       * Optional. Size of the persistent directory in GB. If specified in an
            +       * update request, this is the desired size of the directory.
            +       * 
            + * + * int32 size_gb = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sizeGb to set. + * @return This builder for chaining. + */ + public Builder setSizeGb(int value) { + + sizeGb_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Size of the persistent directory in GB. If specified in an
            +       * update request, this is the desired size of the directory.
            +       * 
            + * + * int32 size_gb = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSizeGb() { + bitField0_ = (bitField0_ & ~0x00000002); + sizeGb_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory) + private static final com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory(); + } + + public static com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public WorkstationPersistentDirectory parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } } - public static final int DELETE_TIME_FIELD_NUMBER = 8; - private com.google.protobuf.Timestamp deleteTime_; + public interface RuntimeHostOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.Workstation.RuntimeHost) + com.google.protobuf.MessageOrBuilder { - /** - * - * - *
            -   * Output only. Time when this workstation was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the deleteTime field is set. - */ - @java.lang.Override - public boolean hasDeleteTime() { - return ((bitField0_ & 0x00000008) != 0); + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + * + * @return Whether the gceInstanceHost field is set. + */ + boolean hasGceInstanceHost(); + + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + * + * @return The gceInstanceHost. + */ + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost getGceInstanceHost(); + + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHostOrBuilder + getGceInstanceHostOrBuilder(); + + com.google.cloud.workstations.v1.Workstation.RuntimeHost.HostTypeCase getHostTypeCase(); } /** * * *
            -   * Output only. Time when this workstation was soft-deleted.
            +   * Runtime host for the workstation.
                * 
            * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The deleteTime. + * Protobuf type {@code google.cloud.workstations.v1.Workstation.RuntimeHost} */ - @java.lang.Override - public com.google.protobuf.Timestamp getDeleteTime() { - return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; - } + public static final class RuntimeHost extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.Workstation.RuntimeHost) + RuntimeHostOrBuilder { + private static final long serialVersionUID = 0L; - /** - * - * - *
            -   * Output only. Time when this workstation was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { - return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; - } + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "RuntimeHost"); + } - public static final int ETAG_FIELD_NUMBER = 9; + // Use RuntimeHost.newBuilder() to construct. + private RuntimeHost(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } - @SuppressWarnings("serial") - private volatile java.lang.Object etag_ = ""; + private RuntimeHost() {} - /** - * - * - *
            -   * Optional. Checksum computed by the server. May be sent on update and delete
            -   * requests to make sure that the client has an up-to-date value before
            -   * proceeding.
            -   * 
            - * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The etag. - */ - @java.lang.Override - public java.lang.String getEtag() { - java.lang.Object ref = etag_; - 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(); - etag_ = s; - return s; + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_descriptor; } - } - /** - * - * - *
            -   * Optional. Checksum computed by the server. May be sent on update and delete
            -   * requests to make sure that the client has an up-to-date value before
            -   * proceeding.
            -   * 
            - * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for etag. - */ - @java.lang.Override - public com.google.protobuf.ByteString getEtagBytes() { - java.lang.Object ref = etag_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - etag_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.Workstation.RuntimeHost.class, + com.google.cloud.workstations.v1.Workstation.RuntimeHost.Builder.class); + } + + public interface GceInstanceHostOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +       * Optional. Output only. The name of the Compute Engine instance.
            +       * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The name. + */ + java.lang.String getName(); + + /** + * + * + *
            +       * Optional. Output only. The name of the Compute Engine instance.
            +       * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for name. + */ + com.google.protobuf.ByteString getNameBytes(); + + /** + * + * + *
            +       * Optional. Output only. The ID of the Compute Engine instance.
            +       * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The id. + */ + java.lang.String getId(); + + /** + * + * + *
            +       * Optional. Output only. The ID of the Compute Engine instance.
            +       * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for id. + */ + com.google.protobuf.ByteString getIdBytes(); + + /** + * + * + *
            +       * Optional. Output only. The zone of the Compute Engine instance.
            +       * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The zone. + */ + java.lang.String getZone(); + + /** + * + * + *
            +       * Optional. Output only. The zone of the Compute Engine instance.
            +       * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for zone. + */ + com.google.protobuf.ByteString getZoneBytes(); } - } - public static final int STATE_FIELD_NUMBER = 10; - private int state_ = 0; + /** + * + * + *
            +     * The Compute Engine instance host.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost} + */ + public static final class GceInstanceHost extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) + GceInstanceHostOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "GceInstanceHost"); + } - /** - * - * - *
            -   * Output only. Current state of the workstation.
            -   * 
            - * - * - * .google.cloud.workstations.v1.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The enum numeric value on the wire for state. - */ - @java.lang.Override - public int getStateValue() { - return state_; - } + // Use GceInstanceHost.newBuilder() to construct. + private GceInstanceHost(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } - /** - * - * - *
            -   * Output only. Current state of the workstation.
            -   * 
            - * - * - * .google.cloud.workstations.v1.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The state. - */ - @java.lang.Override - public com.google.cloud.workstations.v1.Workstation.State getState() { - com.google.cloud.workstations.v1.Workstation.State result = - com.google.cloud.workstations.v1.Workstation.State.forNumber(state_); - return result == null - ? com.google.cloud.workstations.v1.Workstation.State.UNRECOGNIZED - : result; - } + private GceInstanceHost() { + name_ = ""; + id_ = ""; + zone_ = ""; + } - public static final int HOST_FIELD_NUMBER = 11; + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_GceInstanceHost_descriptor; + } - @SuppressWarnings("serial") - private volatile java.lang.Object host_ = ""; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_GceInstanceHost_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost.class, + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost.Builder + .class); + } - /** - * - * - *
            -   * Output only. Host to which clients can send HTTPS traffic that will be
            -   * received by the workstation. Authorized traffic will be received to the
            -   * workstation as HTTP on port 80. To send traffic to a different port,
            -   * clients may prefix the host with the destination port in the format
            -   * `{port}-{host}`.
            -   * 
            - * - * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The host. - */ - @java.lang.Override - public java.lang.String getHost() { - java.lang.Object ref = host_; - 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(); - host_ = s; - return s; - } - } + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + + /** + * + * + *
            +       * Optional. Output only. The name of the Compute Engine instance.
            +       * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @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; + } + } - /** - * - * - *
            -   * Output only. Host to which clients can send HTTPS traffic that will be
            -   * received by the workstation. Authorized traffic will be received to the
            -   * workstation as HTTP on port 80. To send traffic to a different port,
            -   * clients may prefix the host with the destination port in the format
            -   * `{port}-{host}`.
            -   * 
            - * - * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for host. - */ - @java.lang.Override - public com.google.protobuf.ByteString getHostBytes() { - java.lang.Object ref = host_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - host_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + /** + * + * + *
            +       * Optional. Output only. The name of the Compute Engine instance.
            +       * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @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; + public static final int ID_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object id_ = ""; + + /** + * + * + *
            +       * Optional. Output only. The ID of the Compute Engine instance.
            +       * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The id. + */ + @java.lang.Override + public java.lang.String getId() { + java.lang.Object ref = id_; + 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(); + id_ = s; + return s; + } + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + /** + * + * + *
            +       * Optional. Output only. The ID of the Compute Engine instance.
            +       * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for id. + */ + @java.lang.Override + public com.google.protobuf.ByteString getIdBytes() { + java.lang.Object ref = id_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + id_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - memoizedIsInitialized = 1; - return true; - } + public static final int ZONE_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object zone_ = ""; + + /** + * + * + *
            +       * Optional. Output only. The zone of the Compute Engine instance.
            +       * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The zone. + */ + @java.lang.Override + public java.lang.String getZone() { + java.lang.Object ref = zone_; + 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(); + zone_ = s; + return s; + } + } - @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(displayName_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, displayName_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 3, uid_); - } - if (reconciling_ != false) { - output.writeBool(4, reconciling_); - } - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetAnnotations(), AnnotationsDefaultEntryHolder.defaultEntry, 5); - if (((bitField0_ & 0x00000001) != 0)) { - output.writeMessage(6, getCreateTime()); - } - if (((bitField0_ & 0x00000002) != 0)) { - output.writeMessage(7, getUpdateTime()); - } - if (((bitField0_ & 0x00000008) != 0)) { - output.writeMessage(8, getDeleteTime()); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 9, etag_); - } - if (state_ - != com.google.cloud.workstations.v1.Workstation.State.STATE_UNSPECIFIED.getNumber()) { - output.writeEnum(10, state_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(host_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 11, host_); - } - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 13); - if (((bitField0_ & 0x00000004) != 0)) { - output.writeMessage(14, getStartTime()); - } - getUnknownFields().writeTo(output); - } + /** + * + * + *
            +       * Optional. Output only. The zone of the Compute Engine instance.
            +       * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for zone. + */ + @java.lang.Override + public com.google.protobuf.ByteString getZoneBytes() { + java.lang.Object ref = zone_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + zone_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + private byte memoizedIsInitialized = -1; - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(2, displayName_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(3, uid_); - } - if (reconciling_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, reconciling_); - } - for (java.util.Map.Entry entry : - internalGetAnnotations().getMap().entrySet()) { - com.google.protobuf.MapEntry annotations__ = - AnnotationsDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, annotations__); - } - if (((bitField0_ & 0x00000001) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getCreateTime()); - } - if (((bitField0_ & 0x00000002) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getUpdateTime()); - } - if (((bitField0_ & 0x00000008) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getDeleteTime()); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(9, etag_); - } - if (state_ - != com.google.cloud.workstations.v1.Workstation.State.STATE_UNSPECIFIED.getNumber()) { - size += com.google.protobuf.CodedOutputStream.computeEnumSize(10, state_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(host_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(11, host_); - } - for (java.util.Map.Entry entry : - internalGetLabels().getMap().entrySet()) { - com.google.protobuf.MapEntry labels__ = - LabelsDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(13, labels__); - } - if (((bitField0_ & 0x00000004) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, getStartTime()); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof com.google.cloud.workstations.v1.Workstation)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1.Workstation other = - (com.google.cloud.workstations.v1.Workstation) obj; + memoizedIsInitialized = 1; + return true; + } - if (!getName().equals(other.getName())) return false; - if (!getDisplayName().equals(other.getDisplayName())) return false; - if (!getUid().equals(other.getUid())) return false; - if (getReconciling() != other.getReconciling()) return false; - if (!internalGetAnnotations().equals(other.internalGetAnnotations())) return false; - if (!internalGetLabels().equals(other.internalGetLabels())) return false; - if (hasCreateTime() != other.hasCreateTime()) return false; - if (hasCreateTime()) { - if (!getCreateTime().equals(other.getCreateTime())) return false; - } - if (hasUpdateTime() != other.hasUpdateTime()) return false; - if (hasUpdateTime()) { - if (!getUpdateTime().equals(other.getUpdateTime())) return false; - } - if (hasStartTime() != other.hasStartTime()) return false; - if (hasStartTime()) { - if (!getStartTime().equals(other.getStartTime())) return false; - } - if (hasDeleteTime() != other.hasDeleteTime()) return false; - if (hasDeleteTime()) { - if (!getDeleteTime().equals(other.getDeleteTime())) return false; - } - if (!getEtag().equals(other.getEtag())) return false; - if (state_ != other.state_) return false; - if (!getHost().equals(other.getHost())) return false; - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - 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(id_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, id_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(zone_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, zone_); + } + getUnknownFields().writeTo(output); + } - @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) + DISPLAY_NAME_FIELD_NUMBER; - hash = (53 * hash) + getDisplayName().hashCode(); - hash = (37 * hash) + UID_FIELD_NUMBER; - hash = (53 * hash) + getUid().hashCode(); - hash = (37 * hash) + RECONCILING_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReconciling()); - if (!internalGetAnnotations().getMap().isEmpty()) { - hash = (37 * hash) + ANNOTATIONS_FIELD_NUMBER; - hash = (53 * hash) + internalGetAnnotations().hashCode(); - } - if (!internalGetLabels().getMap().isEmpty()) { - hash = (37 * hash) + LABELS_FIELD_NUMBER; - hash = (53 * hash) + internalGetLabels().hashCode(); - } - if (hasCreateTime()) { - hash = (37 * hash) + CREATE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getCreateTime().hashCode(); - } - if (hasUpdateTime()) { - hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getUpdateTime().hashCode(); - } - if (hasStartTime()) { - hash = (37 * hash) + START_TIME_FIELD_NUMBER; - hash = (53 * hash) + getStartTime().hashCode(); - } - if (hasDeleteTime()) { - hash = (37 * hash) + DELETE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getDeleteTime().hashCode(); - } - hash = (37 * hash) + ETAG_FIELD_NUMBER; - hash = (53 * hash) + getEtag().hashCode(); - hash = (37 * hash) + STATE_FIELD_NUMBER; - hash = (53 * hash) + state_; - hash = (37 * hash) + HOST_FIELD_NUMBER; - hash = (53 * hash) + getHost().hashCode(); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - public static com.google.cloud.workstations.v1.Workstation parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(id_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, id_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(zone_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, zone_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - public static com.google.cloud.workstations.v1.Workstation parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost other = + (com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) obj; + + if (!getName().equals(other.getName())) return false; + if (!getId().equals(other.getId())) return false; + if (!getZone().equals(other.getZone())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - public static com.google.cloud.workstations.v1.Workstation parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @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) + ID_FIELD_NUMBER; + hash = (53 * hash) + getId().hashCode(); + hash = (37 * hash) + ZONE_FIELD_NUMBER; + hash = (53 * hash) + getZone().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - public static com.google.cloud.workstations.v1.Workstation 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.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - public static com.google.cloud.workstations.v1.Workstation parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - public static com.google.cloud.workstations.v1.Workstation parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - public static com.google.cloud.workstations.v1.Workstation parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + 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.cloud.workstations.v1.Workstation 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.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - public static com.google.cloud.workstations.v1.Workstation parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - public static com.google.cloud.workstations.v1.Workstation 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.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - public static com.google.cloud.workstations.v1.Workstation parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + 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.cloud.workstations.v1.Workstation parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + 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 Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - public static Builder newBuilder(com.google.cloud.workstations.v1.Workstation prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + 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 toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } - @java.lang.Override - protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } - /** - * - * - *
            -   * A single instance of a developer workstation with its own persistent storage.
            -   * 
            - * - * Protobuf type {@code google.cloud.workstations.v1.Workstation} - */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.Workstation) - com.google.cloud.workstations.v1.WorkstationOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_Workstation_descriptor; - } + public static Builder newBuilder( + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( - int number) { - switch (number) { - case 5: - return internalGetAnnotations(); - case 13: - return internalGetLabels(); - default: - throw new RuntimeException("Invalid map field number: " + number); + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } - } - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( - int number) { - switch (number) { - case 5: - return internalGetMutableAnnotations(); - case 13: - return internalGetMutableLabels(); - default: - throw new RuntimeException("Invalid map field number: " + number); + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; } - } - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_Workstation_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.Workstation.class, - com.google.cloud.workstations.v1.Workstation.Builder.class); - } + /** + * + * + *
            +       * The Compute Engine instance host.
            +       * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHostOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_GceInstanceHost_descriptor; + } - // Construct using com.google.cloud.workstations.v1.Workstation.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_GceInstanceHost_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost.class, + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost.Builder + .class); + } - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); - } + // Construct using + // com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost.newBuilder() + private Builder() {} - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { - internalGetCreateTimeFieldBuilder(); - internalGetUpdateTimeFieldBuilder(); - internalGetStartTimeFieldBuilder(); - internalGetDeleteTimeFieldBuilder(); + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + id_ = ""; + zone_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_GceInstanceHost_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost build() { + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + buildPartial() { + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost result = + new com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.id_ = id_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.zone_ = zone_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) { + return mergeFrom( + (com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost other) { + if (other + == com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance()) return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getId().isEmpty()) { + id_ = other.id_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getZone().isEmpty()) { + zone_ = other.zone_; + bitField0_ |= 0x00000004; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + name_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + id_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + zone_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object name_ = ""; + + /** + * + * + *
            +         * Optional. Output only. The name of the Compute Engine instance.
            +         * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @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; + } + } + + /** + * + * + *
            +         * Optional. Output only. The name of the Compute Engine instance.
            +         * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @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; + } + } + + /** + * + * + *
            +         * Optional. Output only. The name of the Compute Engine instance.
            +         * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @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; + } + + /** + * + * + *
            +         * Optional. Output only. The name of the Compute Engine instance.
            +         * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return This builder for chaining. + */ + public Builder clearName() { + name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Output only. The name of the Compute Engine instance.
            +         * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @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 id_ = ""; + + /** + * + * + *
            +         * Optional. Output only. The ID of the Compute Engine instance.
            +         * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The id. + */ + public java.lang.String getId() { + java.lang.Object ref = id_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + id_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +         * Optional. Output only. The ID of the Compute Engine instance.
            +         * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for id. + */ + public com.google.protobuf.ByteString getIdBytes() { + java.lang.Object ref = id_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + id_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +         * Optional. Output only. The ID of the Compute Engine instance.
            +         * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The id to set. + * @return This builder for chaining. + */ + public Builder setId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + id_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Output only. The ID of the Compute Engine instance.
            +         * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return This builder for chaining. + */ + public Builder clearId() { + id_ = getDefaultInstance().getId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Output only. The ID of the Compute Engine instance.
            +         * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The bytes for id to set. + * @return This builder for chaining. + */ + public Builder setIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + id_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object zone_ = ""; + + /** + * + * + *
            +         * Optional. Output only. The zone of the Compute Engine instance.
            +         * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The zone. + */ + public java.lang.String getZone() { + java.lang.Object ref = zone_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + zone_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +         * Optional. Output only. The zone of the Compute Engine instance.
            +         * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for zone. + */ + public com.google.protobuf.ByteString getZoneBytes() { + java.lang.Object ref = zone_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + zone_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +         * Optional. Output only. The zone of the Compute Engine instance.
            +         * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The zone to set. + * @return This builder for chaining. + */ + public Builder setZone(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + zone_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Output only. The zone of the Compute Engine instance.
            +         * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return This builder for chaining. + */ + public Builder clearZone() { + zone_ = getDefaultInstance().getZone(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Output only. The zone of the Compute Engine instance.
            +         * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The bytes for zone to set. + * @return This builder for chaining. + */ + public Builder setZoneBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + zone_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) } - } - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - name_ = ""; - displayName_ = ""; - uid_ = ""; - reconciling_ = false; - internalGetMutableAnnotations().clear(); - internalGetMutableLabels().clear(); - createTime_ = null; - if (createTimeBuilder_ != null) { - createTimeBuilder_.dispose(); - createTimeBuilder_ = null; + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) + private static final com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost(); } - updateTime_ = null; - if (updateTimeBuilder_ != null) { - updateTimeBuilder_.dispose(); - updateTimeBuilder_ = null; + + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + getDefaultInstance() { + return DEFAULT_INSTANCE; } - startTime_ = null; - if (startTimeBuilder_ != null) { - startTimeBuilder_.dispose(); - startTimeBuilder_ = null; + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GceInstanceHost parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; } - deleteTime_ = null; - if (deleteTimeBuilder_ != null) { - deleteTimeBuilder_.dispose(); - deleteTimeBuilder_ = null; + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } - etag_ = ""; - state_ = 0; - host_ = ""; - return this; } - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_Workstation_descriptor; + private int hostTypeCase_ = 0; + + @SuppressWarnings("serial") + private java.lang.Object hostType_; + + public enum HostTypeCase + implements + com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + GCE_INSTANCE_HOST(1), + HOSTTYPE_NOT_SET(0); + private final int value; + + private HostTypeCase(int value) { + this.value = value; + } + + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static HostTypeCase valueOf(int value) { + return forNumber(value); + } + + public static HostTypeCase forNumber(int value) { + switch (value) { + case 1: + return GCE_INSTANCE_HOST; + case 0: + return HOSTTYPE_NOT_SET; + default: + return null; + } + } + + public int getNumber() { + return this.value; + } + }; + + public HostTypeCase getHostTypeCase() { + return HostTypeCase.forNumber(hostTypeCase_); } + public static final int GCE_INSTANCE_HOST_FIELD_NUMBER = 1; + + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + * + * @return Whether the gceInstanceHost field is set. + */ @java.lang.Override - public com.google.cloud.workstations.v1.Workstation getDefaultInstanceForType() { - return com.google.cloud.workstations.v1.Workstation.getDefaultInstance(); + public boolean hasGceInstanceHost() { + return hostTypeCase_ == 1; } + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + * + * @return The gceInstanceHost. + */ @java.lang.Override - public com.google.cloud.workstations.v1.Workstation build() { - com.google.cloud.workstations.v1.Workstation result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + public com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + getGceInstanceHost() { + if (hostTypeCase_ == 1) { + return (com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) hostType_; } - return result; + return com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance(); } + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ @java.lang.Override - public com.google.cloud.workstations.v1.Workstation buildPartial() { - com.google.cloud.workstations.v1.Workstation result = - new com.google.cloud.workstations.v1.Workstation(this); - if (bitField0_ != 0) { - buildPartial0(result); + public com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHostOrBuilder + getGceInstanceHostOrBuilder() { + if (hostTypeCase_ == 1) { + return (com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) hostType_; } - onBuilt(); - return result; + return com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance(); } - private void buildPartial0(com.google.cloud.workstations.v1.Workstation result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.name_ = name_; + 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 (hostTypeCase_ == 1) { + output.writeMessage( + 1, + (com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) hostType_); } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.displayName_ = displayName_; + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (hostTypeCase_ == 1) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 1, + (com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) + hostType_); } - if (((from_bitField0_ & 0x00000004) != 0)) { - result.uid_ = uid_; + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; } - if (((from_bitField0_ & 0x00000008) != 0)) { - result.reconciling_ = reconciling_; + if (!(obj instanceof com.google.cloud.workstations.v1.Workstation.RuntimeHost)) { + return super.equals(obj); } - if (((from_bitField0_ & 0x00000010) != 0)) { - result.annotations_ = internalGetAnnotations(); - result.annotations_.makeImmutable(); + com.google.cloud.workstations.v1.Workstation.RuntimeHost other = + (com.google.cloud.workstations.v1.Workstation.RuntimeHost) obj; + + if (!getHostTypeCase().equals(other.getHostTypeCase())) return false; + switch (hostTypeCase_) { + case 1: + if (!getGceInstanceHost().equals(other.getGceInstanceHost())) return false; + break; + case 0: + default: } - if (((from_bitField0_ & 0x00000020) != 0)) { - result.labels_ = internalGetLabels(); - result.labels_.makeImmutable(); + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; } - int to_bitField0_ = 0; - if (((from_bitField0_ & 0x00000040) != 0)) { - result.createTime_ = createTimeBuilder_ == null ? createTime_ : createTimeBuilder_.build(); - to_bitField0_ |= 0x00000001; + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + switch (hostTypeCase_) { + case 1: + hash = (37 * hash) + GCE_INSTANCE_HOST_FIELD_NUMBER; + hash = (53 * hash) + getGceInstanceHost().hashCode(); + break; + case 0: + default: } - if (((from_bitField0_ & 0x00000080) != 0)) { - result.updateTime_ = updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build(); - to_bitField0_ |= 0x00000002; + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost 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.cloud.workstations.v1.Workstation.RuntimeHost parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost 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.cloud.workstations.v1.Workstation.RuntimeHost parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost 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.cloud.workstations.v1.Workstation.RuntimeHost parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost 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.cloud.workstations.v1.Workstation.RuntimeHost 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; + } + + /** + * + * + *
            +     * Runtime host for the workstation.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.Workstation.RuntimeHost} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.Workstation.RuntimeHost) + com.google.cloud.workstations.v1.Workstation.RuntimeHostOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_descriptor; } - if (((from_bitField0_ & 0x00000100) != 0)) { - result.startTime_ = startTimeBuilder_ == null ? startTime_ : startTimeBuilder_.build(); - to_bitField0_ |= 0x00000004; + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.Workstation.RuntimeHost.class, + com.google.cloud.workstations.v1.Workstation.RuntimeHost.Builder.class); } - if (((from_bitField0_ & 0x00000200) != 0)) { - result.deleteTime_ = deleteTimeBuilder_ == null ? deleteTime_ : deleteTimeBuilder_.build(); - to_bitField0_ |= 0x00000008; + + // Construct using com.google.cloud.workstations.v1.Workstation.RuntimeHost.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); } - if (((from_bitField0_ & 0x00000400) != 0)) { - result.etag_ = etag_; + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (gceInstanceHostBuilder_ != null) { + gceInstanceHostBuilder_.clear(); + } + hostTypeCase_ = 0; + hostType_ = null; + return this; } - if (((from_bitField0_ & 0x00000800) != 0)) { - result.state_ = state_; + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_descriptor; } - if (((from_bitField0_ & 0x00001000) != 0)) { - result.host_ = host_; + + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.RuntimeHost getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.Workstation.RuntimeHost.getDefaultInstance(); } - result.bitField0_ |= to_bitField0_; - } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.cloud.workstations.v1.Workstation) { - return mergeFrom((com.google.cloud.workstations.v1.Workstation) other); - } else { - super.mergeFrom(other); - return this; + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.RuntimeHost build() { + com.google.cloud.workstations.v1.Workstation.RuntimeHost result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; } - } - public Builder mergeFrom(com.google.cloud.workstations.v1.Workstation other) { - if (other == com.google.cloud.workstations.v1.Workstation.getDefaultInstance()) return this; - if (!other.getName().isEmpty()) { - name_ = other.name_; - bitField0_ |= 0x00000001; - onChanged(); + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.RuntimeHost buildPartial() { + com.google.cloud.workstations.v1.Workstation.RuntimeHost result = + new com.google.cloud.workstations.v1.Workstation.RuntimeHost(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + buildPartialOneofs(result); + onBuilt(); + return result; } - if (!other.getDisplayName().isEmpty()) { - displayName_ = other.displayName_; - bitField0_ |= 0x00000002; + + private void buildPartial0(com.google.cloud.workstations.v1.Workstation.RuntimeHost result) { + int from_bitField0_ = bitField0_; + } + + private void buildPartialOneofs( + com.google.cloud.workstations.v1.Workstation.RuntimeHost result) { + result.hostTypeCase_ = hostTypeCase_; + result.hostType_ = this.hostType_; + if (hostTypeCase_ == 1 && gceInstanceHostBuilder_ != null) { + result.hostType_ = gceInstanceHostBuilder_.build(); + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1.Workstation.RuntimeHost) { + return mergeFrom((com.google.cloud.workstations.v1.Workstation.RuntimeHost) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.workstations.v1.Workstation.RuntimeHost other) { + if (other == com.google.cloud.workstations.v1.Workstation.RuntimeHost.getDefaultInstance()) + return this; + switch (other.getHostTypeCase()) { + case GCE_INSTANCE_HOST: + { + mergeGceInstanceHost(other.getGceInstanceHost()); + break; + } + case HOSTTYPE_NOT_SET: + { + break; + } + } + this.mergeUnknownFields(other.getUnknownFields()); onChanged(); + return this; } - if (!other.getUid().isEmpty()) { - uid_ = other.uid_; - bitField0_ |= 0x00000004; + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + input.readMessage( + internalGetGceInstanceHostFieldBuilder().getBuilder(), extensionRegistry); + hostTypeCase_ = 1; + break; + } // case 10 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int hostTypeCase_ = 0; + private java.lang.Object hostType_; + + public HostTypeCase getHostTypeCase() { + return HostTypeCase.forNumber(hostTypeCase_); + } + + public Builder clearHostType() { + hostTypeCase_ = 0; + hostType_ = null; onChanged(); + return this; } - if (other.getReconciling() != false) { - setReconciling(other.getReconciling()); + + private int bitField0_; + + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost, + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost.Builder, + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHostOrBuilder> + gceInstanceHostBuilder_; + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + * + * @return Whether the gceInstanceHost field is set. + */ + @java.lang.Override + public boolean hasGceInstanceHost() { + return hostTypeCase_ == 1; } - internalGetMutableAnnotations().mergeFrom(other.internalGetAnnotations()); - bitField0_ |= 0x00000010; - internalGetMutableLabels().mergeFrom(other.internalGetLabels()); - bitField0_ |= 0x00000020; - if (other.hasCreateTime()) { - mergeCreateTime(other.getCreateTime()); + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + * + * @return The gceInstanceHost. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + getGceInstanceHost() { + if (gceInstanceHostBuilder_ == null) { + if (hostTypeCase_ == 1) { + return (com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) + hostType_; + } + return com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance(); + } else { + if (hostTypeCase_ == 1) { + return gceInstanceHostBuilder_.getMessage(); + } + return com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance(); + } } - if (other.hasUpdateTime()) { - mergeUpdateTime(other.getUpdateTime()); + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + public Builder setGceInstanceHost( + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost value) { + if (gceInstanceHostBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + hostType_ = value; + onChanged(); + } else { + gceInstanceHostBuilder_.setMessage(value); + } + hostTypeCase_ = 1; + return this; } - if (other.hasStartTime()) { - mergeStartTime(other.getStartTime()); + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + public Builder setGceInstanceHost( + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost.Builder + builderForValue) { + if (gceInstanceHostBuilder_ == null) { + hostType_ = builderForValue.build(); + onChanged(); + } else { + gceInstanceHostBuilder_.setMessage(builderForValue.build()); + } + hostTypeCase_ = 1; + return this; } - if (other.hasDeleteTime()) { - mergeDeleteTime(other.getDeleteTime()); + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + public Builder mergeGceInstanceHost( + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost value) { + if (gceInstanceHostBuilder_ == null) { + if (hostTypeCase_ == 1 + && hostType_ + != com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance()) { + hostType_ = + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost.newBuilder( + (com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) + hostType_) + .mergeFrom(value) + .buildPartial(); + } else { + hostType_ = value; + } + onChanged(); + } else { + if (hostTypeCase_ == 1) { + gceInstanceHostBuilder_.mergeFrom(value); + } else { + gceInstanceHostBuilder_.setMessage(value); + } + } + hostTypeCase_ = 1; + return this; } - if (!other.getEtag().isEmpty()) { - etag_ = other.etag_; - bitField0_ |= 0x00000400; - onChanged(); + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + public Builder clearGceInstanceHost() { + if (gceInstanceHostBuilder_ == null) { + if (hostTypeCase_ == 1) { + hostTypeCase_ = 0; + hostType_ = null; + onChanged(); + } + } else { + if (hostTypeCase_ == 1) { + hostTypeCase_ = 0; + hostType_ = null; + } + gceInstanceHostBuilder_.clear(); + } + return this; } - if (other.state_ != 0) { - setStateValue(other.getStateValue()); + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + public com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost.Builder + getGceInstanceHostBuilder() { + return internalGetGceInstanceHostFieldBuilder().getBuilder(); } - if (!other.getHost().isEmpty()) { - host_ = other.host_; - bitField0_ |= 0x00001000; + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHostOrBuilder + getGceInstanceHostOrBuilder() { + if ((hostTypeCase_ == 1) && (gceInstanceHostBuilder_ != null)) { + return gceInstanceHostBuilder_.getMessageOrBuilder(); + } else { + if (hostTypeCase_ == 1) { + return (com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) + hostType_; + } + return com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance(); + } + } + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost, + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost.Builder, + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHostOrBuilder> + internalGetGceInstanceHostFieldBuilder() { + if (gceInstanceHostBuilder_ == null) { + if (!(hostTypeCase_ == 1)) { + hostType_ = + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance(); + } + gceInstanceHostBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost, + com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost.Builder, + com.google.cloud.workstations.v1.Workstation.RuntimeHost + .GceInstanceHostOrBuilder>( + (com.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHost) + hostType_, + getParentForChildren(), + isClean()); + hostType_ = null; + } + hostTypeCase_ = 1; onChanged(); + return gceInstanceHostBuilder_; } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.Workstation.RuntimeHost) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.Workstation.RuntimeHost) + private static final com.google.cloud.workstations.v1.Workstation.RuntimeHost DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1.Workstation.RuntimeHost(); + } + + public static com.google.cloud.workstations.v1.Workstation.RuntimeHost getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public RuntimeHost parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; } @java.lang.Override - public final boolean isInitialized() { - return true; + public com.google.protobuf.Parser getParserForType() { + return PARSER; } @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - name_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; + public com.google.cloud.workstations.v1.Workstation.RuntimeHost getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + private int bitField0_; + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + + /** + * + * + *
            +   * Identifier. Full name of this workstation.
            +   * 
            + * + * 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. Full name of this workstation.
            +   * 
            + * + * 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 DISPLAY_NAME_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object displayName_ = ""; + + /** + * + * + *
            +   * Optional. Human-readable name for this workstation.
            +   * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The displayName. + */ + @java.lang.Override + public java.lang.String getDisplayName() { + java.lang.Object ref = displayName_; + 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(); + displayName_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Human-readable name for this workstation.
            +   * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for displayName. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDisplayNameBytes() { + java.lang.Object ref = displayName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + displayName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int UID_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object uid_ = ""; + + /** + * + * + *
            +   * Output only. A system-assigned unique identifier for this workstation.
            +   * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The uid. + */ + @java.lang.Override + public java.lang.String getUid() { + java.lang.Object ref = uid_; + 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(); + uid_ = s; + return s; + } + } + + /** + * + * + *
            +   * Output only. A system-assigned unique identifier for this workstation.
            +   * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The bytes for uid. + */ + @java.lang.Override + public com.google.protobuf.ByteString getUidBytes() { + java.lang.Object ref = uid_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int RECONCILING_FIELD_NUMBER = 4; + private boolean reconciling_ = false; + + /** + * + * + *
            +   * Output only. Indicates whether this workstation is currently being updated
            +   * to match its intended state.
            +   * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The reconciling. + */ + @java.lang.Override + public boolean getReconciling() { + return reconciling_; + } + + public static final int ANNOTATIONS_FIELD_NUMBER = 5; + + private static final class AnnotationsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_AnnotationsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField annotations_; + + private com.google.protobuf.MapField + internalGetAnnotations() { + if (annotations_ == null) { + return com.google.protobuf.MapField.emptyMapField(AnnotationsDefaultEntryHolder.defaultEntry); + } + return annotations_; + } + + public int getAnnotationsCount() { + return internalGetAnnotations().getMap().size(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetAnnotations().getMap().containsKey(key); + } + + /** Use {@link #getAnnotationsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getAnnotations() { + return getAnnotationsMap(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getAnnotationsMap() { + return internalGetAnnotations().getMap(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getAnnotationsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getAnnotationsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int LABELS_FIELD_NUMBER = 13; + + private static final class LabelsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_LabelsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField labels_; + + private com.google.protobuf.MapField internalGetLabels() { + if (labels_ == null) { + return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); + } + return labels_; + } + + public int getLabelsCount() { + return internalGetLabels().getMap().size(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetLabels().getMap().containsKey(key); + } + + /** Use {@link #getLabelsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getLabels() { + return getLabelsMap(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getLabelsMap() { + return internalGetLabels().getMap(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getLabelsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getLabelsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int CREATE_TIME_FIELD_NUMBER = 6; + private com.google.protobuf.Timestamp createTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the createTime field is set. + */ + @java.lang.Override + public boolean hasCreateTime() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The createTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getCreateTime() { + return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { + return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; + } + + public static final int UPDATE_TIME_FIELD_NUMBER = 7; + private com.google.protobuf.Timestamp updateTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation was most recently updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the updateTime field is set. + */ + @java.lang.Override + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation was most recently updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The updateTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getUpdateTime() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation was most recently updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + public static final int START_TIME_FIELD_NUMBER = 14; + private com.google.protobuf.Timestamp startTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation was most recently successfully
            +   * started, regardless of the workstation's initial state.
            +   * 
            + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the startTime field is set. + */ + @java.lang.Override + public boolean hasStartTime() { + return ((bitField0_ & 0x00000004) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation was most recently successfully
            +   * started, regardless of the workstation's initial state.
            +   * 
            + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The startTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getStartTime() { + return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation was most recently successfully
            +   * started, regardless of the workstation's initial state.
            +   * 
            + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getStartTimeOrBuilder() { + return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; + } + + public static final int DELETE_TIME_FIELD_NUMBER = 8; + private com.google.protobuf.Timestamp deleteTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the deleteTime field is set. + */ + @java.lang.Override + public boolean hasDeleteTime() { + return ((bitField0_ & 0x00000008) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The deleteTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getDeleteTime() { + return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { + return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; + } + + public static final int ETAG_FIELD_NUMBER = 9; + + @SuppressWarnings("serial") + private volatile java.lang.Object etag_ = ""; + + /** + * + * + *
            +   * Optional. Checksum computed by the server. May be sent on update and delete
            +   * requests to make sure that the client has an up-to-date value before
            +   * proceeding.
            +   * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The etag. + */ + @java.lang.Override + public java.lang.String getEtag() { + java.lang.Object ref = etag_; + 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(); + etag_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Checksum computed by the server. May be sent on update and delete
            +   * requests to make sure that the client has an up-to-date value before
            +   * proceeding.
            +   * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for etag. + */ + @java.lang.Override + public com.google.protobuf.ByteString getEtagBytes() { + java.lang.Object ref = etag_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + etag_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PERSISTENT_DIRECTORIES_FIELD_NUMBER = 25; + + @SuppressWarnings("serial") + private java.util.List< + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory> + persistentDirectories_; + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getPersistentDirectoriesList() { + return persistentDirectories_; + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectoryOrBuilder> + getPersistentDirectoriesOrBuilderList() { + return persistentDirectories_; + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getPersistentDirectoriesCount() { + return persistentDirectories_.size(); + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + getPersistentDirectories(int index) { + return persistentDirectories_.get(index); + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectoryOrBuilder + getPersistentDirectoriesOrBuilder(int index) { + return persistentDirectories_.get(index); + } + + public static final int STATE_FIELD_NUMBER = 10; + private int state_ = 0; + + /** + * + * + *
            +   * Output only. Current state of the workstation.
            +   * 
            + * + * + * .google.cloud.workstations.v1.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The enum numeric value on the wire for state. + */ + @java.lang.Override + public int getStateValue() { + return state_; + } + + /** + * + * + *
            +   * Output only. Current state of the workstation.
            +   * 
            + * + * + * .google.cloud.workstations.v1.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The state. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.State getState() { + com.google.cloud.workstations.v1.Workstation.State result = + com.google.cloud.workstations.v1.Workstation.State.forNumber(state_); + return result == null + ? com.google.cloud.workstations.v1.Workstation.State.UNRECOGNIZED + : result; + } + + public static final int HOST_FIELD_NUMBER = 11; + + @SuppressWarnings("serial") + private volatile java.lang.Object host_ = ""; + + /** + * + * + *
            +   * Output only. Host to which clients can send HTTPS traffic that will be
            +   * received by the workstation. Authorized traffic will be received to the
            +   * workstation as HTTP on port 80. To send traffic to a different port,
            +   * clients may prefix the host with the destination port in the format
            +   * `{port}-{host}`.
            +   * 
            + * + * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The host. + */ + @java.lang.Override + public java.lang.String getHost() { + java.lang.Object ref = host_; + 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(); + host_ = s; + return s; + } + } + + /** + * + * + *
            +   * Output only. Host to which clients can send HTTPS traffic that will be
            +   * received by the workstation. Authorized traffic will be received to the
            +   * workstation as HTTP on port 80. To send traffic to a different port,
            +   * clients may prefix the host with the destination port in the format
            +   * `{port}-{host}`.
            +   * 
            + * + * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for host. + */ + @java.lang.Override + public com.google.protobuf.ByteString getHostBytes() { + java.lang.Object ref = host_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + host_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ENV_FIELD_NUMBER = 12; + + private static final class EnvDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_EnvEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField env_; + + private com.google.protobuf.MapField internalGetEnv() { + if (env_ == null) { + return com.google.protobuf.MapField.emptyMapField(EnvDefaultEntryHolder.defaultEntry); + } + return env_; + } + + public int getEnvCount() { + return internalGetEnv().getMap().size(); + } + + /** + * + * + *
            +   * Optional. Environment variables passed to the workstation container's
            +   * entrypoint.
            +   * 
            + * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsEnv(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetEnv().getMap().containsKey(key); + } + + /** Use {@link #getEnvMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getEnv() { + return getEnvMap(); + } + + /** + * + * + *
            +   * Optional. Environment variables passed to the workstation container's
            +   * entrypoint.
            +   * 
            + * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getEnvMap() { + return internalGetEnv().getMap(); + } + + /** + * + * + *
            +   * Optional. Environment variables passed to the workstation container's
            +   * entrypoint.
            +   * 
            + * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getEnvOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetEnv().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional. Environment variables passed to the workstation container's
            +   * entrypoint.
            +   * 
            + * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getEnvOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetEnv().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int KMS_KEY_FIELD_NUMBER = 15; + + @SuppressWarnings("serial") + private volatile java.lang.Object kmsKey_ = ""; + + /** + * + * + *
            +   * Output only. The name of the Google Cloud KMS encryption key used to
            +   * encrypt this workstation. The KMS key can only be configured in the
            +   * WorkstationConfig. The expected format is
            +   * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
            +   * 
            + * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The kmsKey. + */ + @java.lang.Override + public java.lang.String getKmsKey() { + java.lang.Object ref = kmsKey_; + 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(); + kmsKey_ = s; + return s; + } + } + + /** + * + * + *
            +   * Output only. The name of the Google Cloud KMS encryption key used to
            +   * encrypt this workstation. The KMS key can only be configured in the
            +   * WorkstationConfig. The expected format is
            +   * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
            +   * 
            + * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for kmsKey. + */ + @java.lang.Override + public com.google.protobuf.ByteString getKmsKeyBytes() { + java.lang.Object ref = kmsKey_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SOURCE_WORKSTATION_FIELD_NUMBER = 17; + + @SuppressWarnings("serial") + private volatile java.lang.Object sourceWorkstation_ = ""; + + /** + * + * + *
            +   * Optional. The source workstation from which this workstation's persistent
            +   * directories were cloned on creation.
            +   * 
            + * + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceWorkstation. + */ + @java.lang.Override + public java.lang.String getSourceWorkstation() { + java.lang.Object ref = sourceWorkstation_; + 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(); + sourceWorkstation_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. The source workstation from which this workstation's persistent
            +   * directories were cloned on creation.
            +   * 
            + * + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceWorkstation. + */ + @java.lang.Override + public com.google.protobuf.ByteString getSourceWorkstationBytes() { + java.lang.Object ref = sourceWorkstation_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceWorkstation_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int RUNTIME_HOST_FIELD_NUMBER = 21; + private com.google.cloud.workstations.v1.Workstation.RuntimeHost runtimeHost_; + + /** + * + * + *
            +   * Optional. Output only. Runtime host for the workstation when in
            +   * STATE_RUNNING.
            +   * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the runtimeHost field is set. + */ + @java.lang.Override + public boolean hasRuntimeHost() { + return ((bitField0_ & 0x00000010) != 0); + } + + /** + * + * + *
            +   * Optional. Output only. Runtime host for the workstation when in
            +   * STATE_RUNNING.
            +   * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The runtimeHost. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.RuntimeHost getRuntimeHost() { + return runtimeHost_ == null + ? com.google.cloud.workstations.v1.Workstation.RuntimeHost.getDefaultInstance() + : runtimeHost_; + } + + /** + * + * + *
            +   * Optional. Output only. Runtime host for the workstation when in
            +   * STATE_RUNNING.
            +   * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.RuntimeHostOrBuilder + getRuntimeHostOrBuilder() { + return runtimeHost_ == null + ? com.google.cloud.workstations.v1.Workstation.RuntimeHost.getDefaultInstance() + : runtimeHost_; + } + + 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(displayName_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, displayName_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, uid_); + } + if (reconciling_ != false) { + output.writeBool(4, reconciling_); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetAnnotations(), AnnotationsDefaultEntryHolder.defaultEntry, 5); + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(6, getCreateTime()); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(7, getUpdateTime()); + } + if (((bitField0_ & 0x00000008) != 0)) { + output.writeMessage(8, getDeleteTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 9, etag_); + } + if (state_ + != com.google.cloud.workstations.v1.Workstation.State.STATE_UNSPECIFIED.getNumber()) { + output.writeEnum(10, state_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(host_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 11, host_); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetEnv(), EnvDefaultEntryHolder.defaultEntry, 12); + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 13); + if (((bitField0_ & 0x00000004) != 0)) { + output.writeMessage(14, getStartTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kmsKey_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 15, kmsKey_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceWorkstation_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 17, sourceWorkstation_); + } + if (((bitField0_ & 0x00000010) != 0)) { + output.writeMessage(21, getRuntimeHost()); + } + for (int i = 0; i < persistentDirectories_.size(); i++) { + output.writeMessage(25, persistentDirectories_.get(i)); + } + 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(displayName_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, displayName_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, uid_); + } + if (reconciling_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, reconciling_); + } + for (java.util.Map.Entry entry : + internalGetAnnotations().getMap().entrySet()) { + com.google.protobuf.MapEntry annotations__ = + AnnotationsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, annotations__); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getCreateTime()); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getUpdateTime()); + } + if (((bitField0_ & 0x00000008) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getDeleteTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(9, etag_); + } + if (state_ + != com.google.cloud.workstations.v1.Workstation.State.STATE_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(10, state_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(host_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(11, host_); + } + for (java.util.Map.Entry entry : + internalGetEnv().getMap().entrySet()) { + com.google.protobuf.MapEntry env__ = + EnvDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, env__); + } + for (java.util.Map.Entry entry : + internalGetLabels().getMap().entrySet()) { + com.google.protobuf.MapEntry labels__ = + LabelsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(13, labels__); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, getStartTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kmsKey_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(15, kmsKey_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceWorkstation_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(17, sourceWorkstation_); + } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(21, getRuntimeHost()); + } + for (int i = 0; i < persistentDirectories_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 25, persistentDirectories_.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.cloud.workstations.v1.Workstation)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.Workstation other = + (com.google.cloud.workstations.v1.Workstation) obj; + + if (!getName().equals(other.getName())) return false; + if (!getDisplayName().equals(other.getDisplayName())) return false; + if (!getUid().equals(other.getUid())) return false; + if (getReconciling() != other.getReconciling()) return false; + if (!internalGetAnnotations().equals(other.internalGetAnnotations())) return false; + if (!internalGetLabels().equals(other.internalGetLabels())) return false; + if (hasCreateTime() != other.hasCreateTime()) return false; + if (hasCreateTime()) { + if (!getCreateTime().equals(other.getCreateTime())) return false; + } + if (hasUpdateTime() != other.hasUpdateTime()) return false; + if (hasUpdateTime()) { + if (!getUpdateTime().equals(other.getUpdateTime())) return false; + } + if (hasStartTime() != other.hasStartTime()) return false; + if (hasStartTime()) { + if (!getStartTime().equals(other.getStartTime())) return false; + } + if (hasDeleteTime() != other.hasDeleteTime()) return false; + if (hasDeleteTime()) { + if (!getDeleteTime().equals(other.getDeleteTime())) return false; + } + if (!getEtag().equals(other.getEtag())) return false; + if (!getPersistentDirectoriesList().equals(other.getPersistentDirectoriesList())) return false; + if (state_ != other.state_) return false; + if (!getHost().equals(other.getHost())) return false; + if (!internalGetEnv().equals(other.internalGetEnv())) return false; + if (!getKmsKey().equals(other.getKmsKey())) return false; + if (!getSourceWorkstation().equals(other.getSourceWorkstation())) return false; + if (hasRuntimeHost() != other.hasRuntimeHost()) return false; + if (hasRuntimeHost()) { + if (!getRuntimeHost().equals(other.getRuntimeHost())) 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) + DISPLAY_NAME_FIELD_NUMBER; + hash = (53 * hash) + getDisplayName().hashCode(); + hash = (37 * hash) + UID_FIELD_NUMBER; + hash = (53 * hash) + getUid().hashCode(); + hash = (37 * hash) + RECONCILING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReconciling()); + if (!internalGetAnnotations().getMap().isEmpty()) { + hash = (37 * hash) + ANNOTATIONS_FIELD_NUMBER; + hash = (53 * hash) + internalGetAnnotations().hashCode(); + } + if (!internalGetLabels().getMap().isEmpty()) { + hash = (37 * hash) + LABELS_FIELD_NUMBER; + hash = (53 * hash) + internalGetLabels().hashCode(); + } + if (hasCreateTime()) { + hash = (37 * hash) + CREATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getCreateTime().hashCode(); + } + if (hasUpdateTime()) { + hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getUpdateTime().hashCode(); + } + if (hasStartTime()) { + hash = (37 * hash) + START_TIME_FIELD_NUMBER; + hash = (53 * hash) + getStartTime().hashCode(); + } + if (hasDeleteTime()) { + hash = (37 * hash) + DELETE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getDeleteTime().hashCode(); + } + hash = (37 * hash) + ETAG_FIELD_NUMBER; + hash = (53 * hash) + getEtag().hashCode(); + if (getPersistentDirectoriesCount() > 0) { + hash = (37 * hash) + PERSISTENT_DIRECTORIES_FIELD_NUMBER; + hash = (53 * hash) + getPersistentDirectoriesList().hashCode(); + } + hash = (37 * hash) + STATE_FIELD_NUMBER; + hash = (53 * hash) + state_; + hash = (37 * hash) + HOST_FIELD_NUMBER; + hash = (53 * hash) + getHost().hashCode(); + if (!internalGetEnv().getMap().isEmpty()) { + hash = (37 * hash) + ENV_FIELD_NUMBER; + hash = (53 * hash) + internalGetEnv().hashCode(); + } + hash = (37 * hash) + KMS_KEY_FIELD_NUMBER; + hash = (53 * hash) + getKmsKey().hashCode(); + hash = (37 * hash) + SOURCE_WORKSTATION_FIELD_NUMBER; + hash = (53 * hash) + getSourceWorkstation().hashCode(); + if (hasRuntimeHost()) { + hash = (37 * hash) + RUNTIME_HOST_FIELD_NUMBER; + hash = (53 * hash) + getRuntimeHost().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1.Workstation parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.Workstation parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.Workstation parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.Workstation 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.cloud.workstations.v1.Workstation parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.Workstation parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.Workstation parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.Workstation 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.cloud.workstations.v1.Workstation parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.Workstation 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.cloud.workstations.v1.Workstation parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.Workstation 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.cloud.workstations.v1.Workstation 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 single instance of a developer workstation with its own persistent storage.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.Workstation} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.Workstation) + com.google.cloud.workstations.v1.WorkstationOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_descriptor; + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 5: + return internalGetAnnotations(); + case 13: + return internalGetLabels(); + case 12: + return internalGetEnv(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( + int number) { + switch (number) { + case 5: + return internalGetMutableAnnotations(); + case 13: + return internalGetMutableLabels(); + case 12: + return internalGetMutableEnv(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.Workstation.class, + com.google.cloud.workstations.v1.Workstation.Builder.class); + } + + // Construct using com.google.cloud.workstations.v1.Workstation.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetCreateTimeFieldBuilder(); + internalGetUpdateTimeFieldBuilder(); + internalGetStartTimeFieldBuilder(); + internalGetDeleteTimeFieldBuilder(); + internalGetPersistentDirectoriesFieldBuilder(); + internalGetRuntimeHostFieldBuilder(); + } + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + displayName_ = ""; + uid_ = ""; + reconciling_ = false; + internalGetMutableAnnotations().clear(); + internalGetMutableLabels().clear(); + createTime_ = null; + if (createTimeBuilder_ != null) { + createTimeBuilder_.dispose(); + createTimeBuilder_ = null; + } + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; + } + startTime_ = null; + if (startTimeBuilder_ != null) { + startTimeBuilder_.dispose(); + startTimeBuilder_ = null; + } + deleteTime_ = null; + if (deleteTimeBuilder_ != null) { + deleteTimeBuilder_.dispose(); + deleteTimeBuilder_ = null; + } + etag_ = ""; + if (persistentDirectoriesBuilder_ == null) { + persistentDirectories_ = java.util.Collections.emptyList(); + } else { + persistentDirectories_ = null; + persistentDirectoriesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000800); + state_ = 0; + host_ = ""; + internalGetMutableEnv().clear(); + kmsKey_ = ""; + sourceWorkstation_ = ""; + runtimeHost_ = null; + if (runtimeHostBuilder_ != null) { + runtimeHostBuilder_.dispose(); + runtimeHostBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_Workstation_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.Workstation.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation build() { + com.google.cloud.workstations.v1.Workstation result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation buildPartial() { + com.google.cloud.workstations.v1.Workstation result = + new com.google.cloud.workstations.v1.Workstation(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(com.google.cloud.workstations.v1.Workstation result) { + if (persistentDirectoriesBuilder_ == null) { + if (((bitField0_ & 0x00000800) != 0)) { + persistentDirectories_ = java.util.Collections.unmodifiableList(persistentDirectories_); + bitField0_ = (bitField0_ & ~0x00000800); + } + result.persistentDirectories_ = persistentDirectories_; + } else { + result.persistentDirectories_ = persistentDirectoriesBuilder_.build(); + } + } + + private void buildPartial0(com.google.cloud.workstations.v1.Workstation result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.displayName_ = displayName_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.uid_ = uid_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.reconciling_ = reconciling_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.annotations_ = internalGetAnnotations(); + result.annotations_.makeImmutable(); + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.labels_ = internalGetLabels(); + result.labels_.makeImmutable(); + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000040) != 0)) { + result.createTime_ = createTimeBuilder_ == null ? createTime_ : createTimeBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.updateTime_ = updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.startTime_ = startTimeBuilder_ == null ? startTime_ : startTimeBuilder_.build(); + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.deleteTime_ = deleteTimeBuilder_ == null ? deleteTime_ : deleteTimeBuilder_.build(); + to_bitField0_ |= 0x00000008; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.etag_ = etag_; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.state_ = state_; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.host_ = host_; + } + if (((from_bitField0_ & 0x00004000) != 0)) { + result.env_ = internalGetEnv(); + result.env_.makeImmutable(); + } + if (((from_bitField0_ & 0x00008000) != 0)) { + result.kmsKey_ = kmsKey_; + } + if (((from_bitField0_ & 0x00010000) != 0)) { + result.sourceWorkstation_ = sourceWorkstation_; + } + if (((from_bitField0_ & 0x00020000) != 0)) { + result.runtimeHost_ = + runtimeHostBuilder_ == null ? runtimeHost_ : runtimeHostBuilder_.build(); + to_bitField0_ |= 0x00000010; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1.Workstation) { + return mergeFrom((com.google.cloud.workstations.v1.Workstation) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.workstations.v1.Workstation other) { + if (other == com.google.cloud.workstations.v1.Workstation.getDefaultInstance()) return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getDisplayName().isEmpty()) { + displayName_ = other.displayName_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getUid().isEmpty()) { + uid_ = other.uid_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getReconciling() != false) { + setReconciling(other.getReconciling()); + } + internalGetMutableAnnotations().mergeFrom(other.internalGetAnnotations()); + bitField0_ |= 0x00000010; + internalGetMutableLabels().mergeFrom(other.internalGetLabels()); + bitField0_ |= 0x00000020; + if (other.hasCreateTime()) { + mergeCreateTime(other.getCreateTime()); + } + if (other.hasUpdateTime()) { + mergeUpdateTime(other.getUpdateTime()); + } + if (other.hasStartTime()) { + mergeStartTime(other.getStartTime()); + } + if (other.hasDeleteTime()) { + mergeDeleteTime(other.getDeleteTime()); + } + if (!other.getEtag().isEmpty()) { + etag_ = other.etag_; + bitField0_ |= 0x00000400; + onChanged(); + } + if (persistentDirectoriesBuilder_ == null) { + if (!other.persistentDirectories_.isEmpty()) { + if (persistentDirectories_.isEmpty()) { + persistentDirectories_ = other.persistentDirectories_; + bitField0_ = (bitField0_ & ~0x00000800); + } else { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.addAll(other.persistentDirectories_); + } + onChanged(); + } + } else { + if (!other.persistentDirectories_.isEmpty()) { + if (persistentDirectoriesBuilder_.isEmpty()) { + persistentDirectoriesBuilder_.dispose(); + persistentDirectoriesBuilder_ = null; + persistentDirectories_ = other.persistentDirectories_; + bitField0_ = (bitField0_ & ~0x00000800); + persistentDirectoriesBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetPersistentDirectoriesFieldBuilder() + : null; + } else { + persistentDirectoriesBuilder_.addAllMessages(other.persistentDirectories_); + } + } + } + if (other.state_ != 0) { + setStateValue(other.getStateValue()); + } + if (!other.getHost().isEmpty()) { + host_ = other.host_; + bitField0_ |= 0x00002000; + onChanged(); + } + internalGetMutableEnv().mergeFrom(other.internalGetEnv()); + bitField0_ |= 0x00004000; + if (!other.getKmsKey().isEmpty()) { + kmsKey_ = other.kmsKey_; + bitField0_ |= 0x00008000; + onChanged(); + } + if (!other.getSourceWorkstation().isEmpty()) { + sourceWorkstation_ = other.sourceWorkstation_; + bitField0_ |= 0x00010000; + onChanged(); + } + if (other.hasRuntimeHost()) { + mergeRuntimeHost(other.getRuntimeHost()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + name_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; break; } // case 10 case 18: @@ -1739,15 +5030,24 @@ public Builder mergeFrom( case 80: { state_ = input.readEnum(); - bitField0_ |= 0x00000800; + bitField0_ |= 0x00001000; break; } // case 80 case 90: { host_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00001000; + bitField0_ |= 0x00002000; break; } // case 90 + case 98: + { + com.google.protobuf.MapEntry env__ = + input.readMessage( + EnvDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); + internalGetMutableEnv().getMutableMap().put(env__.getKey(), env__.getValue()); + bitField0_ |= 0x00004000; + break; + } // case 98 case 106: { com.google.protobuf.MapEntry labels__ = @@ -1767,6 +5067,40 @@ public Builder mergeFrom( bitField0_ |= 0x00000100; break; } // case 114 + case 122: + { + kmsKey_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00008000; + break; + } // case 122 + case 138: + { + sourceWorkstation_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00010000; + break; + } // case 138 + case 170: + { + input.readMessage( + internalGetRuntimeHostFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00020000; + break; + } // case 170 + case 202: + { + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory m = + input.readMessage( + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + .parser(), + extensionRegistry); + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(m); + } else { + persistentDirectoriesBuilder_.addMessage(m); + } + break; + } // case 202 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -1780,57 +5114,1045 @@ public Builder mergeFrom( throw e.unwrapIOException(); } finally { onChanged(); - } // finally + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object name_ = ""; + + /** + * + * + *
            +     * Identifier. Full name of this workstation.
            +     * 
            + * + * 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. Full name of this workstation.
            +     * 
            + * + * 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. Full name of this workstation.
            +     * 
            + * + * 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. Full name of this workstation.
            +     * 
            + * + * 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. Full name of this workstation.
            +     * 
            + * + * 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 displayName_ = ""; + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The displayName. + */ + public java.lang.String getDisplayName() { + java.lang.Object ref = displayName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + displayName_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for displayName. + */ + public com.google.protobuf.ByteString getDisplayNameBytes() { + java.lang.Object ref = displayName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + displayName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The displayName to set. + * @return This builder for chaining. + */ + public Builder setDisplayName(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + displayName_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearDisplayName() { + displayName_ = getDefaultInstance().getDisplayName(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for displayName to set. + * @return This builder for chaining. + */ + public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + displayName_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object uid_ = ""; + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The uid. + */ + public java.lang.String getUid() { + java.lang.Object ref = uid_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + uid_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The bytes for uid. + */ + public com.google.protobuf.ByteString getUidBytes() { + java.lang.Object ref = uid_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @param value The uid to set. + * @return This builder for chaining. + */ + public Builder setUid(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + uid_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearUid() { + uid_ = getDefaultInstance().getUid(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @param value The bytes for uid to set. + * @return This builder for chaining. + */ + public Builder setUidBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + uid_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private boolean reconciling_; + + /** + * + * + *
            +     * Output only. Indicates whether this workstation is currently being updated
            +     * to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The reconciling. + */ + @java.lang.Override + public boolean getReconciling() { + return reconciling_; + } + + /** + * + * + *
            +     * Output only. Indicates whether this workstation is currently being updated
            +     * to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The reconciling to set. + * @return This builder for chaining. + */ + public Builder setReconciling(boolean value) { + + reconciling_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Indicates whether this workstation is currently being updated
            +     * to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearReconciling() { + bitField0_ = (bitField0_ & ~0x00000008); + reconciling_ = false; + onChanged(); + return this; + } + + private com.google.protobuf.MapField annotations_; + + private com.google.protobuf.MapField + internalGetAnnotations() { + if (annotations_ == null) { + return com.google.protobuf.MapField.emptyMapField( + AnnotationsDefaultEntryHolder.defaultEntry); + } + return annotations_; + } + + private com.google.protobuf.MapField + internalGetMutableAnnotations() { + if (annotations_ == null) { + annotations_ = + com.google.protobuf.MapField.newMapField(AnnotationsDefaultEntryHolder.defaultEntry); + } + if (!annotations_.isMutable()) { + annotations_ = annotations_.copy(); + } + bitField0_ |= 0x00000010; + onChanged(); + return annotations_; + } + + public int getAnnotationsCount() { + return internalGetAnnotations().getMap().size(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetAnnotations().getMap().containsKey(key); + } + + /** Use {@link #getAnnotationsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getAnnotations() { + return getAnnotationsMap(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getAnnotationsMap() { + return internalGetAnnotations().getMap(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getAnnotationsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getAnnotationsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public Builder clearAnnotations() { + bitField0_ = (bitField0_ & ~0x00000010); + internalGetMutableAnnotations().getMutableMap().clear(); + return this; + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableAnnotations().getMutableMap().remove(key); + return this; + } + + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableAnnotations() { + bitField0_ |= 0x00000010; + return internalGetMutableAnnotations().getMutableMap(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAnnotations(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableAnnotations().getMutableMap().put(key, value); + bitField0_ |= 0x00000010; + return this; + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAllAnnotations(java.util.Map values) { + internalGetMutableAnnotations().getMutableMap().putAll(values); + bitField0_ |= 0x00000010; + return this; + } + + private com.google.protobuf.MapField labels_; + + private com.google.protobuf.MapField internalGetLabels() { + if (labels_ == null) { + return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); + } + return labels_; + } + + private com.google.protobuf.MapField + internalGetMutableLabels() { + if (labels_ == null) { + labels_ = com.google.protobuf.MapField.newMapField(LabelsDefaultEntryHolder.defaultEntry); + } + if (!labels_.isMutable()) { + labels_ = labels_.copy(); + } + bitField0_ |= 0x00000020; + onChanged(); + return labels_; + } + + public int getLabelsCount() { + return internalGetLabels().getMap().size(); + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetLabels().getMap().containsKey(key); + } + + /** Use {@link #getLabelsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getLabels() { + return getLabelsMap(); + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getLabelsMap() { + return internalGetLabels().getMap(); + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getLabelsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getLabelsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public Builder clearLabels() { + bitField0_ = (bitField0_ & ~0x00000020); + internalGetMutableLabels().getMutableMap().clear(); + return this; + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder removeLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableLabels().getMutableMap().remove(key); + return this; + } + + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableLabels() { + bitField0_ |= 0x00000020; + return internalGetMutableLabels().getMutableMap(); + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder putLabels(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableLabels().getMutableMap().put(key, value); + bitField0_ |= 0x00000020; + return this; + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder putAllLabels(java.util.Map values) { + internalGetMutableLabels().getMutableMap().putAll(values); + bitField0_ |= 0x00000020; + return this; + } + + private com.google.protobuf.Timestamp createTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + createTimeBuilder_; + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the createTime field is set. + */ + public boolean hasCreateTime() { + return ((bitField0_ & 0x00000040) != 0); + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The createTime. + */ + public com.google.protobuf.Timestamp getCreateTime() { + if (createTimeBuilder_ == null) { + return createTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : createTime_; + } else { + return createTimeBuilder_.getMessage(); + } + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setCreateTime(com.google.protobuf.Timestamp value) { + if (createTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + createTime_ = value; + } else { + createTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (createTimeBuilder_ == null) { + createTime_ = builderForValue.build(); + } else { + createTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { + if (createTimeBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0) + && createTime_ != null + && createTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getCreateTimeBuilder().mergeFrom(value); + } else { + createTime_ = value; + } + } else { + createTimeBuilder_.mergeFrom(value); + } + if (createTime_ != null) { + bitField0_ |= 0x00000040; + onChanged(); + } + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearCreateTime() { + bitField0_ = (bitField0_ & ~0x00000040); + createTime_ = null; + if (createTimeBuilder_ != null) { + createTimeBuilder_.dispose(); + createTimeBuilder_ = null; + } + onChanged(); return this; } - private int bitField0_; + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { + bitField0_ |= 0x00000040; + onChanged(); + return internalGetCreateTimeFieldBuilder().getBuilder(); + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { + if (createTimeBuilder_ != null) { + return createTimeBuilder_.getMessageOrBuilder(); + } else { + return createTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : createTime_; + } + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetCreateTimeFieldBuilder() { + if (createTimeBuilder_ == null) { + createTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getCreateTime(), getParentForChildren(), isClean()); + createTime_ = null; + } + return createTimeBuilder_; + } - private java.lang.Object name_ = ""; + private com.google.protobuf.Timestamp updateTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + updateTimeBuilder_; /** * * *
            -     * Full name of this workstation.
            +     * Output only. Time when this workstation was most recently updated.
                  * 
            * - * string name = 1; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The name. + * @return Whether the updateTime field is set. */ - 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; - } + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000080) != 0); } /** * * *
            -     * Full name of this workstation.
            +     * Output only. Time when this workstation was most recently updated.
                  * 
            * - * string name = 1; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The bytes for name. + * @return The updateTime. */ - 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; + public com.google.protobuf.Timestamp getUpdateTime() { + if (updateTimeBuilder_ == null) { + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; } else { - return (com.google.protobuf.ByteString) ref; + return updateTimeBuilder_.getMessage(); } } @@ -1838,20 +6160,23 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -     * Full name of this workstation.
            +     * Output only. Time when this workstation was most recently updated.
                  * 
            * - * string name = 1; - * - * @param value The name to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setName(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder setUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + updateTime_ = value; + } else { + updateTimeBuilder_.setMessage(value); } - name_ = value; - bitField0_ |= 0x00000001; + bitField0_ |= 0x00000080; onChanged(); return this; } @@ -1860,16 +6185,20 @@ public Builder setName(java.lang.String value) { * * *
            -     * Full name of this workstation.
            +     * Output only. Time when this workstation was most recently updated.
                  * 
            * - * string name = 1; - * - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearName() { - name_ = getDefaultInstance().getName(); - bitField0_ = (bitField0_ & ~0x00000001); + public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (updateTimeBuilder_ == null) { + updateTime_ = builderForValue.build(); + } else { + updateTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000080; onChanged(); return this; } @@ -1878,158 +6207,164 @@ public Builder clearName() { * * *
            -     * Full name of this workstation.
            +     * Output only. Time when this workstation was most recently updated.
                  * 
            * - * string name = 1; - * - * @param value The bytes for name to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setNameBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (((bitField0_ & 0x00000080) != 0) + && updateTime_ != null + && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getUpdateTimeBuilder().mergeFrom(value); + } else { + updateTime_ = value; + } + } else { + updateTimeBuilder_.mergeFrom(value); + } + if (updateTime_ != null) { + bitField0_ |= 0x00000080; + onChanged(); } - checkByteStringIsUtf8(value); - name_ = value; - bitField0_ |= 0x00000001; - onChanged(); return this; } - private java.lang.Object displayName_ = ""; - /** * * *
            -     * Optional. Human-readable name for this workstation.
            +     * Output only. Time when this workstation was most recently updated.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The displayName. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getDisplayName() { - java.lang.Object ref = displayName_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - displayName_ = s; - return s; - } else { - return (java.lang.String) ref; + public Builder clearUpdateTime() { + bitField0_ = (bitField0_ & ~0x00000080); + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; } + onChanged(); + return this; } /** * * *
            -     * Optional. Human-readable name for this workstation.
            +     * Output only. Time when this workstation was most recently updated.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for displayName. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getDisplayNameBytes() { - java.lang.Object ref = displayName_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - displayName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { + bitField0_ |= 0x00000080; + onChanged(); + return internalGetUpdateTimeFieldBuilder().getBuilder(); } /** * * *
            -     * Optional. Human-readable name for this workstation.
            +     * Output only. Time when this workstation was most recently updated.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The displayName to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setDisplayName(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + if (updateTimeBuilder_ != null) { + return updateTimeBuilder_.getMessageOrBuilder(); + } else { + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; } - displayName_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; } /** * * *
            -     * Optional. Human-readable name for this workstation.
            +     * Output only. Time when this workstation was most recently updated.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearDisplayName() { - displayName_ = getDefaultInstance().getDisplayName(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - return this; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetUpdateTimeFieldBuilder() { + if (updateTimeBuilder_ == null) { + updateTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getUpdateTime(), getParentForChildren(), isClean()); + updateTime_ = null; + } + return updateTimeBuilder_; } + private com.google.protobuf.Timestamp startTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + startTimeBuilder_; + /** * * *
            -     * Optional. Human-readable name for this workstation.
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The bytes for displayName to set. - * @return This builder for chaining. + * @return Whether the startTime field is set. */ - public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - displayName_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; + public boolean hasStartTime() { + return ((bitField0_ & 0x00000100) != 0); } - private java.lang.Object uid_ = ""; - /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation.
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The uid. + * @return The startTime. */ - public java.lang.String getUid() { - java.lang.Object ref = uid_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - uid_ = s; - return s; + public com.google.protobuf.Timestamp getStartTime() { + if (startTimeBuilder_ == null) { + return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; } else { - return (java.lang.String) ref; + return startTimeBuilder_.getMessage(); } } @@ -2037,43 +6372,47 @@ public java.lang.String getUid() { * * *
            -     * Output only. A system-assigned unique identifier for this workstation.
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for uid. + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getUidBytes() { - java.lang.Object ref = uid_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - uid_ = b; - return b; + public Builder setStartTime(com.google.protobuf.Timestamp value) { + if (startTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + startTime_ = value; } else { - return (com.google.protobuf.ByteString) ref; + startTimeBuilder_.setMessage(value); } + bitField0_ |= 0x00000100; + onChanged(); + return this; } /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation.
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The uid to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setUid(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder setStartTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (startTimeBuilder_ == null) { + startTime_ = builderForValue.build(); + } else { + startTimeBuilder_.setMessage(builderForValue.build()); } - uid_ = value; - bitField0_ |= 0x00000004; + bitField0_ |= 0x00000100; onChanged(); return this; } @@ -2082,17 +6421,30 @@ public Builder setUid(java.lang.String value) { * * *
            -     * Output only. A system-assigned unique identifier for this workstation.
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearUid() { - uid_ = getDefaultInstance().getUid(); - bitField0_ = (bitField0_ & ~0x00000004); - onChanged(); + public Builder mergeStartTime(com.google.protobuf.Timestamp value) { + if (startTimeBuilder_ == null) { + if (((bitField0_ & 0x00000100) != 0) + && startTime_ != null + && startTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getStartTimeBuilder().mergeFrom(value); + } else { + startTime_ = value; + } + } else { + startTimeBuilder_.mergeFrom(value); + } + if (startTime_ != null) { + bitField0_ |= 0x00000100; + onChanged(); + } return this; } @@ -2100,200 +6452,213 @@ public Builder clearUid() { * * *
            -     * Output only. A system-assigned unique identifier for this workstation.
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The bytes for uid to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setUidBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder clearStartTime() { + bitField0_ = (bitField0_ & ~0x00000100); + startTime_ = null; + if (startTimeBuilder_ != null) { + startTimeBuilder_.dispose(); + startTimeBuilder_ = null; } - checkByteStringIsUtf8(value); - uid_ = value; - bitField0_ |= 0x00000004; onChanged(); return this; } - private boolean reconciling_; - /** * * *
            -     * Output only. Indicates whether this workstation is currently being updated
            -     * to match its intended state.
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The reconciling. + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public boolean getReconciling() { - return reconciling_; + public com.google.protobuf.Timestamp.Builder getStartTimeBuilder() { + bitField0_ |= 0x00000100; + onChanged(); + return internalGetStartTimeFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. Indicates whether this workstation is currently being updated
            -     * to match its intended state.
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The reconciling to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setReconciling(boolean value) { - - reconciling_ = value; - bitField0_ |= 0x00000008; - onChanged(); - return this; + public com.google.protobuf.TimestampOrBuilder getStartTimeOrBuilder() { + if (startTimeBuilder_ != null) { + return startTimeBuilder_.getMessageOrBuilder(); + } else { + return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; + } } /** * * *
            -     * Output only. Indicates whether this workstation is currently being updated
            -     * to match its intended state.
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearReconciling() { - bitField0_ = (bitField0_ & ~0x00000008); - reconciling_ = false; - onChanged(); - return this; - } - - private com.google.protobuf.MapField annotations_; - - private com.google.protobuf.MapField - internalGetAnnotations() { - if (annotations_ == null) { - return com.google.protobuf.MapField.emptyMapField( - AnnotationsDefaultEntryHolder.defaultEntry); + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetStartTimeFieldBuilder() { + if (startTimeBuilder_ == null) { + startTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getStartTime(), getParentForChildren(), isClean()); + startTime_ = null; } - return annotations_; + return startTimeBuilder_; } - private com.google.protobuf.MapField - internalGetMutableAnnotations() { - if (annotations_ == null) { - annotations_ = - com.google.protobuf.MapField.newMapField(AnnotationsDefaultEntryHolder.defaultEntry); - } - if (!annotations_.isMutable()) { - annotations_ = annotations_.copy(); - } - bitField0_ |= 0x00000010; - onChanged(); - return annotations_; - } + private com.google.protobuf.Timestamp deleteTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + deleteTimeBuilder_; - public int getAnnotationsCount() { - return internalGetAnnotations().getMap().size(); + /** + * + * + *
            +     * Output only. Time when this workstation was soft-deleted.
            +     * 
            + * + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the deleteTime field is set. + */ + public boolean hasDeleteTime() { + return ((bitField0_ & 0x00000200) != 0); } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * + * + * @return The deleteTime. */ - @java.lang.Override - public boolean containsAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public com.google.protobuf.Timestamp getDeleteTime() { + if (deleteTimeBuilder_ == null) { + return deleteTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : deleteTime_; + } else { + return deleteTimeBuilder_.getMessage(); } - return internalGetAnnotations().getMap().containsKey(key); - } - - /** Use {@link #getAnnotationsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getAnnotations() { - return getAnnotationsMap(); } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - @java.lang.Override - public java.util.Map getAnnotationsMap() { - return internalGetAnnotations().getMap(); + public Builder setDeleteTime(com.google.protobuf.Timestamp value) { + if (deleteTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deleteTime_ = value; + } else { + deleteTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000200; + onChanged(); + return this; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - @java.lang.Override - public /* nullable */ java.lang.String getAnnotationsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (deleteTimeBuilder_ == null) { + deleteTime_ = builderForValue.build(); + } else { + deleteTimeBuilder_.setMessage(builderForValue.build()); } - java.util.Map map = internalGetAnnotations().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; + bitField0_ |= 0x00000200; + onChanged(); + return this; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - @java.lang.Override - public java.lang.String getAnnotationsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { + if (deleteTimeBuilder_ == null) { + if (((bitField0_ & 0x00000200) != 0) + && deleteTime_ != null + && deleteTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getDeleteTimeBuilder().mergeFrom(value); + } else { + deleteTime_ = value; + } + } else { + deleteTimeBuilder_.mergeFrom(value); } - java.util.Map map = internalGetAnnotations().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + if (deleteTime_ != null) { + bitField0_ |= 0x00000200; + onChanged(); } - return map.get(key); - } - - public Builder clearAnnotations() { - bitField0_ = (bitField0_ & ~0x00000010); - internalGetMutableAnnotations().getMutableMap().clear(); return this; } @@ -2301,327 +6666,366 @@ public Builder clearAnnotations() { * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder removeAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder clearDeleteTime() { + bitField0_ = (bitField0_ & ~0x00000200); + deleteTime_ = null; + if (deleteTimeBuilder_ != null) { + deleteTimeBuilder_.dispose(); + deleteTimeBuilder_ = null; } - internalGetMutableAnnotations().getMutableMap().remove(key); + onChanged(); return this; } - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableAnnotations() { - bitField0_ |= 0x00000010; - return internalGetMutableAnnotations().getMutableMap(); - } - /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder putAnnotations(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); - } - if (value == null) { - throw new NullPointerException("map value"); - } - internalGetMutableAnnotations().getMutableMap().put(key, value); - bitField0_ |= 0x00000010; - return this; + public com.google.protobuf.Timestamp.Builder getDeleteTimeBuilder() { + bitField0_ |= 0x00000200; + onChanged(); + return internalGetDeleteTimeFieldBuilder().getBuilder(); } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder putAllAnnotations(java.util.Map values) { - internalGetMutableAnnotations().getMutableMap().putAll(values); - bitField0_ |= 0x00000010; - return this; - } - - private com.google.protobuf.MapField labels_; - - private com.google.protobuf.MapField internalGetLabels() { - if (labels_ == null) { - return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); + public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { + if (deleteTimeBuilder_ != null) { + return deleteTimeBuilder_.getMessageOrBuilder(); + } else { + return deleteTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : deleteTime_; } - return labels_; } - private com.google.protobuf.MapField - internalGetMutableLabels() { - if (labels_ == null) { - labels_ = com.google.protobuf.MapField.newMapField(LabelsDefaultEntryHolder.defaultEntry); - } - if (!labels_.isMutable()) { - labels_ = labels_.copy(); + /** + * + * + *
            +     * Output only. Time when this workstation was soft-deleted.
            +     * 
            + * + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetDeleteTimeFieldBuilder() { + if (deleteTimeBuilder_ == null) { + deleteTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getDeleteTime(), getParentForChildren(), isClean()); + deleteTime_ = null; } - bitField0_ |= 0x00000020; - onChanged(); - return labels_; + return deleteTimeBuilder_; } - public int getLabelsCount() { - return internalGetLabels().getMap().size(); - } + private java.lang.Object etag_ = ""; /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The etag. */ - @java.lang.Override - public boolean containsLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public java.lang.String getEtag() { + java.lang.Object ref = etag_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + etag_ = s; + return s; + } else { + return (java.lang.String) ref; } - return internalGetLabels().getMap().containsKey(key); } - /** Use {@link #getLabelsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getLabels() { - return getLabelsMap(); + /** + * + * + *
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
            +     * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for etag. + */ + public com.google.protobuf.ByteString getEtagBytes() { + java.lang.Object ref = etag_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + etag_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The etag to set. + * @return This builder for chaining. */ - @java.lang.Override - public java.util.Map getLabelsMap() { - return internalGetLabels().getMap(); + public Builder setEtag(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + etag_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. */ - @java.lang.Override - public /* nullable */ java.lang.String getLabelsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetLabels().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; + public Builder clearEtag() { + etag_ = getDefaultInstance().getEtag(); + bitField0_ = (bitField0_ & ~0x00000400); + onChanged(); + return this; } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for etag to set. + * @return This builder for chaining. */ - @java.lang.Override - public java.lang.String getLabelsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetLabels().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + public Builder setEtagBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - return map.get(key); + checkByteStringIsUtf8(value); + etag_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; } - public Builder clearLabels() { - bitField0_ = (bitField0_ & ~0x00000020); - internalGetMutableLabels().getMutableMap().clear(); - return this; + private java.util.List< + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory> + persistentDirectories_ = java.util.Collections.emptyList(); + + private void ensurePersistentDirectoriesIsMutable() { + if (!((bitField0_ & 0x00000800) != 0)) { + persistentDirectories_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory>( + persistentDirectories_); + bitField0_ |= 0x00000800; + } } + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory, + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.Builder, + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectoryOrBuilder> + persistentDirectoriesBuilder_; + /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder removeLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public java.util.List< + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory> + getPersistentDirectoriesList() { + if (persistentDirectoriesBuilder_ == null) { + return java.util.Collections.unmodifiableList(persistentDirectories_); + } else { + return persistentDirectoriesBuilder_.getMessageList(); } - internalGetMutableLabels().getMutableMap().remove(key); - return this; - } - - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableLabels() { - bitField0_ |= 0x00000020; - return internalGetMutableLabels().getMutableMap(); } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder putLabels(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); - } - if (value == null) { - throw new NullPointerException("map value"); + public int getPersistentDirectoriesCount() { + if (persistentDirectoriesBuilder_ == null) { + return persistentDirectories_.size(); + } else { + return persistentDirectoriesBuilder_.getCount(); } - internalGetMutableLabels().getMutableMap().put(key, value); - bitField0_ |= 0x00000020; - return this; } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder putAllLabels(java.util.Map values) { - internalGetMutableLabels().getMutableMap().putAll(values); - bitField0_ |= 0x00000020; - return this; + public com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + getPersistentDirectories(int index) { + if (persistentDirectoriesBuilder_ == null) { + return persistentDirectories_.get(index); + } else { + return persistentDirectoriesBuilder_.getMessage(index); + } } - private com.google.protobuf.Timestamp createTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - createTimeBuilder_; - /** * * *
            -     * Output only. Time when this workstation was created.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the createTime field is set. */ - public boolean hasCreateTime() { - return ((bitField0_ & 0x00000040) != 0); + public Builder setPersistentDirectories( + int index, + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory value) { + if (persistentDirectoriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.set(index, value); + onChanged(); + } else { + persistentDirectoriesBuilder_.setMessage(index, value); + } + return this; } /** * * *
            -     * Output only. Time when this workstation was created.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The createTime. */ - public com.google.protobuf.Timestamp getCreateTime() { - if (createTimeBuilder_ == null) { - return createTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : createTime_; + public Builder setPersistentDirectories( + int index, + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.Builder + builderForValue) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.set(index, builderForValue.build()); + onChanged(); } else { - return createTimeBuilder_.getMessage(); + persistentDirectoriesBuilder_.setMessage(index, builderForValue.build()); } + return this; } /** * * *
            -     * Output only. Time when this workstation was created.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setCreateTime(com.google.protobuf.Timestamp value) { - if (createTimeBuilder_ == null) { + public Builder addPersistentDirectories( + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory value) { + if (persistentDirectoriesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - createTime_ = value; + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(value); + onChanged(); } else { - createTimeBuilder_.setMessage(value); + persistentDirectoriesBuilder_.addMessage(value); } - bitField0_ |= 0x00000040; - onChanged(); return this; } @@ -2629,21 +7033,26 @@ public Builder setCreateTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation was created.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (createTimeBuilder_ == null) { - createTime_ = builderForValue.build(); + public Builder addPersistentDirectories( + int index, + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory value) { + if (persistentDirectoriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(index, value); + onChanged(); } else { - createTimeBuilder_.setMessage(builderForValue.build()); + persistentDirectoriesBuilder_.addMessage(index, value); } - bitField0_ |= 0x00000040; - onChanged(); return this; } @@ -2651,28 +7060,22 @@ public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForVal * * *
            -     * Output only. Time when this workstation was created.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { - if (createTimeBuilder_ == null) { - if (((bitField0_ & 0x00000040) != 0) - && createTime_ != null - && createTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getCreateTimeBuilder().mergeFrom(value); - } else { - createTime_ = value; - } - } else { - createTimeBuilder_.mergeFrom(value); - } - if (createTime_ != null) { - bitField0_ |= 0x00000040; + public Builder addPersistentDirectories( + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.Builder + builderForValue) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(builderForValue.build()); onChanged(); + } else { + persistentDirectoriesBuilder_.addMessage(builderForValue.build()); } return this; } @@ -2681,21 +7084,24 @@ public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation was created.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearCreateTime() { - bitField0_ = (bitField0_ & ~0x00000040); - createTime_ = null; - if (createTimeBuilder_ != null) { - createTimeBuilder_.dispose(); - createTimeBuilder_ = null; + public Builder addPersistentDirectories( + int index, + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.Builder + builderForValue) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(index, builderForValue.build()); + onChanged(); + } else { + persistentDirectoriesBuilder_.addMessage(index, builderForValue.build()); } - onChanged(); return this; } @@ -2703,112 +7109,105 @@ public Builder clearCreateTime() { * * *
            -     * Output only. Time when this workstation was created.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { - bitField0_ |= 0x00000040; - onChanged(); - return internalGetCreateTimeFieldBuilder().getBuilder(); + public Builder addAllPersistentDirectories( + java.lang.Iterable< + ? extends + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory> + values) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, persistentDirectories_); + onChanged(); + } else { + persistentDirectoriesBuilder_.addAllMessages(values); + } + return this; } /** * * *
            -     * Output only. Time when this workstation was created.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { - if (createTimeBuilder_ != null) { - return createTimeBuilder_.getMessageOrBuilder(); + public Builder clearPersistentDirectories() { + if (persistentDirectoriesBuilder_ == null) { + persistentDirectories_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000800); + onChanged(); } else { - return createTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : createTime_; + persistentDirectoriesBuilder_.clear(); } + return this; } /** * * *
            -     * Output only. Time when this workstation was created.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetCreateTimeFieldBuilder() { - if (createTimeBuilder_ == null) { - createTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getCreateTime(), getParentForChildren(), isClean()); - createTime_ = null; + public Builder removePersistentDirectories(int index) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.remove(index); + onChanged(); + } else { + persistentDirectoriesBuilder_.remove(index); } - return createTimeBuilder_; + return this; } - private com.google.protobuf.Timestamp updateTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - updateTimeBuilder_; - /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the updateTime field is set. */ - public boolean hasUpdateTime() { - return ((bitField0_ & 0x00000080) != 0); + public com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.Builder + getPersistentDirectoriesBuilder(int index) { + return internalGetPersistentDirectoriesFieldBuilder().getBuilder(index); } /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The updateTime. */ - public com.google.protobuf.Timestamp getUpdateTime() { - if (updateTimeBuilder_ == null) { - return updateTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : updateTime_; + public com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectoryOrBuilder + getPersistentDirectoriesOrBuilder(int index) { + if (persistentDirectoriesBuilder_ == null) { + return persistentDirectories_.get(index); } else { - return updateTimeBuilder_.getMessage(); + return persistentDirectoriesBuilder_.getMessageOrBuilder(index); } } @@ -2816,259 +7215,287 @@ public com.google.protobuf.Timestamp getUpdateTime() { * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setUpdateTime(com.google.protobuf.Timestamp value) { - if (updateTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - updateTime_ = value; + public java.util.List< + ? extends + com.google.cloud.workstations.v1.Workstation + .WorkstationPersistentDirectoryOrBuilder> + getPersistentDirectoriesOrBuilderList() { + if (persistentDirectoriesBuilder_ != null) { + return persistentDirectoriesBuilder_.getMessageOrBuilderList(); } else { - updateTimeBuilder_.setMessage(value); + return java.util.Collections.unmodifiableList(persistentDirectories_); } - bitField0_ |= 0x00000080; - onChanged(); - return this; } /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (updateTimeBuilder_ == null) { - updateTime_ = builderForValue.build(); - } else { - updateTimeBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000080; - onChanged(); - return this; + public com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.Builder + addPersistentDirectoriesBuilder() { + return internalGetPersistentDirectoriesFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + .getDefaultInstance()); } /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { - if (updateTimeBuilder_ == null) { - if (((bitField0_ & 0x00000080) != 0) - && updateTime_ != null - && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getUpdateTimeBuilder().mergeFrom(value); - } else { - updateTime_ = value; - } - } else { - updateTimeBuilder_.mergeFrom(value); - } - if (updateTime_ != null) { - bitField0_ |= 0x00000080; - onChanged(); - } - return this; + public com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.Builder + addPersistentDirectoriesBuilder(int index) { + return internalGetPersistentDirectoriesFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + .getDefaultInstance()); } /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearUpdateTime() { - bitField0_ = (bitField0_ & ~0x00000080); - updateTime_ = null; - if (updateTimeBuilder_ != null) { - updateTimeBuilder_.dispose(); - updateTimeBuilder_ = null; + public java.util.List< + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.Builder> + getPersistentDirectoriesBuilderList() { + return internalGetPersistentDirectoriesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory, + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.Builder, + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectoryOrBuilder> + internalGetPersistentDirectoriesFieldBuilder() { + if (persistentDirectoriesBuilder_ == null) { + persistentDirectoriesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory, + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory.Builder, + com.google.cloud.workstations.v1.Workstation + .WorkstationPersistentDirectoryOrBuilder>( + persistentDirectories_, + ((bitField0_ & 0x00000800) != 0), + getParentForChildren(), + isClean()); + persistentDirectories_ = null; } - onChanged(); - return this; + return persistentDirectoriesBuilder_; } + private int state_ = 0; + /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Output only. Current state of the workstation.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; * + * + * @return The enum numeric value on the wire for state. */ - public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { - bitField0_ |= 0x00000080; - onChanged(); - return internalGetUpdateTimeFieldBuilder().getBuilder(); + @java.lang.Override + public int getStateValue() { + return state_; } /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Output only. Current state of the workstation.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; * + * + * @param value The enum numeric value on the wire for state to set. + * @return This builder for chaining. */ - public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { - if (updateTimeBuilder_ != null) { - return updateTimeBuilder_.getMessageOrBuilder(); - } else { - return updateTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : updateTime_; - } + public Builder setStateValue(int value) { + state_ = value; + bitField0_ |= 0x00001000; + onChanged(); + return this; } /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Output only. Current state of the workstation.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; * + * + * @return The state. */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetUpdateTimeFieldBuilder() { - if (updateTimeBuilder_ == null) { - updateTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getUpdateTime(), getParentForChildren(), isClean()); - updateTime_ = null; - } - return updateTimeBuilder_; + @java.lang.Override + public com.google.cloud.workstations.v1.Workstation.State getState() { + com.google.cloud.workstations.v1.Workstation.State result = + com.google.cloud.workstations.v1.Workstation.State.forNumber(state_); + return result == null + ? com.google.cloud.workstations.v1.Workstation.State.UNRECOGNIZED + : result; } - private com.google.protobuf.Timestamp startTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - startTimeBuilder_; - /** * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Output only. Current state of the workstation.
                  * 
            * * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * - * @return Whether the startTime field is set. + * @param value The state to set. + * @return This builder for chaining. */ - public boolean hasStartTime() { - return ((bitField0_ & 0x00000100) != 0); + public Builder setState(com.google.cloud.workstations.v1.Workstation.State value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00001000; + state_ = value.getNumber(); + onChanged(); + return this; } /** * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Output only. Current state of the workstation.
                  * 
            * * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * - * @return The startTime. + * @return This builder for chaining. */ - public com.google.protobuf.Timestamp getStartTime() { - if (startTimeBuilder_ == null) { - return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; - } else { - return startTimeBuilder_.getMessage(); - } + public Builder clearState() { + bitField0_ = (bitField0_ & ~0x00001000); + state_ = 0; + onChanged(); + return this; } + private java.lang.Object host_ = ""; + /** * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Output only. Host to which clients can send HTTPS traffic that will be
            +     * received by the workstation. Authorized traffic will be received to the
            +     * workstation as HTTP on port 80. To send traffic to a different port,
            +     * clients may prefix the host with the destination port in the format
            +     * `{port}-{host}`.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The host. */ - public Builder setStartTime(com.google.protobuf.Timestamp value) { - if (startTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - startTime_ = value; + public java.lang.String getHost() { + java.lang.Object ref = host_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + host_ = s; + return s; } else { - startTimeBuilder_.setMessage(value); + return (java.lang.String) ref; } - bitField0_ |= 0x00000100; - onChanged(); - return this; } /** * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Output only. Host to which clients can send HTTPS traffic that will be
            +     * received by the workstation. Authorized traffic will be received to the
            +     * workstation as HTTP on port 80. To send traffic to a different port,
            +     * clients may prefix the host with the destination port in the format
            +     * `{port}-{host}`.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for host. */ - public Builder setStartTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (startTimeBuilder_ == null) { - startTime_ = builderForValue.build(); + public com.google.protobuf.ByteString getHostBytes() { + java.lang.Object ref = host_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + host_ = b; + return b; } else { - startTimeBuilder_.setMessage(builderForValue.build()); + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Output only. Host to which clients can send HTTPS traffic that will be
            +     * received by the workstation. Authorized traffic will be received to the
            +     * workstation as HTTP on port 80. To send traffic to a different port,
            +     * clients may prefix the host with the destination port in the format
            +     * `{port}-{host}`.
            +     * 
            + * + * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The host to set. + * @return This builder for chaining. + */ + public Builder setHost(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - bitField0_ |= 0x00000100; + host_ = value; + bitField0_ |= 0x00002000; onChanged(); return this; } @@ -3077,30 +7504,21 @@ public Builder setStartTime(com.google.protobuf.Timestamp.Builder builderForValu * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Output only. Host to which clients can send HTTPS traffic that will be
            +     * received by the workstation. Authorized traffic will be received to the
            +     * workstation as HTTP on port 80. To send traffic to a different port,
            +     * clients may prefix the host with the destination port in the format
            +     * `{port}-{host}`.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public Builder mergeStartTime(com.google.protobuf.Timestamp value) { - if (startTimeBuilder_ == null) { - if (((bitField0_ & 0x00000100) != 0) - && startTime_ != null - && startTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getStartTimeBuilder().mergeFrom(value); - } else { - startTime_ = value; - } - } else { - startTimeBuilder_.mergeFrom(value); - } - if (startTime_ != null) { - bitField0_ |= 0x00000100; - onChanged(); - } + public Builder clearHost() { + host_ = getDefaultInstance().getHost(); + bitField0_ = (bitField0_ & ~0x00002000); + onChanged(); return this; } @@ -3108,161 +7526,189 @@ public Builder mergeStartTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Output only. Host to which clients can send HTTPS traffic that will be
            +     * received by the workstation. Authorized traffic will be received to the
            +     * workstation as HTTP on port 80. To send traffic to a different port,
            +     * clients may prefix the host with the destination port in the format
            +     * `{port}-{host}`.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for host to set. + * @return This builder for chaining. */ - public Builder clearStartTime() { - bitField0_ = (bitField0_ & ~0x00000100); - startTime_ = null; - if (startTimeBuilder_ != null) { - startTimeBuilder_.dispose(); - startTimeBuilder_ = null; + public Builder setHostBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } + checkByteStringIsUtf8(value); + host_ = value; + bitField0_ |= 0x00002000; onChanged(); return this; } + private com.google.protobuf.MapField env_; + + private com.google.protobuf.MapField internalGetEnv() { + if (env_ == null) { + return com.google.protobuf.MapField.emptyMapField(EnvDefaultEntryHolder.defaultEntry); + } + return env_; + } + + private com.google.protobuf.MapField + internalGetMutableEnv() { + if (env_ == null) { + env_ = com.google.protobuf.MapField.newMapField(EnvDefaultEntryHolder.defaultEntry); + } + if (!env_.isMutable()) { + env_ = env_.copy(); + } + bitField0_ |= 0x00004000; + onChanged(); + return env_; + } + + public int getEnvCount() { + return internalGetEnv().getMap().size(); + } + /** * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Optional. Environment variables passed to the workstation container's
            +     * entrypoint.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ - public com.google.protobuf.Timestamp.Builder getStartTimeBuilder() { - bitField0_ |= 0x00000100; - onChanged(); - return internalGetStartTimeFieldBuilder().getBuilder(); + @java.lang.Override + public boolean containsEnv(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetEnv().getMap().containsKey(key); + } + + /** Use {@link #getEnvMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getEnv() { + return getEnvMap(); } /** * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Optional. Environment variables passed to the workstation container's
            +     * entrypoint.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ - public com.google.protobuf.TimestampOrBuilder getStartTimeOrBuilder() { - if (startTimeBuilder_ != null) { - return startTimeBuilder_.getMessageOrBuilder(); - } else { - return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; - } + @java.lang.Override + public java.util.Map getEnvMap() { + return internalGetEnv().getMap(); } /** * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Optional. Environment variables passed to the workstation container's
            +     * entrypoint.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetStartTimeFieldBuilder() { - if (startTimeBuilder_ == null) { - startTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getStartTime(), getParentForChildren(), isClean()); - startTime_ = null; + @java.lang.Override + public /* nullable */ java.lang.String getEnvOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); } - return startTimeBuilder_; + java.util.Map map = internalGetEnv().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; } - private com.google.protobuf.Timestamp deleteTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - deleteTimeBuilder_; - /** * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Optional. Environment variables passed to the workstation container's
            +     * entrypoint.
                  * 
            * - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the deleteTime field is set. + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ - public boolean hasDeleteTime() { - return ((bitField0_ & 0x00000200) != 0); + @java.lang.Override + public java.lang.String getEnvOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetEnv().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public Builder clearEnv() { + bitField0_ = (bitField0_ & ~0x00004000); + internalGetMutableEnv().getMutableMap().clear(); + return this; } /** * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Optional. Environment variables passed to the workstation container's
            +     * entrypoint.
                  * 
            * - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The deleteTime. + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ - public com.google.protobuf.Timestamp getDeleteTime() { - if (deleteTimeBuilder_ == null) { - return deleteTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : deleteTime_; - } else { - return deleteTimeBuilder_.getMessage(); + public Builder removeEnv(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } + internalGetMutableEnv().getMutableMap().remove(key); + return this; + } + + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableEnv() { + bitField0_ |= 0x00004000; + return internalGetMutableEnv().getMutableMap(); } /** * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Optional. Environment variables passed to the workstation container's
            +     * entrypoint.
                  * 
            * - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ - public Builder setDeleteTime(com.google.protobuf.Timestamp value) { - if (deleteTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - deleteTime_ = value; - } else { - deleteTimeBuilder_.setMessage(value); + public Builder putEnv(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); } - bitField0_ |= 0x00000200; - onChanged(); + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableEnv().getMutableMap().put(key, value); + bitField0_ |= 0x00004000; return this; } @@ -3270,163 +7716,164 @@ public Builder setDeleteTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Optional. Environment variables passed to the workstation container's
            +     * entrypoint.
                  * 
            * - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ - public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (deleteTimeBuilder_ == null) { - deleteTime_ = builderForValue.build(); - } else { - deleteTimeBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000200; - onChanged(); + public Builder putAllEnv(java.util.Map values) { + internalGetMutableEnv().getMutableMap().putAll(values); + bitField0_ |= 0x00004000; return this; } + private java.lang.Object kmsKey_ = ""; + /** * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Output only. The name of the Google Cloud KMS encryption key used to
            +     * encrypt this workstation. The KMS key can only be configured in the
            +     * WorkstationConfig. The expected format is
            +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
                  * 
            * - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The kmsKey. */ - public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { - if (deleteTimeBuilder_ == null) { - if (((bitField0_ & 0x00000200) != 0) - && deleteTime_ != null - && deleteTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getDeleteTimeBuilder().mergeFrom(value); - } else { - deleteTime_ = value; - } + public java.lang.String getKmsKey() { + java.lang.Object ref = kmsKey_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + kmsKey_ = s; + return s; } else { - deleteTimeBuilder_.mergeFrom(value); - } - if (deleteTime_ != null) { - bitField0_ |= 0x00000200; - onChanged(); + return (java.lang.String) ref; } - return this; } /** * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Output only. The name of the Google Cloud KMS encryption key used to
            +     * encrypt this workstation. The KMS key can only be configured in the
            +     * WorkstationConfig. The expected format is
            +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
                  * 
            * - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for kmsKey. */ - public Builder clearDeleteTime() { - bitField0_ = (bitField0_ & ~0x00000200); - deleteTime_ = null; - if (deleteTimeBuilder_ != null) { - deleteTimeBuilder_.dispose(); - deleteTimeBuilder_ = null; + public com.google.protobuf.ByteString getKmsKeyBytes() { + java.lang.Object ref = kmsKey_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - onChanged(); - return this; } /** * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Output only. The name of the Google Cloud KMS encryption key used to
            +     * encrypt this workstation. The KMS key can only be configured in the
            +     * WorkstationConfig. The expected format is
            +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
                  * 
            * - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The kmsKey to set. + * @return This builder for chaining. */ - public com.google.protobuf.Timestamp.Builder getDeleteTimeBuilder() { - bitField0_ |= 0x00000200; + public Builder setKmsKey(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + kmsKey_ = value; + bitField0_ |= 0x00008000; onChanged(); - return internalGetDeleteTimeFieldBuilder().getBuilder(); + return this; } /** * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Output only. The name of the Google Cloud KMS encryption key used to
            +     * encrypt this workstation. The KMS key can only be configured in the
            +     * WorkstationConfig. The expected format is
            +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
                  * 
            * - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { - if (deleteTimeBuilder_ != null) { - return deleteTimeBuilder_.getMessageOrBuilder(); - } else { - return deleteTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : deleteTime_; - } + public Builder clearKmsKey() { + kmsKey_ = getDefaultInstance().getKmsKey(); + bitField0_ = (bitField0_ & ~0x00008000); + onChanged(); + return this; } /** * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Output only. The name of the Google Cloud KMS encryption key used to
            +     * encrypt this workstation. The KMS key can only be configured in the
            +     * WorkstationConfig. The expected format is
            +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
                  * 
            * - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for kmsKey to set. + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetDeleteTimeFieldBuilder() { - if (deleteTimeBuilder_ == null) { - deleteTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getDeleteTime(), getParentForChildren(), isClean()); - deleteTime_ = null; + public Builder setKmsKeyBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - return deleteTimeBuilder_; + checkByteStringIsUtf8(value); + kmsKey_ = value; + bitField0_ |= 0x00008000; + onChanged(); + return this; } - private java.lang.Object etag_ = ""; + private java.lang.Object sourceWorkstation_ = ""; /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. The source workstation from which this workstation's persistent
            +     * directories were cloned on creation.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The etag. + * @return The sourceWorkstation. */ - public java.lang.String getEtag() { - java.lang.Object ref = etag_; + public java.lang.String getSourceWorkstation() { + java.lang.Object ref = sourceWorkstation_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); - etag_ = s; + sourceWorkstation_ = s; return s; } else { return (java.lang.String) ref; @@ -3437,21 +7884,20 @@ public java.lang.String getEtag() { * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. The source workstation from which this workstation's persistent
            +     * directories were cloned on creation.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The bytes for etag. + * @return The bytes for sourceWorkstation. */ - public com.google.protobuf.ByteString getEtagBytes() { - java.lang.Object ref = etag_; + public com.google.protobuf.ByteString getSourceWorkstationBytes() { + java.lang.Object ref = sourceWorkstation_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - etag_ = b; + sourceWorkstation_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; @@ -3462,22 +7908,21 @@ public com.google.protobuf.ByteString getEtagBytes() { * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. The source workstation from which this workstation's persistent
            +     * directories were cloned on creation.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The etag to set. + * @param value The sourceWorkstation to set. * @return This builder for chaining. */ - public Builder setEtag(java.lang.String value) { + public Builder setSourceWorkstation(java.lang.String value) { if (value == null) { throw new NullPointerException(); } - etag_ = value; - bitField0_ |= 0x00000400; + sourceWorkstation_ = value; + bitField0_ |= 0x00010000; onChanged(); return this; } @@ -3486,18 +7931,17 @@ public Builder setEtag(java.lang.String value) { * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. The source workstation from which this workstation's persistent
            +     * directories were cloned on creation.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; * * @return This builder for chaining. */ - public Builder clearEtag() { - etag_ = getDefaultInstance().getEtag(); - bitField0_ = (bitField0_ & ~0x00000400); + public Builder clearSourceWorkstation() { + sourceWorkstation_ = getDefaultInstance().getSourceWorkstation(); + bitField0_ = (bitField0_ & ~0x00010000); onChanged(); return this; } @@ -3506,110 +7950,97 @@ public Builder clearEtag() { * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. The source workstation from which this workstation's persistent
            +     * directories were cloned on creation.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The bytes for etag to set. + * @param value The bytes for sourceWorkstation to set. * @return This builder for chaining. */ - public Builder setEtagBytes(com.google.protobuf.ByteString value) { + public Builder setSourceWorkstationBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); - etag_ = value; - bitField0_ |= 0x00000400; + sourceWorkstation_ = value; + bitField0_ |= 0x00010000; onChanged(); return this; } - private int state_ = 0; - - /** - * - * - *
            -     * Output only. Current state of the workstation.
            -     * 
            - * - * - * .google.cloud.workstations.v1.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The enum numeric value on the wire for state. - */ - @java.lang.Override - public int getStateValue() { - return state_; - } + private com.google.cloud.workstations.v1.Workstation.RuntimeHost runtimeHost_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.Workstation.RuntimeHost, + com.google.cloud.workstations.v1.Workstation.RuntimeHost.Builder, + com.google.cloud.workstations.v1.Workstation.RuntimeHostOrBuilder> + runtimeHostBuilder_; /** * * *
            -     * Output only. Current state of the workstation.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * * - * .google.cloud.workstations.v1.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; * * - * @param value The enum numeric value on the wire for state to set. - * @return This builder for chaining. + * @return Whether the runtimeHost field is set. */ - public Builder setStateValue(int value) { - state_ = value; - bitField0_ |= 0x00000800; - onChanged(); - return this; + public boolean hasRuntimeHost() { + return ((bitField0_ & 0x00020000) != 0); } /** * * *
            -     * Output only. Current state of the workstation.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * * - * .google.cloud.workstations.v1.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; * * - * @return The state. + * @return The runtimeHost. */ - @java.lang.Override - public com.google.cloud.workstations.v1.Workstation.State getState() { - com.google.cloud.workstations.v1.Workstation.State result = - com.google.cloud.workstations.v1.Workstation.State.forNumber(state_); - return result == null - ? com.google.cloud.workstations.v1.Workstation.State.UNRECOGNIZED - : result; + public com.google.cloud.workstations.v1.Workstation.RuntimeHost getRuntimeHost() { + if (runtimeHostBuilder_ == null) { + return runtimeHost_ == null + ? com.google.cloud.workstations.v1.Workstation.RuntimeHost.getDefaultInstance() + : runtimeHost_; + } else { + return runtimeHostBuilder_.getMessage(); + } } /** * * *
            -     * Output only. Current state of the workstation.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * * - * .google.cloud.workstations.v1.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @param value The state to set. - * @return This builder for chaining. */ - public Builder setState(com.google.cloud.workstations.v1.Workstation.State value) { - if (value == null) { - throw new NullPointerException(); + public Builder setRuntimeHost(com.google.cloud.workstations.v1.Workstation.RuntimeHost value) { + if (runtimeHostBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + runtimeHost_ = value; + } else { + runtimeHostBuilder_.setMessage(value); } - bitField0_ |= 0x00000800; - state_ = value.getNumber(); + bitField0_ |= 0x00020000; onChanged(); return this; } @@ -3618,151 +8049,151 @@ public Builder setState(com.google.cloud.workstations.v1.Workstation.State value * * *
            -     * Output only. Current state of the workstation.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * * - * .google.cloud.workstations.v1.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @return This builder for chaining. */ - public Builder clearState() { - bitField0_ = (bitField0_ & ~0x00000800); - state_ = 0; + public Builder setRuntimeHost( + com.google.cloud.workstations.v1.Workstation.RuntimeHost.Builder builderForValue) { + if (runtimeHostBuilder_ == null) { + runtimeHost_ = builderForValue.build(); + } else { + runtimeHostBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00020000; onChanged(); return this; } - private java.lang.Object host_ = ""; - /** * * *
            -     * Output only. Host to which clients can send HTTPS traffic that will be
            -     * received by the workstation. Authorized traffic will be received to the
            -     * workstation as HTTP on port 80. To send traffic to a different port,
            -     * clients may prefix the host with the destination port in the format
            -     * `{port}-{host}`.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * - * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The host. + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getHost() { - java.lang.Object ref = host_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - host_ = s; - return s; + public Builder mergeRuntimeHost( + com.google.cloud.workstations.v1.Workstation.RuntimeHost value) { + if (runtimeHostBuilder_ == null) { + if (((bitField0_ & 0x00020000) != 0) + && runtimeHost_ != null + && runtimeHost_ + != com.google.cloud.workstations.v1.Workstation.RuntimeHost.getDefaultInstance()) { + getRuntimeHostBuilder().mergeFrom(value); + } else { + runtimeHost_ = value; + } } else { - return (java.lang.String) ref; + runtimeHostBuilder_.mergeFrom(value); } + if (runtimeHost_ != null) { + bitField0_ |= 0x00020000; + onChanged(); + } + return this; } /** * * *
            -     * Output only. Host to which clients can send HTTPS traffic that will be
            -     * received by the workstation. Authorized traffic will be received to the
            -     * workstation as HTTP on port 80. To send traffic to a different port,
            -     * clients may prefix the host with the destination port in the format
            -     * `{port}-{host}`.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * - * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for host. + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getHostBytes() { - java.lang.Object ref = host_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - host_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + public Builder clearRuntimeHost() { + bitField0_ = (bitField0_ & ~0x00020000); + runtimeHost_ = null; + if (runtimeHostBuilder_ != null) { + runtimeHostBuilder_.dispose(); + runtimeHostBuilder_ = null; } + onChanged(); + return this; } /** * * *
            -     * Output only. Host to which clients can send HTTPS traffic that will be
            -     * received by the workstation. Authorized traffic will be received to the
            -     * workstation as HTTP on port 80. To send traffic to a different port,
            -     * clients may prefix the host with the destination port in the format
            -     * `{port}-{host}`.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * - * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The host to set. - * @return This builder for chaining. + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setHost(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - host_ = value; - bitField0_ |= 0x00001000; + public com.google.cloud.workstations.v1.Workstation.RuntimeHost.Builder + getRuntimeHostBuilder() { + bitField0_ |= 0x00020000; onChanged(); - return this; + return internalGetRuntimeHostFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. Host to which clients can send HTTPS traffic that will be
            -     * received by the workstation. Authorized traffic will be received to the
            -     * workstation as HTTP on port 80. To send traffic to a different port,
            -     * clients may prefix the host with the destination port in the format
            -     * `{port}-{host}`.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * - * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearHost() { - host_ = getDefaultInstance().getHost(); - bitField0_ = (bitField0_ & ~0x00001000); - onChanged(); - return this; + public com.google.cloud.workstations.v1.Workstation.RuntimeHostOrBuilder + getRuntimeHostOrBuilder() { + if (runtimeHostBuilder_ != null) { + return runtimeHostBuilder_.getMessageOrBuilder(); + } else { + return runtimeHost_ == null + ? com.google.cloud.workstations.v1.Workstation.RuntimeHost.getDefaultInstance() + : runtimeHost_; + } } /** * * *
            -     * Output only. Host to which clients can send HTTPS traffic that will be
            -     * received by the workstation. Authorized traffic will be received to the
            -     * workstation as HTTP on port 80. To send traffic to a different port,
            -     * clients may prefix the host with the destination port in the format
            -     * `{port}-{host}`.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * - * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The bytes for host to set. - * @return This builder for chaining. + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setHostBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.Workstation.RuntimeHost, + com.google.cloud.workstations.v1.Workstation.RuntimeHost.Builder, + com.google.cloud.workstations.v1.Workstation.RuntimeHostOrBuilder> + internalGetRuntimeHostFieldBuilder() { + if (runtimeHostBuilder_ == null) { + runtimeHostBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.Workstation.RuntimeHost, + com.google.cloud.workstations.v1.Workstation.RuntimeHost.Builder, + com.google.cloud.workstations.v1.Workstation.RuntimeHostOrBuilder>( + getRuntimeHost(), getParentForChildren(), isClean()); + runtimeHost_ = null; } - checkByteStringIsUtf8(value); - host_ = value; - bitField0_ |= 0x00001000; - onChanged(); - return this; + return runtimeHostBuilder_; } // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.Workstation) diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationCluster.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationCluster.java index 9c19b36cfbe9..ee42fc930aaf 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationCluster.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationCluster.java @@ -63,6 +63,8 @@ private WorkstationCluster() { subnetwork_ = ""; controlPlaneIp_ = ""; conditions_ = java.util.Collections.emptyList(); + workstationAuthorizationUrl_ = ""; + workstationLaunchUrl_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -79,6 +81,8 @@ protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldRefl return internalGetAnnotations(); case 15: return internalGetLabels(); + case 20: + return internalGetTags(); default: throw new RuntimeException("Invalid map field number: " + number); } @@ -151,7 +155,7 @@ public interface PrivateClusterConfigOrBuilder * *
                  * Output only. Service attachment URI for the workstation cluster. The
            -     * service attachemnt is created when private endpoint is enabled. To access
            +     * service attachment is created when private endpoint is enabled. To access
                  * workstations in the workstation cluster, configure access to the managed
                  * service using [Private Service
                  * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -168,7 +172,7 @@ public interface PrivateClusterConfigOrBuilder
                  *
                  * 
                  * Output only. Service attachment URI for the workstation cluster. The
            -     * service attachemnt is created when private endpoint is enabled. To access
            +     * service attachment is created when private endpoint is enabled. To access
                  * workstations in the workstation cluster, configure access to the managed
                  * service using [Private Service
                  * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -385,7 +389,7 @@ public com.google.protobuf.ByteString getClusterHostnameBytes() {
                  *
                  * 
                  * Output only. Service attachment URI for the workstation cluster. The
            -     * service attachemnt is created when private endpoint is enabled. To access
            +     * service attachment is created when private endpoint is enabled. To access
                  * workstations in the workstation cluster, configure access to the managed
                  * service using [Private Service
                  * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -413,7 +417,7 @@ public java.lang.String getServiceAttachmentUri() {
                  *
                  * 
                  * Output only. Service attachment URI for the workstation cluster. The
            -     * service attachemnt is created when private endpoint is enabled. To access
            +     * service attachment is created when private endpoint is enabled. To access
                  * workstations in the workstation cluster, configure access to the managed
                  * service using [Private Service
                  * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -1119,7 +1123,7 @@ public Builder setClusterHostnameBytes(com.google.protobuf.ByteString value) {
                    *
                    * 
                    * Output only. Service attachment URI for the workstation cluster. The
            -       * service attachemnt is created when private endpoint is enabled. To access
            +       * service attachment is created when private endpoint is enabled. To access
                    * workstations in the workstation cluster, configure access to the managed
                    * service using [Private Service
                    * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -1147,7 +1151,7 @@ public java.lang.String getServiceAttachmentUri() {
                    *
                    * 
                    * Output only. Service attachment URI for the workstation cluster. The
            -       * service attachemnt is created when private endpoint is enabled. To access
            +       * service attachment is created when private endpoint is enabled. To access
                    * workstations in the workstation cluster, configure access to the managed
                    * service using [Private Service
                    * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -1175,7 +1179,7 @@ public com.google.protobuf.ByteString getServiceAttachmentUriBytes() {
                    *
                    * 
                    * Output only. Service attachment URI for the workstation cluster. The
            -       * service attachemnt is created when private endpoint is enabled. To access
            +       * service attachment is created when private endpoint is enabled. To access
                    * workstations in the workstation cluster, configure access to the managed
                    * service using [Private Service
                    * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -1202,7 +1206,7 @@ public Builder setServiceAttachmentUri(java.lang.String value) {
                    *
                    * 
                    * Output only. Service attachment URI for the workstation cluster. The
            -       * service attachemnt is created when private endpoint is enabled. To access
            +       * service attachment is created when private endpoint is enabled. To access
                    * workstations in the workstation cluster, configure access to the managed
                    * service using [Private Service
                    * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -1225,7 +1229,7 @@ public Builder clearServiceAttachmentUri() {
                    *
                    * 
                    * Output only. Service attachment URI for the workstation cluster. The
            -       * service attachemnt is created when private endpoint is enabled. To access
            +       * service attachment is created when private endpoint is enabled. To access
                    * workstations in the workstation cluster, configure access to the managed
                    * service using [Private Service
                    * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -1514,1972 +1518,4398 @@ public com.google.protobuf.Parser getParserForType() {
                 }
               }
             
            -  private int bitField0_;
            -  public static final int NAME_FIELD_NUMBER = 1;
            +  public interface DomainConfigOrBuilder
            +      extends
            +      // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationCluster.DomainConfig)
            +      com.google.protobuf.MessageOrBuilder {
             
            -  @SuppressWarnings("serial")
            -  private volatile java.lang.Object name_ = "";
            +    /**
            +     *
            +     *
            +     * 
            +     * Immutable. Domain used by Workstations for HTTP ingress.
            +     * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The domain. + */ + java.lang.String getDomain(); - /** - * - * - *
            -   * Full name of this workstation cluster.
            -   * 
            - * - * string name = 1; - * - * @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; - } + /** + * + * + *
            +     * Immutable. Domain used by Workstations for HTTP ingress.
            +     * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for domain. + */ + com.google.protobuf.ByteString getDomainBytes(); } /** * * *
            -   * Full name of this workstation cluster.
            +   * Configuration options for a custom domain.
                * 
            * - * string name = 1; - * - * @return The bytes for name. + * Protobuf type {@code google.cloud.workstations.v1.WorkstationCluster.DomainConfig} */ - @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 class DomainConfig extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationCluster.DomainConfig) + DomainConfigOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "DomainConfig"); } - } - public static final int DISPLAY_NAME_FIELD_NUMBER = 2; + // Use DomainConfig.newBuilder() to construct. + private DomainConfig(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } - @SuppressWarnings("serial") - private volatile java.lang.Object displayName_ = ""; + private DomainConfig() { + domain_ = ""; + } - /** - * - * - *
            -   * Optional. Human-readable name for this workstation cluster.
            -   * 
            - * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The displayName. - */ - @java.lang.Override - public java.lang.String getDisplayName() { - java.lang.Object ref = displayName_; - 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(); - displayName_ = s; - return s; + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_DomainConfig_descriptor; } - } - /** - * - * - *
            -   * Optional. Human-readable name for this workstation cluster.
            -   * 
            - * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for displayName. - */ - @java.lang.Override - public com.google.protobuf.ByteString getDisplayNameBytes() { - java.lang.Object ref = displayName_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - displayName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_DomainConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig.class, + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig.Builder.class); } - } - public static final int UID_FIELD_NUMBER = 3; + public static final int DOMAIN_FIELD_NUMBER = 1; - @SuppressWarnings("serial") - private volatile java.lang.Object uid_ = ""; + @SuppressWarnings("serial") + private volatile java.lang.Object domain_ = ""; - /** - * - * - *
            -   * Output only. A system-assigned unique identifier for this workstation
            -   * cluster.
            -   * 
            - * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The uid. - */ - @java.lang.Override - public java.lang.String getUid() { - java.lang.Object ref = uid_; - 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(); - uid_ = s; - return s; + /** + * + * + *
            +     * Immutable. Domain used by Workstations for HTTP ingress.
            +     * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The domain. + */ + @java.lang.Override + public java.lang.String getDomain() { + java.lang.Object ref = domain_; + 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(); + domain_ = s; + return s; + } } - } - /** - * - * - *
            -   * Output only. A system-assigned unique identifier for this workstation
            -   * cluster.
            -   * 
            - * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for uid. - */ - @java.lang.Override - public com.google.protobuf.ByteString getUidBytes() { - java.lang.Object ref = uid_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - uid_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
            +     * Immutable. Domain used by Workstations for HTTP ingress.
            +     * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for domain. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDomainBytes() { + java.lang.Object ref = domain_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + domain_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - } - - public static final int RECONCILING_FIELD_NUMBER = 4; - private boolean reconciling_ = false; - - /** - * - * - *
            -   * Output only. Indicates whether this workstation cluster is currently being
            -   * updated to match its intended state.
            -   * 
            - * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The reconciling. - */ - @java.lang.Override - public boolean getReconciling() { - return reconciling_; - } - public static final int ANNOTATIONS_FIELD_NUMBER = 5; + private byte memoizedIsInitialized = -1; - private static final class AnnotationsDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationCluster_AnnotationsEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - @SuppressWarnings("serial") - private com.google.protobuf.MapField annotations_; + memoizedIsInitialized = 1; + return true; + } - private com.google.protobuf.MapField - internalGetAnnotations() { - if (annotations_ == null) { - return com.google.protobuf.MapField.emptyMapField(AnnotationsDefaultEntryHolder.defaultEntry); + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(domain_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, domain_); + } + getUnknownFields().writeTo(output); } - return annotations_; - } - public int getAnnotationsCount() { - return internalGetAnnotations().getMap().size(); - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public boolean containsAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(domain_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, domain_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - return internalGetAnnotations().getMap().containsKey(key); - } - /** Use {@link #getAnnotationsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getAnnotations() { - return getAnnotationsMap(); - } + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig other = + (com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig) obj; - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.Map getAnnotationsMap() { - return internalGetAnnotations().getMap(); - } + if (!getDomain().equals(other.getDomain())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public /* nullable */ java.lang.String getAnnotationsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + DOMAIN_FIELD_NUMBER; + hash = (53 * hash) + getDomain().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - java.util.Map map = internalGetAnnotations().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.lang.String getAnnotationsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - java.util.Map map = internalGetAnnotations().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + + public static com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - return map.get(key); - } - public static final int LABELS_FIELD_NUMBER = 15; + public static com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - private static final class LabelsDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationCluster_LabelsEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + public static com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - @SuppressWarnings("serial") - private com.google.protobuf.MapField labels_; + public static com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - private com.google.protobuf.MapField internalGetLabels() { - if (labels_ == null) { - return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); + public static com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - return labels_; - } - public int getLabelsCount() { - return internalGetLabels().getMap().size(); - } + public static com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation cluster and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public boolean containsLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - return internalGetLabels().getMap().containsKey(key); - } - /** Use {@link #getLabelsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getLabels() { - return getLabelsMap(); - } + public static com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation cluster and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.util.Map getLabelsMap() { - return internalGetLabels().getMap(); - } + public static com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig + parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation cluster and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public /* nullable */ java.lang.String getLabelsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - java.util.Map map = internalGetLabels().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation cluster and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.lang.String getLabelsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig 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.util.Map map = internalGetLabels().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); } - return map.get(key); - } - public static final int CREATE_TIME_FIELD_NUMBER = 6; - private com.google.protobuf.Timestamp createTime_; + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the createTime field is set. - */ - @java.lang.Override - public boolean hasCreateTime() { - return ((bitField0_ & 0x00000001) != 0); - } + public static Builder newBuilder( + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The createTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getCreateTime() { - return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; - } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { - return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; - } + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } - public static final int UPDATE_TIME_FIELD_NUMBER = 7; - private com.google.protobuf.Timestamp updateTime_; + /** + * + * + *
            +     * Configuration options for a custom domain.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationCluster.DomainConfig} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationCluster.DomainConfig) + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_DomainConfig_descriptor; + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was most recently updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the updateTime field is set. - */ - @java.lang.Override - public boolean hasUpdateTime() { - return ((bitField0_ & 0x00000002) != 0); - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_DomainConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig.class, + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig.Builder.class); + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was most recently updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The updateTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getUpdateTime() { - return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; - } + // Construct using + // com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig.newBuilder() + private Builder() {} - /** - * - * - *
            -   * Output only. Time when this workstation cluster was most recently updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { - return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; - } + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } - public static final int DELETE_TIME_FIELD_NUMBER = 8; - private com.google.protobuf.Timestamp deleteTime_; + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + domain_ = ""; + return this; + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the deleteTime field is set. - */ - @java.lang.Override - public boolean hasDeleteTime() { - return ((bitField0_ & 0x00000004) != 0); - } + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_DomainConfig_descriptor; + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The deleteTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getDeleteTime() { - return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig + .getDefaultInstance(); + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { - return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig build() { + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - public static final int ETAG_FIELD_NUMBER = 9; + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig buildPartial() { + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig result = + new com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - @SuppressWarnings("serial") - private volatile java.lang.Object etag_ = ""; + private void buildPartial0( + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.domain_ = domain_; + } + } - /** - * - * - *
            -   * Optional. Checksum computed by the server. May be sent on update and delete
            -   * requests to make sure that the client has an up-to-date value before
            -   * proceeding.
            -   * 
            - * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The etag. - */ - @java.lang.Override - public java.lang.String getEtag() { - java.lang.Object ref = etag_; - 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(); - etag_ = s; - return s; - } - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig) { + return mergeFrom( + (com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig) other); + } else { + super.mergeFrom(other); + return this; + } + } - /** - * - * - *
            -   * Optional. Checksum computed by the server. May be sent on update and delete
            -   * requests to make sure that the client has an up-to-date value before
            -   * proceeding.
            -   * 
            - * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for etag. - */ - @java.lang.Override - public com.google.protobuf.ByteString getEtagBytes() { - java.lang.Object ref = etag_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - etag_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + public Builder mergeFrom( + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig other) { + if (other + == com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig + .getDefaultInstance()) return this; + if (!other.getDomain().isEmpty()) { + domain_ = other.domain_; + bitField0_ |= 0x00000001; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + domain_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object domain_ = ""; + + /** + * + * + *
            +       * Immutable. Domain used by Workstations for HTTP ingress.
            +       * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The domain. + */ + public java.lang.String getDomain() { + java.lang.Object ref = domain_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + domain_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Immutable. Domain used by Workstations for HTTP ingress.
            +       * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for domain. + */ + public com.google.protobuf.ByteString getDomainBytes() { + java.lang.Object ref = domain_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + domain_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Immutable. Domain used by Workstations for HTTP ingress.
            +       * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The domain to set. + * @return This builder for chaining. + */ + public Builder setDomain(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + domain_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Immutable. Domain used by Workstations for HTTP ingress.
            +       * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return This builder for chaining. + */ + public Builder clearDomain() { + domain_ = getDefaultInstance().getDomain(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Immutable. Domain used by Workstations for HTTP ingress.
            +       * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The bytes for domain to set. + * @return This builder for chaining. + */ + public Builder setDomainBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + domain_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationCluster.DomainConfig) } - } - public static final int NETWORK_FIELD_NUMBER = 10; + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationCluster.DomainConfig) + private static final com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig + DEFAULT_INSTANCE; - @SuppressWarnings("serial") - private volatile java.lang.Object network_ = ""; + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig(); + } - /** - * - * - *
            -   * Immutable. Name of the Compute Engine network in which instances associated
            -   * with this workstation cluster will be created.
            -   * 
            - * - * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The network. - */ - @java.lang.Override - public java.lang.String getNetwork() { - java.lang.Object ref = network_; - 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(); - network_ = s; - return s; + public static com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig + getDefaultInstance() { + return DEFAULT_INSTANCE; } - } - /** - * - * - *
            -   * Immutable. Name of the Compute Engine network in which instances associated
            -   * with this workstation cluster will be created.
            -   * 
            - * - * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for network. - */ - @java.lang.Override - public com.google.protobuf.ByteString getNetworkBytes() { - java.lang.Object ref = network_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - network_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public DomainConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } } - public static final int SUBNETWORK_FIELD_NUMBER = 11; + public interface GatewayConfigOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationCluster.GatewayConfig) + com.google.protobuf.MessageOrBuilder { - @SuppressWarnings("serial") - private volatile java.lang.Object subnetwork_ = ""; + /** + * + * + *
            +     * Optional. Whether HTTP/2 is enabled for this workstation cluster.
            +     * Defaults to false.
            +     * 
            + * + * bool http2_enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The http2Enabled. + */ + boolean getHttp2Enabled(); + } /** * * *
            -   * Immutable. Name of the Compute Engine subnetwork in which instances
            -   * associated with this workstation cluster will be created. Must be part of
            -   * the subnetwork specified for this workstation cluster.
            +   * Configuration options for Cluster HTTP Gateway.
                * 
            * - * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The subnetwork. + * Protobuf type {@code google.cloud.workstations.v1.WorkstationCluster.GatewayConfig} */ - @java.lang.Override - public java.lang.String getSubnetwork() { - java.lang.Object ref = subnetwork_; - 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(); - subnetwork_ = s; - return s; - } - } + public static final class GatewayConfig extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationCluster.GatewayConfig) + GatewayConfigOrBuilder { + private static final long serialVersionUID = 0L; - /** - * - * - *
            -   * Immutable. Name of the Compute Engine subnetwork in which instances
            -   * associated with this workstation cluster will be created. Must be part of
            -   * the subnetwork specified for this workstation cluster.
            -   * 
            - * - * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for subnetwork. - */ - @java.lang.Override - public com.google.protobuf.ByteString getSubnetworkBytes() { - java.lang.Object ref = subnetwork_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - subnetwork_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "GatewayConfig"); } - } - public static final int CONTROL_PLANE_IP_FIELD_NUMBER = 16; + // Use GatewayConfig.newBuilder() to construct. + private GatewayConfig(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } - @SuppressWarnings("serial") - private volatile java.lang.Object controlPlaneIp_ = ""; + private GatewayConfig() {} - /** - * - * - *
            -   * Output only. The private IP address of the control plane for this
            -   * workstation cluster. Workstation VMs need access to this IP address to work
            -   * with the service, so make sure that your firewall rules allow egress from
            -   * the workstation VMs to this address.
            -   * 
            - * - * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The controlPlaneIp. - */ - @java.lang.Override - public java.lang.String getControlPlaneIp() { - java.lang.Object ref = controlPlaneIp_; - 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(); - controlPlaneIp_ = s; - return s; + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_GatewayConfig_descriptor; } - } - /** - * - * - *
            -   * Output only. The private IP address of the control plane for this
            -   * workstation cluster. Workstation VMs need access to this IP address to work
            -   * with the service, so make sure that your firewall rules allow egress from
            -   * the workstation VMs to this address.
            -   * 
            - * - * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for controlPlaneIp. - */ - @java.lang.Override - public com.google.protobuf.ByteString getControlPlaneIpBytes() { - java.lang.Object ref = controlPlaneIp_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - controlPlaneIp_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_GatewayConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig.class, + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig.Builder.class); } - } - public static final int PRIVATE_CLUSTER_CONFIG_FIELD_NUMBER = 12; - private com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig - privateClusterConfig_; + public static final int HTTP2_ENABLED_FIELD_NUMBER = 1; + private boolean http2Enabled_ = false; - /** - * - * - *
            -   * Optional. Configuration for private workstation cluster.
            -   * 
            - * - * - * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the privateClusterConfig field is set. - */ - @java.lang.Override - public boolean hasPrivateClusterConfig() { - return ((bitField0_ & 0x00000008) != 0); - } + /** + * + * + *
            +     * Optional. Whether HTTP/2 is enabled for this workstation cluster.
            +     * Defaults to false.
            +     * 
            + * + * bool http2_enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The http2Enabled. + */ + @java.lang.Override + public boolean getHttp2Enabled() { + return http2Enabled_; + } - /** - * - * - *
            -   * Optional. Configuration for private workstation cluster.
            -   * 
            - * - * - * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The privateClusterConfig. - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig - getPrivateClusterConfig() { - return privateClusterConfig_ == null - ? com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig - .getDefaultInstance() - : privateClusterConfig_; - } + private byte memoizedIsInitialized = -1; - /** - * - * - *
            -   * Optional. Configuration for private workstation cluster.
            -   * 
            - * - * - * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfigOrBuilder - getPrivateClusterConfigOrBuilder() { - return privateClusterConfig_ == null - ? com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig - .getDefaultInstance() - : privateClusterConfig_; - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - public static final int DEGRADED_FIELD_NUMBER = 13; - private boolean degraded_ = false; + memoizedIsInitialized = 1; + return true; + } - /** - * - * - *
            -   * Output only. Whether this workstation cluster is in degraded mode, in which
            -   * case it may require user action to restore full functionality. Details can
            -   * be found in
            -   * [conditions][google.cloud.workstations.v1.WorkstationCluster.conditions].
            -   * 
            - * - * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The degraded. - */ - @java.lang.Override - public boolean getDegraded() { - return degraded_; - } + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (http2Enabled_ != false) { + output.writeBool(1, http2Enabled_); + } + getUnknownFields().writeTo(output); + } - public static final int CONDITIONS_FIELD_NUMBER = 14; + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - @SuppressWarnings("serial") - private java.util.List conditions_; + size = 0; + if (http2Enabled_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(1, http2Enabled_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - /** - * - * - *
            -   * Output only. Status conditions describing the workstation cluster's current
            -   * state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public java.util.List getConditionsList() { - return conditions_; - } + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig other = + (com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig) obj; - /** - * - * - *
            -   * Output only. Status conditions describing the workstation cluster's current
            -   * state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public java.util.List getConditionsOrBuilderList() { - return conditions_; - } + if (getHttp2Enabled() != other.getHttp2Enabled()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - /** - * - * - *
            -   * Output only. Status conditions describing the workstation cluster's current
            -   * state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public int getConditionsCount() { - return conditions_.size(); - } - - /** - * - * - *
            -   * Output only. Status conditions describing the workstation cluster's current
            -   * state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.rpc.Status getConditions(int index) { - return conditions_.get(index); - } - - /** - * - * - *
            -   * Output only. Status conditions describing the workstation cluster's current
            -   * state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { - return conditions_.get(index); - } + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + HTTP2_ENABLED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getHttp2Enabled()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - private byte memoizedIsInitialized = -1; + public static com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + public static com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - memoizedIsInitialized = 1; - return true; - } + public static com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - @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_); + public static com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, displayName_); + + public static com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 3, uid_); + + public static com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - if (reconciling_ != false) { - output.writeBool(4, reconciling_); + + public static com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetAnnotations(), AnnotationsDefaultEntryHolder.defaultEntry, 5); - if (((bitField0_ & 0x00000001) != 0)) { - output.writeMessage(6, getCreateTime()); + + public static com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - if (((bitField0_ & 0x00000002) != 0)) { - output.writeMessage(7, getUpdateTime()); + + public static com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); } - if (((bitField0_ & 0x00000004) != 0)) { - output.writeMessage(8, getDeleteTime()); + + public static com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig + parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 9, etag_); + + public static com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(network_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 10, network_); + + public static com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(subnetwork_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 11, subnetwork_); + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); } - if (((bitField0_ & 0x00000008) != 0)) { - output.writeMessage(12, getPrivateClusterConfig()); + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); } - if (degraded_ != false) { - output.writeBool(13, degraded_); + + public static Builder newBuilder( + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } - for (int i = 0; i < conditions_.size(); i++) { - output.writeMessage(14, conditions_.get(i)); + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 15); - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(controlPlaneIp_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 16, controlPlaneIp_); + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; } - getUnknownFields().writeTo(output); - } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + /** + * + * + *
            +     * Configuration options for Cluster HTTP Gateway.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationCluster.GatewayConfig} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationCluster.GatewayConfig) + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_GatewayConfig_descriptor; + } - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(2, displayName_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(3, uid_); - } - if (reconciling_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, reconciling_); - } - for (java.util.Map.Entry entry : - internalGetAnnotations().getMap().entrySet()) { - com.google.protobuf.MapEntry annotations__ = - AnnotationsDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, annotations__); - } - if (((bitField0_ & 0x00000001) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getCreateTime()); - } - if (((bitField0_ & 0x00000002) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getUpdateTime()); - } - if (((bitField0_ & 0x00000004) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getDeleteTime()); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(9, etag_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(network_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(10, network_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(subnetwork_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(11, subnetwork_); - } - if (((bitField0_ & 0x00000008) != 0)) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize(12, getPrivateClusterConfig()); - } - if (degraded_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(13, degraded_); - } - for (int i = 0; i < conditions_.size(); i++) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, conditions_.get(i)); - } - for (java.util.Map.Entry entry : - internalGetLabels().getMap().entrySet()) { - com.google.protobuf.MapEntry labels__ = - LabelsDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(15, labels__); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(controlPlaneIp_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(16, controlPlaneIp_); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_GatewayConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig.class, + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig.Builder.class); + } - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof com.google.cloud.workstations.v1.WorkstationCluster)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1.WorkstationCluster other = - (com.google.cloud.workstations.v1.WorkstationCluster) obj; + // Construct using + // com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig.newBuilder() + private Builder() {} - if (!getName().equals(other.getName())) return false; - if (!getDisplayName().equals(other.getDisplayName())) return false; - if (!getUid().equals(other.getUid())) return false; - if (getReconciling() != other.getReconciling()) return false; - if (!internalGetAnnotations().equals(other.internalGetAnnotations())) return false; - if (!internalGetLabels().equals(other.internalGetLabels())) return false; - if (hasCreateTime() != other.hasCreateTime()) return false; - if (hasCreateTime()) { - if (!getCreateTime().equals(other.getCreateTime())) return false; - } - if (hasUpdateTime() != other.hasUpdateTime()) return false; - if (hasUpdateTime()) { - if (!getUpdateTime().equals(other.getUpdateTime())) return false; - } - if (hasDeleteTime() != other.hasDeleteTime()) return false; - if (hasDeleteTime()) { - if (!getDeleteTime().equals(other.getDeleteTime())) return false; - } - if (!getEtag().equals(other.getEtag())) return false; - if (!getNetwork().equals(other.getNetwork())) return false; - if (!getSubnetwork().equals(other.getSubnetwork())) return false; - if (!getControlPlaneIp().equals(other.getControlPlaneIp())) return false; - if (hasPrivateClusterConfig() != other.hasPrivateClusterConfig()) return false; - if (hasPrivateClusterConfig()) { - if (!getPrivateClusterConfig().equals(other.getPrivateClusterConfig())) return false; - } - if (getDegraded() != other.getDegraded()) return false; - if (!getConditionsList().equals(other.getConditionsList())) 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) + DISPLAY_NAME_FIELD_NUMBER; - hash = (53 * hash) + getDisplayName().hashCode(); - hash = (37 * hash) + UID_FIELD_NUMBER; - hash = (53 * hash) + getUid().hashCode(); - hash = (37 * hash) + RECONCILING_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReconciling()); - if (!internalGetAnnotations().getMap().isEmpty()) { - hash = (37 * hash) + ANNOTATIONS_FIELD_NUMBER; - hash = (53 * hash) + internalGetAnnotations().hashCode(); - } - if (!internalGetLabels().getMap().isEmpty()) { - hash = (37 * hash) + LABELS_FIELD_NUMBER; - hash = (53 * hash) + internalGetLabels().hashCode(); - } - if (hasCreateTime()) { - hash = (37 * hash) + CREATE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getCreateTime().hashCode(); - } - if (hasUpdateTime()) { - hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getUpdateTime().hashCode(); - } - if (hasDeleteTime()) { - hash = (37 * hash) + DELETE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getDeleteTime().hashCode(); - } - hash = (37 * hash) + ETAG_FIELD_NUMBER; - hash = (53 * hash) + getEtag().hashCode(); - hash = (37 * hash) + NETWORK_FIELD_NUMBER; - hash = (53 * hash) + getNetwork().hashCode(); - hash = (37 * hash) + SUBNETWORK_FIELD_NUMBER; - hash = (53 * hash) + getSubnetwork().hashCode(); - hash = (37 * hash) + CONTROL_PLANE_IP_FIELD_NUMBER; - hash = (53 * hash) + getControlPlaneIp().hashCode(); - if (hasPrivateClusterConfig()) { - hash = (37 * hash) + PRIVATE_CLUSTER_CONFIG_FIELD_NUMBER; - hash = (53 * hash) + getPrivateClusterConfig().hashCode(); - } - hash = (37 * hash) + DEGRADED_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDegraded()); - if (getConditionsCount() > 0) { - hash = (37 * hash) + CONDITIONS_FIELD_NUMBER; - hash = (53 * hash) + getConditionsList().hashCode(); - } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } - public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + http2Enabled_ = false; + return this; + } - public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_GatewayConfig_descriptor; + } - public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig + .getDefaultInstance(); + } - public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig build() { + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig buildPartial() { + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig result = + new com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + private void buildPartial0( + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.http2Enabled_ = http2Enabled_; + } + } - public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig) { + return mergeFrom( + (com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig) other); + } else { + super.mergeFrom(other); + return this; + } + } - public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + public Builder mergeFrom( + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig other) { + if (other + == com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig + .getDefaultInstance()) return this; + if (other.getHttp2Enabled() != false) { + setHttp2Enabled(other.getHttp2Enabled()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1.WorkstationCluster parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } + @java.lang.Override + public final boolean isInitialized() { + return true; + } - public static com.google.cloud.workstations.v1.WorkstationCluster parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + http2Enabled_ = input.readBool(); + bitField0_ |= 0x00000001; + break; + } // case 8 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } - public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + private int bitField0_; - public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + private boolean http2Enabled_; - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } + /** + * + * + *
            +       * Optional. Whether HTTP/2 is enabled for this workstation cluster.
            +       * Defaults to false.
            +       * 
            + * + * bool http2_enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The http2Enabled. + */ + @java.lang.Override + public boolean getHttp2Enabled() { + return http2Enabled_; + } - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } - - public static Builder newBuilder(com.google.cloud.workstations.v1.WorkstationCluster 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 workstation cluster resource in the Cloud Workstations API.
            -   *
            -   * Defines a group of workstations in a particular region and the
            -   * VPC network they're attached to.
            -   * 
            - * - * Protobuf type {@code google.cloud.workstations.v1.WorkstationCluster} - */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationCluster) - com.google.cloud.workstations.v1.WorkstationClusterOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationCluster_descriptor; - } + /** + * + * + *
            +       * Optional. Whether HTTP/2 is enabled for this workstation cluster.
            +       * Defaults to false.
            +       * 
            + * + * bool http2_enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The http2Enabled to set. + * @return This builder for chaining. + */ + public Builder setHttp2Enabled(boolean value) { - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( - int number) { - switch (number) { - case 5: - return internalGetAnnotations(); - case 15: - return internalGetLabels(); - default: - throw new RuntimeException("Invalid map field number: " + number); + http2Enabled_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; } - } - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( - int number) { - switch (number) { - case 5: - return internalGetMutableAnnotations(); - case 15: - return internalGetMutableLabels(); - default: - throw new RuntimeException("Invalid map field number: " + number); + /** + * + * + *
            +       * Optional. Whether HTTP/2 is enabled for this workstation cluster.
            +       * Defaults to false.
            +       * 
            + * + * bool http2_enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearHttp2Enabled() { + bitField0_ = (bitField0_ & ~0x00000001); + http2Enabled_ = false; + onChanged(); + return this; } - } - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationCluster_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.WorkstationCluster.class, - com.google.cloud.workstations.v1.WorkstationCluster.Builder.class); + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationCluster.GatewayConfig) } - // Construct using com.google.cloud.workstations.v1.WorkstationCluster.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); - } + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationCluster.GatewayConfig) + private static final com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig + DEFAULT_INSTANCE; - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig(); } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { - internalGetCreateTimeFieldBuilder(); - internalGetUpdateTimeFieldBuilder(); - internalGetDeleteTimeFieldBuilder(); - internalGetPrivateClusterConfigFieldBuilder(); - internalGetConditionsFieldBuilder(); - } + public static com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig + getDefaultInstance() { + return DEFAULT_INSTANCE; } - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - name_ = ""; - displayName_ = ""; - uid_ = ""; - reconciling_ = false; - internalGetMutableAnnotations().clear(); - internalGetMutableLabels().clear(); - createTime_ = null; - if (createTimeBuilder_ != null) { - createTimeBuilder_.dispose(); - createTimeBuilder_ = null; - } - updateTime_ = null; - if (updateTimeBuilder_ != null) { - updateTimeBuilder_.dispose(); - updateTimeBuilder_ = null; - } - deleteTime_ = null; - if (deleteTimeBuilder_ != null) { - deleteTimeBuilder_.dispose(); - deleteTimeBuilder_ = null; - } - etag_ = ""; - network_ = ""; - subnetwork_ = ""; - controlPlaneIp_ = ""; - privateClusterConfig_ = null; - if (privateClusterConfigBuilder_ != null) { - privateClusterConfigBuilder_.dispose(); - privateClusterConfigBuilder_ = null; - } - degraded_ = false; - if (conditionsBuilder_ == null) { - conditions_ = java.util.Collections.emptyList(); - } else { - conditions_ = null; - conditionsBuilder_.clear(); - } - bitField0_ = (bitField0_ & ~0x00008000); - return this; - } + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GatewayConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationCluster_descriptor; + public static com.google.protobuf.Parser parser() { + return PARSER; } @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationCluster getDefaultInstanceForType() { - return com.google.cloud.workstations.v1.WorkstationCluster.getDefaultInstance(); + public com.google.protobuf.Parser getParserForType() { + return PARSER; } @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationCluster build() { - com.google.cloud.workstations.v1.WorkstationCluster result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; + public com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } + } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationCluster buildPartial() { - com.google.cloud.workstations.v1.WorkstationCluster result = - new com.google.cloud.workstations.v1.WorkstationCluster(this); - buildPartialRepeatedFields(result); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; + private int bitField0_; + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + + /** + * + * + *
            +   * Identifier. Full name of this workstation cluster.
            +   * 
            + * + * 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; } + } - private void buildPartialRepeatedFields( - com.google.cloud.workstations.v1.WorkstationCluster result) { - if (conditionsBuilder_ == null) { - if (((bitField0_ & 0x00008000) != 0)) { - conditions_ = java.util.Collections.unmodifiableList(conditions_); - bitField0_ = (bitField0_ & ~0x00008000); - } - result.conditions_ = conditions_; - } else { - result.conditions_ = conditionsBuilder_.build(); - } + /** + * + * + *
            +   * Identifier. Full name of this workstation cluster.
            +   * 
            + * + * 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; } + } - private void buildPartial0(com.google.cloud.workstations.v1.WorkstationCluster result) { + public static final int DISPLAY_NAME_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object displayName_ = ""; + + /** + * + * + *
            +   * Optional. Human-readable name for this workstation cluster.
            +   * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The displayName. + */ + @java.lang.Override + public java.lang.String getDisplayName() { + java.lang.Object ref = displayName_; + 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(); + displayName_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Human-readable name for this workstation cluster.
            +   * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for displayName. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDisplayNameBytes() { + java.lang.Object ref = displayName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + displayName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int UID_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object uid_ = ""; + + /** + * + * + *
            +   * Output only. A system-assigned unique identifier for this workstation
            +   * cluster.
            +   * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The uid. + */ + @java.lang.Override + public java.lang.String getUid() { + java.lang.Object ref = uid_; + 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(); + uid_ = s; + return s; + } + } + + /** + * + * + *
            +   * Output only. A system-assigned unique identifier for this workstation
            +   * cluster.
            +   * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The bytes for uid. + */ + @java.lang.Override + public com.google.protobuf.ByteString getUidBytes() { + java.lang.Object ref = uid_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int RECONCILING_FIELD_NUMBER = 4; + private boolean reconciling_ = false; + + /** + * + * + *
            +   * Output only. Indicates whether this workstation cluster is currently being
            +   * updated to match its intended state.
            +   * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The reconciling. + */ + @java.lang.Override + public boolean getReconciling() { + return reconciling_; + } + + public static final int ANNOTATIONS_FIELD_NUMBER = 5; + + private static final class AnnotationsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_AnnotationsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField annotations_; + + private com.google.protobuf.MapField + internalGetAnnotations() { + if (annotations_ == null) { + return com.google.protobuf.MapField.emptyMapField(AnnotationsDefaultEntryHolder.defaultEntry); + } + return annotations_; + } + + public int getAnnotationsCount() { + return internalGetAnnotations().getMap().size(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetAnnotations().getMap().containsKey(key); + } + + /** Use {@link #getAnnotationsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getAnnotations() { + return getAnnotationsMap(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getAnnotationsMap() { + return internalGetAnnotations().getMap(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getAnnotationsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getAnnotationsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int LABELS_FIELD_NUMBER = 15; + + private static final class LabelsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_LabelsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField labels_; + + private com.google.protobuf.MapField internalGetLabels() { + if (labels_ == null) { + return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); + } + return labels_; + } + + public int getLabelsCount() { + return internalGetLabels().getMap().size(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation cluster and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetLabels().getMap().containsKey(key); + } + + /** Use {@link #getLabelsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getLabels() { + return getLabelsMap(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation cluster and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getLabelsMap() { + return internalGetLabels().getMap(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation cluster and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getLabelsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation cluster and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getLabelsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int CREATE_TIME_FIELD_NUMBER = 6; + private com.google.protobuf.Timestamp createTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the createTime field is set. + */ + @java.lang.Override + public boolean hasCreateTime() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The createTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getCreateTime() { + return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { + return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; + } + + public static final int UPDATE_TIME_FIELD_NUMBER = 7; + private com.google.protobuf.Timestamp updateTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was most recently updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the updateTime field is set. + */ + @java.lang.Override + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was most recently updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The updateTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getUpdateTime() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was most recently updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + public static final int DELETE_TIME_FIELD_NUMBER = 8; + private com.google.protobuf.Timestamp deleteTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the deleteTime field is set. + */ + @java.lang.Override + public boolean hasDeleteTime() { + return ((bitField0_ & 0x00000004) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The deleteTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getDeleteTime() { + return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { + return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; + } + + public static final int ETAG_FIELD_NUMBER = 9; + + @SuppressWarnings("serial") + private volatile java.lang.Object etag_ = ""; + + /** + * + * + *
            +   * Optional. Checksum computed by the server. May be sent on update and delete
            +   * requests to make sure that the client has an up-to-date value before
            +   * proceeding.
            +   * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The etag. + */ + @java.lang.Override + public java.lang.String getEtag() { + java.lang.Object ref = etag_; + 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(); + etag_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Checksum computed by the server. May be sent on update and delete
            +   * requests to make sure that the client has an up-to-date value before
            +   * proceeding.
            +   * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for etag. + */ + @java.lang.Override + public com.google.protobuf.ByteString getEtagBytes() { + java.lang.Object ref = etag_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + etag_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int NETWORK_FIELD_NUMBER = 10; + + @SuppressWarnings("serial") + private volatile java.lang.Object network_ = ""; + + /** + * + * + *
            +   * Immutable. Name of the Compute Engine network in which instances associated
            +   * with this workstation cluster will be created.
            +   * 
            + * + * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The network. + */ + @java.lang.Override + public java.lang.String getNetwork() { + java.lang.Object ref = network_; + 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(); + network_ = s; + return s; + } + } + + /** + * + * + *
            +   * Immutable. Name of the Compute Engine network in which instances associated
            +   * with this workstation cluster will be created.
            +   * 
            + * + * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for network. + */ + @java.lang.Override + public com.google.protobuf.ByteString getNetworkBytes() { + java.lang.Object ref = network_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + network_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SUBNETWORK_FIELD_NUMBER = 11; + + @SuppressWarnings("serial") + private volatile java.lang.Object subnetwork_ = ""; + + /** + * + * + *
            +   * Immutable. Name of the Compute Engine subnetwork in which instances
            +   * associated with this workstation cluster will be created. Must be part of
            +   * the subnetwork specified for this workstation cluster.
            +   * 
            + * + * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The subnetwork. + */ + @java.lang.Override + public java.lang.String getSubnetwork() { + java.lang.Object ref = subnetwork_; + 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(); + subnetwork_ = s; + return s; + } + } + + /** + * + * + *
            +   * Immutable. Name of the Compute Engine subnetwork in which instances
            +   * associated with this workstation cluster will be created. Must be part of
            +   * the subnetwork specified for this workstation cluster.
            +   * 
            + * + * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for subnetwork. + */ + @java.lang.Override + public com.google.protobuf.ByteString getSubnetworkBytes() { + java.lang.Object ref = subnetwork_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + subnetwork_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int CONTROL_PLANE_IP_FIELD_NUMBER = 16; + + @SuppressWarnings("serial") + private volatile java.lang.Object controlPlaneIp_ = ""; + + /** + * + * + *
            +   * Output only. The private IP address of the control plane for this
            +   * workstation cluster. Workstation VMs need access to this IP address to work
            +   * with the service, so make sure that your firewall rules allow egress from
            +   * the workstation VMs to this address.
            +   * 
            + * + * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The controlPlaneIp. + */ + @java.lang.Override + public java.lang.String getControlPlaneIp() { + java.lang.Object ref = controlPlaneIp_; + 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(); + controlPlaneIp_ = s; + return s; + } + } + + /** + * + * + *
            +   * Output only. The private IP address of the control plane for this
            +   * workstation cluster. Workstation VMs need access to this IP address to work
            +   * with the service, so make sure that your firewall rules allow egress from
            +   * the workstation VMs to this address.
            +   * 
            + * + * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for controlPlaneIp. + */ + @java.lang.Override + public com.google.protobuf.ByteString getControlPlaneIpBytes() { + java.lang.Object ref = controlPlaneIp_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + controlPlaneIp_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PRIVATE_CLUSTER_CONFIG_FIELD_NUMBER = 12; + private com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig + privateClusterConfig_; + + /** + * + * + *
            +   * Optional. Configuration for private workstation cluster.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the privateClusterConfig field is set. + */ + @java.lang.Override + public boolean hasPrivateClusterConfig() { + return ((bitField0_ & 0x00000008) != 0); + } + + /** + * + * + *
            +   * Optional. Configuration for private workstation cluster.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The privateClusterConfig. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig + getPrivateClusterConfig() { + return privateClusterConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig + .getDefaultInstance() + : privateClusterConfig_; + } + + /** + * + * + *
            +   * Optional. Configuration for private workstation cluster.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfigOrBuilder + getPrivateClusterConfigOrBuilder() { + return privateClusterConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig + .getDefaultInstance() + : privateClusterConfig_; + } + + public static final int DOMAIN_CONFIG_FIELD_NUMBER = 17; + private com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig domainConfig_; + + /** + * + * + *
            +   * Optional. Configuration options for a custom domain.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the domainConfig field is set. + */ + @java.lang.Override + public boolean hasDomainConfig() { + return ((bitField0_ & 0x00000010) != 0); + } + + /** + * + * + *
            +   * Optional. Configuration options for a custom domain.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The domainConfig. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig getDomainConfig() { + return domainConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig.getDefaultInstance() + : domainConfig_; + } + + /** + * + * + *
            +   * Optional. Configuration options for a custom domain.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster.DomainConfigOrBuilder + getDomainConfigOrBuilder() { + return domainConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig.getDefaultInstance() + : domainConfig_; + } + + public static final int DEGRADED_FIELD_NUMBER = 13; + private boolean degraded_ = false; + + /** + * + * + *
            +   * Output only. Whether this workstation cluster is in degraded mode, in which
            +   * case it may require user action to restore full functionality. The
            +   * [conditions][google.cloud.workstations.v1.WorkstationCluster.conditions]
            +   * field contains detailed information about the status of the cluster.
            +   * 
            + * + * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The degraded. + */ + @java.lang.Override + public boolean getDegraded() { + return degraded_; + } + + public static final int CONDITIONS_FIELD_NUMBER = 14; + + @SuppressWarnings("serial") + private java.util.List conditions_; + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation cluster's current
            +   * state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getConditionsList() { + return conditions_; + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation cluster's current
            +   * state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getConditionsOrBuilderList() { + return conditions_; + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation cluster's current
            +   * state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getConditionsCount() { + return conditions_.size(); + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation cluster's current
            +   * state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.rpc.Status getConditions(int index) { + return conditions_.get(index); + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation cluster's current
            +   * state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { + return conditions_.get(index); + } + + public static final int TAGS_FIELD_NUMBER = 20; + + private static final class TagsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_TagsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField tags_; + + private com.google.protobuf.MapField internalGetTags() { + if (tags_ == null) { + return com.google.protobuf.MapField.emptyMapField(TagsDefaultEntryHolder.defaultEntry); + } + return tags_; + } + + public int getTagsCount() { + return internalGetTags().getMap().size(); + } + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsTags(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetTags().getMap().containsKey(key); + } + + /** Use {@link #getTagsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getTags() { + return getTagsMap(); + } + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getTagsMap() { + return internalGetTags().getMap(); + } + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getTagsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetTags().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getTagsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetTags().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int GATEWAY_CONFIG_FIELD_NUMBER = 21; + private com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gatewayConfig_; + + /** + * + * + *
            +   * Optional. Configuration options for Cluster HTTP Gateway.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the gatewayConfig field is set. + */ + @java.lang.Override + public boolean hasGatewayConfig() { + return ((bitField0_ & 0x00000020) != 0); + } + + /** + * + * + *
            +   * Optional. Configuration options for Cluster HTTP Gateway.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The gatewayConfig. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig getGatewayConfig() { + return gatewayConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig.getDefaultInstance() + : gatewayConfig_; + } + + /** + * + * + *
            +   * Optional. Configuration options for Cluster HTTP Gateway.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfigOrBuilder + getGatewayConfigOrBuilder() { + return gatewayConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig.getDefaultInstance() + : gatewayConfig_; + } + + public static final int WORKSTATION_AUTHORIZATION_URL_FIELD_NUMBER = 22; + + @SuppressWarnings("serial") + private volatile java.lang.Object workstationAuthorizationUrl_ = ""; + + /** + * + * + *
            +   * Optional. Specifies the redirect URL for unauthorized requests received by
            +   * workstation VMs in this cluster.
            +   *
            +   * Redirects to this endpoint will send a base64 encoded `state` query param
            +   * containing the target workstation name and original request hostname. The
            +   * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +   * and redirecting back to the original hostname with the token.
            +   * 
            + * + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The workstationAuthorizationUrl. + */ + @java.lang.Override + public java.lang.String getWorkstationAuthorizationUrl() { + java.lang.Object ref = workstationAuthorizationUrl_; + 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(); + workstationAuthorizationUrl_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Specifies the redirect URL for unauthorized requests received by
            +   * workstation VMs in this cluster.
            +   *
            +   * Redirects to this endpoint will send a base64 encoded `state` query param
            +   * containing the target workstation name and original request hostname. The
            +   * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +   * and redirecting back to the original hostname with the token.
            +   * 
            + * + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The bytes for workstationAuthorizationUrl. + */ + @java.lang.Override + public com.google.protobuf.ByteString getWorkstationAuthorizationUrlBytes() { + java.lang.Object ref = workstationAuthorizationUrl_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + workstationAuthorizationUrl_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int WORKSTATION_LAUNCH_URL_FIELD_NUMBER = 23; + + @SuppressWarnings("serial") + private volatile java.lang.Object workstationLaunchUrl_ = ""; + + /** + * + * + *
            +   * Optional. Specifies the launch URL for workstations in this cluster.
            +   * Requests sent to unstarted workstations will be redirected to this URL.
            +   *
            +   * Requests redirected to the launch endpoint will be sent with a
            +   * `workstation` and `project` query parameter containing the full workstation
            +   * resource name and project ID, respectively. The launch endpoint is
            +   * responsible for starting the workstation, polling it until it reaches
            +   * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
            +   * 
            + * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The workstationLaunchUrl. + */ + @java.lang.Override + public java.lang.String getWorkstationLaunchUrl() { + java.lang.Object ref = workstationLaunchUrl_; + 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(); + workstationLaunchUrl_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Specifies the launch URL for workstations in this cluster.
            +   * Requests sent to unstarted workstations will be redirected to this URL.
            +   *
            +   * Requests redirected to the launch endpoint will be sent with a
            +   * `workstation` and `project` query parameter containing the full workstation
            +   * resource name and project ID, respectively. The launch endpoint is
            +   * responsible for starting the workstation, polling it until it reaches
            +   * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
            +   * 
            + * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for workstationLaunchUrl. + */ + @java.lang.Override + public com.google.protobuf.ByteString getWorkstationLaunchUrlBytes() { + java.lang.Object ref = workstationLaunchUrl_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + workstationLaunchUrl_ = 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(displayName_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, displayName_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, uid_); + } + if (reconciling_ != false) { + output.writeBool(4, reconciling_); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetAnnotations(), AnnotationsDefaultEntryHolder.defaultEntry, 5); + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(6, getCreateTime()); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(7, getUpdateTime()); + } + if (((bitField0_ & 0x00000004) != 0)) { + output.writeMessage(8, getDeleteTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 9, etag_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(network_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 10, network_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(subnetwork_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 11, subnetwork_); + } + if (((bitField0_ & 0x00000008) != 0)) { + output.writeMessage(12, getPrivateClusterConfig()); + } + if (degraded_ != false) { + output.writeBool(13, degraded_); + } + for (int i = 0; i < conditions_.size(); i++) { + output.writeMessage(14, conditions_.get(i)); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 15); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(controlPlaneIp_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 16, controlPlaneIp_); + } + if (((bitField0_ & 0x00000010) != 0)) { + output.writeMessage(17, getDomainConfig()); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetTags(), TagsDefaultEntryHolder.defaultEntry, 20); + if (((bitField0_ & 0x00000020) != 0)) { + output.writeMessage(21, getGatewayConfig()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workstationAuthorizationUrl_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 22, workstationAuthorizationUrl_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workstationLaunchUrl_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 23, workstationLaunchUrl_); + } + 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(displayName_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, displayName_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, uid_); + } + if (reconciling_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, reconciling_); + } + for (java.util.Map.Entry entry : + internalGetAnnotations().getMap().entrySet()) { + com.google.protobuf.MapEntry annotations__ = + AnnotationsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, annotations__); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getCreateTime()); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getUpdateTime()); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getDeleteTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(9, etag_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(network_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(10, network_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(subnetwork_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(11, subnetwork_); + } + if (((bitField0_ & 0x00000008) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(12, getPrivateClusterConfig()); + } + if (degraded_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(13, degraded_); + } + for (int i = 0; i < conditions_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, conditions_.get(i)); + } + for (java.util.Map.Entry entry : + internalGetLabels().getMap().entrySet()) { + com.google.protobuf.MapEntry labels__ = + LabelsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(15, labels__); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(controlPlaneIp_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(16, controlPlaneIp_); + } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(17, getDomainConfig()); + } + for (java.util.Map.Entry entry : + internalGetTags().getMap().entrySet()) { + com.google.protobuf.MapEntry tags__ = + TagsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(20, tags__); + } + if (((bitField0_ & 0x00000020) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(21, getGatewayConfig()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workstationAuthorizationUrl_)) { + size += + com.google.protobuf.GeneratedMessage.computeStringSize(22, workstationAuthorizationUrl_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workstationLaunchUrl_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(23, workstationLaunchUrl_); + } + 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.cloud.workstations.v1.WorkstationCluster)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationCluster other = + (com.google.cloud.workstations.v1.WorkstationCluster) obj; + + if (!getName().equals(other.getName())) return false; + if (!getDisplayName().equals(other.getDisplayName())) return false; + if (!getUid().equals(other.getUid())) return false; + if (getReconciling() != other.getReconciling()) return false; + if (!internalGetAnnotations().equals(other.internalGetAnnotations())) return false; + if (!internalGetLabels().equals(other.internalGetLabels())) return false; + if (hasCreateTime() != other.hasCreateTime()) return false; + if (hasCreateTime()) { + if (!getCreateTime().equals(other.getCreateTime())) return false; + } + if (hasUpdateTime() != other.hasUpdateTime()) return false; + if (hasUpdateTime()) { + if (!getUpdateTime().equals(other.getUpdateTime())) return false; + } + if (hasDeleteTime() != other.hasDeleteTime()) return false; + if (hasDeleteTime()) { + if (!getDeleteTime().equals(other.getDeleteTime())) return false; + } + if (!getEtag().equals(other.getEtag())) return false; + if (!getNetwork().equals(other.getNetwork())) return false; + if (!getSubnetwork().equals(other.getSubnetwork())) return false; + if (!getControlPlaneIp().equals(other.getControlPlaneIp())) return false; + if (hasPrivateClusterConfig() != other.hasPrivateClusterConfig()) return false; + if (hasPrivateClusterConfig()) { + if (!getPrivateClusterConfig().equals(other.getPrivateClusterConfig())) return false; + } + if (hasDomainConfig() != other.hasDomainConfig()) return false; + if (hasDomainConfig()) { + if (!getDomainConfig().equals(other.getDomainConfig())) return false; + } + if (getDegraded() != other.getDegraded()) return false; + if (!getConditionsList().equals(other.getConditionsList())) return false; + if (!internalGetTags().equals(other.internalGetTags())) return false; + if (hasGatewayConfig() != other.hasGatewayConfig()) return false; + if (hasGatewayConfig()) { + if (!getGatewayConfig().equals(other.getGatewayConfig())) return false; + } + if (!getWorkstationAuthorizationUrl().equals(other.getWorkstationAuthorizationUrl())) + return false; + if (!getWorkstationLaunchUrl().equals(other.getWorkstationLaunchUrl())) 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) + DISPLAY_NAME_FIELD_NUMBER; + hash = (53 * hash) + getDisplayName().hashCode(); + hash = (37 * hash) + UID_FIELD_NUMBER; + hash = (53 * hash) + getUid().hashCode(); + hash = (37 * hash) + RECONCILING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReconciling()); + if (!internalGetAnnotations().getMap().isEmpty()) { + hash = (37 * hash) + ANNOTATIONS_FIELD_NUMBER; + hash = (53 * hash) + internalGetAnnotations().hashCode(); + } + if (!internalGetLabels().getMap().isEmpty()) { + hash = (37 * hash) + LABELS_FIELD_NUMBER; + hash = (53 * hash) + internalGetLabels().hashCode(); + } + if (hasCreateTime()) { + hash = (37 * hash) + CREATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getCreateTime().hashCode(); + } + if (hasUpdateTime()) { + hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getUpdateTime().hashCode(); + } + if (hasDeleteTime()) { + hash = (37 * hash) + DELETE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getDeleteTime().hashCode(); + } + hash = (37 * hash) + ETAG_FIELD_NUMBER; + hash = (53 * hash) + getEtag().hashCode(); + hash = (37 * hash) + NETWORK_FIELD_NUMBER; + hash = (53 * hash) + getNetwork().hashCode(); + hash = (37 * hash) + SUBNETWORK_FIELD_NUMBER; + hash = (53 * hash) + getSubnetwork().hashCode(); + hash = (37 * hash) + CONTROL_PLANE_IP_FIELD_NUMBER; + hash = (53 * hash) + getControlPlaneIp().hashCode(); + if (hasPrivateClusterConfig()) { + hash = (37 * hash) + PRIVATE_CLUSTER_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getPrivateClusterConfig().hashCode(); + } + if (hasDomainConfig()) { + hash = (37 * hash) + DOMAIN_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getDomainConfig().hashCode(); + } + hash = (37 * hash) + DEGRADED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDegraded()); + if (getConditionsCount() > 0) { + hash = (37 * hash) + CONDITIONS_FIELD_NUMBER; + hash = (53 * hash) + getConditionsList().hashCode(); + } + if (!internalGetTags().getMap().isEmpty()) { + hash = (37 * hash) + TAGS_FIELD_NUMBER; + hash = (53 * hash) + internalGetTags().hashCode(); + } + if (hasGatewayConfig()) { + hash = (37 * hash) + GATEWAY_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getGatewayConfig().hashCode(); + } + hash = (37 * hash) + WORKSTATION_AUTHORIZATION_URL_FIELD_NUMBER; + hash = (53 * hash) + getWorkstationAuthorizationUrl().hashCode(); + hash = (37 * hash) + WORKSTATION_LAUNCH_URL_FIELD_NUMBER; + hash = (53 * hash) + getWorkstationLaunchUrl().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationCluster 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.cloud.workstations.v1.WorkstationCluster parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationCluster parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationCluster 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.cloud.workstations.v1.WorkstationCluster parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationCluster 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.cloud.workstations.v1.WorkstationCluster parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationCluster 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.cloud.workstations.v1.WorkstationCluster 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 workstation cluster resource in the Cloud Workstations API.
            +   *
            +   * Defines a group of workstations in a particular region and the
            +   * VPC network they're attached to.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationCluster} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationCluster) + com.google.cloud.workstations.v1.WorkstationClusterOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_descriptor; + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 5: + return internalGetAnnotations(); + case 15: + return internalGetLabels(); + case 20: + return internalGetTags(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( + int number) { + switch (number) { + case 5: + return internalGetMutableAnnotations(); + case 15: + return internalGetMutableLabels(); + case 20: + return internalGetMutableTags(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationCluster.class, + com.google.cloud.workstations.v1.WorkstationCluster.Builder.class); + } + + // Construct using com.google.cloud.workstations.v1.WorkstationCluster.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetCreateTimeFieldBuilder(); + internalGetUpdateTimeFieldBuilder(); + internalGetDeleteTimeFieldBuilder(); + internalGetPrivateClusterConfigFieldBuilder(); + internalGetDomainConfigFieldBuilder(); + internalGetConditionsFieldBuilder(); + internalGetGatewayConfigFieldBuilder(); + } + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + displayName_ = ""; + uid_ = ""; + reconciling_ = false; + internalGetMutableAnnotations().clear(); + internalGetMutableLabels().clear(); + createTime_ = null; + if (createTimeBuilder_ != null) { + createTimeBuilder_.dispose(); + createTimeBuilder_ = null; + } + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; + } + deleteTime_ = null; + if (deleteTimeBuilder_ != null) { + deleteTimeBuilder_.dispose(); + deleteTimeBuilder_ = null; + } + etag_ = ""; + network_ = ""; + subnetwork_ = ""; + controlPlaneIp_ = ""; + privateClusterConfig_ = null; + if (privateClusterConfigBuilder_ != null) { + privateClusterConfigBuilder_.dispose(); + privateClusterConfigBuilder_ = null; + } + domainConfig_ = null; + if (domainConfigBuilder_ != null) { + domainConfigBuilder_.dispose(); + domainConfigBuilder_ = null; + } + degraded_ = false; + if (conditionsBuilder_ == null) { + conditions_ = java.util.Collections.emptyList(); + } else { + conditions_ = null; + conditionsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00010000); + internalGetMutableTags().clear(); + gatewayConfig_ = null; + if (gatewayConfigBuilder_ != null) { + gatewayConfigBuilder_.dispose(); + gatewayConfigBuilder_ = null; + } + workstationAuthorizationUrl_ = ""; + workstationLaunchUrl_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationCluster_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationCluster.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster build() { + com.google.cloud.workstations.v1.WorkstationCluster result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationCluster buildPartial() { + com.google.cloud.workstations.v1.WorkstationCluster result = + new com.google.cloud.workstations.v1.WorkstationCluster(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields( + com.google.cloud.workstations.v1.WorkstationCluster result) { + if (conditionsBuilder_ == null) { + if (((bitField0_ & 0x00010000) != 0)) { + conditions_ = java.util.Collections.unmodifiableList(conditions_); + bitField0_ = (bitField0_ & ~0x00010000); + } + result.conditions_ = conditions_; + } else { + result.conditions_ = conditionsBuilder_.build(); + } + } + + private void buildPartial0(com.google.cloud.workstations.v1.WorkstationCluster result) { int from_bitField0_ = bitField0_; if (((from_bitField0_ & 0x00000001) != 0)) { result.name_ = name_; } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.displayName_ = displayName_; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.displayName_ = displayName_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.uid_ = uid_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.reconciling_ = reconciling_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.annotations_ = internalGetAnnotations(); + result.annotations_.makeImmutable(); + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.labels_ = internalGetLabels(); + result.labels_.makeImmutable(); + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000040) != 0)) { + result.createTime_ = createTimeBuilder_ == null ? createTime_ : createTimeBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.updateTime_ = updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.deleteTime_ = deleteTimeBuilder_ == null ? deleteTime_ : deleteTimeBuilder_.build(); + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.etag_ = etag_; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.network_ = network_; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.subnetwork_ = subnetwork_; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.controlPlaneIp_ = controlPlaneIp_; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.privateClusterConfig_ = + privateClusterConfigBuilder_ == null + ? privateClusterConfig_ + : privateClusterConfigBuilder_.build(); + to_bitField0_ |= 0x00000008; + } + if (((from_bitField0_ & 0x00004000) != 0)) { + result.domainConfig_ = + domainConfigBuilder_ == null ? domainConfig_ : domainConfigBuilder_.build(); + to_bitField0_ |= 0x00000010; + } + if (((from_bitField0_ & 0x00008000) != 0)) { + result.degraded_ = degraded_; + } + if (((from_bitField0_ & 0x00020000) != 0)) { + result.tags_ = internalGetTags(); + result.tags_.makeImmutable(); + } + if (((from_bitField0_ & 0x00040000) != 0)) { + result.gatewayConfig_ = + gatewayConfigBuilder_ == null ? gatewayConfig_ : gatewayConfigBuilder_.build(); + to_bitField0_ |= 0x00000020; + } + if (((from_bitField0_ & 0x00080000) != 0)) { + result.workstationAuthorizationUrl_ = workstationAuthorizationUrl_; + } + if (((from_bitField0_ & 0x00100000) != 0)) { + result.workstationLaunchUrl_ = workstationLaunchUrl_; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1.WorkstationCluster) { + return mergeFrom((com.google.cloud.workstations.v1.WorkstationCluster) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.workstations.v1.WorkstationCluster other) { + if (other == com.google.cloud.workstations.v1.WorkstationCluster.getDefaultInstance()) + return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getDisplayName().isEmpty()) { + displayName_ = other.displayName_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getUid().isEmpty()) { + uid_ = other.uid_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getReconciling() != false) { + setReconciling(other.getReconciling()); + } + internalGetMutableAnnotations().mergeFrom(other.internalGetAnnotations()); + bitField0_ |= 0x00000010; + internalGetMutableLabels().mergeFrom(other.internalGetLabels()); + bitField0_ |= 0x00000020; + if (other.hasCreateTime()) { + mergeCreateTime(other.getCreateTime()); + } + if (other.hasUpdateTime()) { + mergeUpdateTime(other.getUpdateTime()); + } + if (other.hasDeleteTime()) { + mergeDeleteTime(other.getDeleteTime()); + } + if (!other.getEtag().isEmpty()) { + etag_ = other.etag_; + bitField0_ |= 0x00000200; + onChanged(); + } + if (!other.getNetwork().isEmpty()) { + network_ = other.network_; + bitField0_ |= 0x00000400; + onChanged(); + } + if (!other.getSubnetwork().isEmpty()) { + subnetwork_ = other.subnetwork_; + bitField0_ |= 0x00000800; + onChanged(); + } + if (!other.getControlPlaneIp().isEmpty()) { + controlPlaneIp_ = other.controlPlaneIp_; + bitField0_ |= 0x00001000; + onChanged(); + } + if (other.hasPrivateClusterConfig()) { + mergePrivateClusterConfig(other.getPrivateClusterConfig()); + } + if (other.hasDomainConfig()) { + mergeDomainConfig(other.getDomainConfig()); + } + if (other.getDegraded() != false) { + setDegraded(other.getDegraded()); + } + if (conditionsBuilder_ == null) { + if (!other.conditions_.isEmpty()) { + if (conditions_.isEmpty()) { + conditions_ = other.conditions_; + bitField0_ = (bitField0_ & ~0x00010000); + } else { + ensureConditionsIsMutable(); + conditions_.addAll(other.conditions_); + } + onChanged(); + } + } else { + if (!other.conditions_.isEmpty()) { + if (conditionsBuilder_.isEmpty()) { + conditionsBuilder_.dispose(); + conditionsBuilder_ = null; + conditions_ = other.conditions_; + bitField0_ = (bitField0_ & ~0x00010000); + conditionsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetConditionsFieldBuilder() + : null; + } else { + conditionsBuilder_.addAllMessages(other.conditions_); + } + } + } + internalGetMutableTags().mergeFrom(other.internalGetTags()); + bitField0_ |= 0x00020000; + if (other.hasGatewayConfig()) { + mergeGatewayConfig(other.getGatewayConfig()); + } + if (!other.getWorkstationAuthorizationUrl().isEmpty()) { + workstationAuthorizationUrl_ = other.workstationAuthorizationUrl_; + bitField0_ |= 0x00080000; + onChanged(); + } + if (!other.getWorkstationLaunchUrl().isEmpty()) { + workstationLaunchUrl_ = other.workstationLaunchUrl_; + bitField0_ |= 0x00100000; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + name_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + displayName_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + uid_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: + { + reconciling_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 42: + { + com.google.protobuf.MapEntry annotations__ = + input.readMessage( + AnnotationsDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableAnnotations() + .getMutableMap() + .put(annotations__.getKey(), annotations__.getValue()); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 50: + { + input.readMessage( + internalGetCreateTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000040; + break; + } // case 50 + case 58: + { + input.readMessage( + internalGetUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000080; + break; + } // case 58 + case 66: + { + input.readMessage( + internalGetDeleteTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000100; + break; + } // case 66 + case 74: + { + etag_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000200; + break; + } // case 74 + case 82: + { + network_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000400; + break; + } // case 82 + case 90: + { + subnetwork_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000800; + break; + } // case 90 + case 98: + { + input.readMessage( + internalGetPrivateClusterConfigFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00002000; + break; + } // case 98 + case 104: + { + degraded_ = input.readBool(); + bitField0_ |= 0x00008000; + break; + } // case 104 + case 114: + { + com.google.rpc.Status m = + input.readMessage(com.google.rpc.Status.parser(), extensionRegistry); + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(m); + } else { + conditionsBuilder_.addMessage(m); + } + break; + } // case 114 + case 122: + { + com.google.protobuf.MapEntry labels__ = + input.readMessage( + LabelsDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableLabels() + .getMutableMap() + .put(labels__.getKey(), labels__.getValue()); + bitField0_ |= 0x00000020; + break; + } // case 122 + case 130: + { + controlPlaneIp_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00001000; + break; + } // case 130 + case 138: + { + input.readMessage( + internalGetDomainConfigFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00004000; + break; + } // case 138 + case 162: + { + com.google.protobuf.MapEntry tags__ = + input.readMessage( + TagsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); + internalGetMutableTags().getMutableMap().put(tags__.getKey(), tags__.getValue()); + bitField0_ |= 0x00020000; + break; + } // case 162 + case 170: + { + input.readMessage( + internalGetGatewayConfigFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00040000; + break; + } // case 170 + case 178: + { + workstationAuthorizationUrl_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00080000; + break; + } // case 178 + case 186: + { + workstationLaunchUrl_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00100000; + break; + } // case 186 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object name_ = ""; + + /** + * + * + *
            +     * Identifier. Full name of this workstation cluster.
            +     * 
            + * + * 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. Full name of this workstation cluster.
            +     * 
            + * + * 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; } - if (((from_bitField0_ & 0x00000004) != 0)) { - result.uid_ = uid_; + } + + /** + * + * + *
            +     * Identifier. Full name of this workstation cluster.
            +     * 
            + * + * 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(); } - if (((from_bitField0_ & 0x00000008) != 0)) { - result.reconciling_ = reconciling_; + name_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Identifier. Full name of this workstation cluster.
            +     * 
            + * + * 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. Full name of this workstation cluster.
            +     * 
            + * + * 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(); } - if (((from_bitField0_ & 0x00000010) != 0)) { - result.annotations_ = internalGetAnnotations(); - result.annotations_.makeImmutable(); + checkByteStringIsUtf8(value); + name_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object displayName_ = ""; + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation cluster.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The displayName. + */ + public java.lang.String getDisplayName() { + java.lang.Object ref = displayName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + displayName_ = s; + return s; + } else { + return (java.lang.String) ref; } - if (((from_bitField0_ & 0x00000020) != 0)) { - result.labels_ = internalGetLabels(); - result.labels_.makeImmutable(); + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation cluster.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for displayName. + */ + public com.google.protobuf.ByteString getDisplayNameBytes() { + java.lang.Object ref = displayName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + displayName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - int to_bitField0_ = 0; - if (((from_bitField0_ & 0x00000040) != 0)) { - result.createTime_ = createTimeBuilder_ == null ? createTime_ : createTimeBuilder_.build(); - to_bitField0_ |= 0x00000001; + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation cluster.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The displayName to set. + * @return This builder for chaining. + */ + public Builder setDisplayName(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - if (((from_bitField0_ & 0x00000080) != 0)) { - result.updateTime_ = updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build(); - to_bitField0_ |= 0x00000002; + displayName_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation cluster.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearDisplayName() { + displayName_ = getDefaultInstance().getDisplayName(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation cluster.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for displayName to set. + * @return This builder for chaining. + */ + public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - if (((from_bitField0_ & 0x00000100) != 0)) { - result.deleteTime_ = deleteTimeBuilder_ == null ? deleteTime_ : deleteTimeBuilder_.build(); - to_bitField0_ |= 0x00000004; + checkByteStringIsUtf8(value); + displayName_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object uid_ = ""; + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * cluster.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The uid. + */ + public java.lang.String getUid() { + java.lang.Object ref = uid_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + uid_ = s; + return s; + } else { + return (java.lang.String) ref; } - if (((from_bitField0_ & 0x00000200) != 0)) { - result.etag_ = etag_; + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * cluster.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The bytes for uid. + */ + public com.google.protobuf.ByteString getUidBytes() { + java.lang.Object ref = uid_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - if (((from_bitField0_ & 0x00000400) != 0)) { - result.network_ = network_; + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * cluster.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @param value The uid to set. + * @return This builder for chaining. + */ + public Builder setUid(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - if (((from_bitField0_ & 0x00000800) != 0)) { - result.subnetwork_ = subnetwork_; + uid_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * cluster.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearUid() { + uid_ = getDefaultInstance().getUid(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * cluster.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @param value The bytes for uid to set. + * @return This builder for chaining. + */ + public Builder setUidBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - if (((from_bitField0_ & 0x00001000) != 0)) { - result.controlPlaneIp_ = controlPlaneIp_; + checkByteStringIsUtf8(value); + uid_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private boolean reconciling_; + + /** + * + * + *
            +     * Output only. Indicates whether this workstation cluster is currently being
            +     * updated to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The reconciling. + */ + @java.lang.Override + public boolean getReconciling() { + return reconciling_; + } + + /** + * + * + *
            +     * Output only. Indicates whether this workstation cluster is currently being
            +     * updated to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The reconciling to set. + * @return This builder for chaining. + */ + public Builder setReconciling(boolean value) { + + reconciling_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Indicates whether this workstation cluster is currently being
            +     * updated to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearReconciling() { + bitField0_ = (bitField0_ & ~0x00000008); + reconciling_ = false; + onChanged(); + return this; + } + + private com.google.protobuf.MapField annotations_; + + private com.google.protobuf.MapField + internalGetAnnotations() { + if (annotations_ == null) { + return com.google.protobuf.MapField.emptyMapField( + AnnotationsDefaultEntryHolder.defaultEntry); } - if (((from_bitField0_ & 0x00002000) != 0)) { - result.privateClusterConfig_ = - privateClusterConfigBuilder_ == null - ? privateClusterConfig_ - : privateClusterConfigBuilder_.build(); - to_bitField0_ |= 0x00000008; + return annotations_; + } + + private com.google.protobuf.MapField + internalGetMutableAnnotations() { + if (annotations_ == null) { + annotations_ = + com.google.protobuf.MapField.newMapField(AnnotationsDefaultEntryHolder.defaultEntry); } - if (((from_bitField0_ & 0x00004000) != 0)) { - result.degraded_ = degraded_; + if (!annotations_.isMutable()) { + annotations_ = annotations_.copy(); } - result.bitField0_ |= to_bitField0_; + bitField0_ |= 0x00000010; + onChanged(); + return annotations_; + } + + public int getAnnotationsCount() { + return internalGetAnnotations().getMap().size(); } + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.cloud.workstations.v1.WorkstationCluster) { - return mergeFrom((com.google.cloud.workstations.v1.WorkstationCluster) other); - } else { - super.mergeFrom(other); - return this; + public boolean containsAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } + return internalGetAnnotations().getMap().containsKey(key); } - public Builder mergeFrom(com.google.cloud.workstations.v1.WorkstationCluster other) { - if (other == com.google.cloud.workstations.v1.WorkstationCluster.getDefaultInstance()) - return this; - if (!other.getName().isEmpty()) { - name_ = other.name_; - bitField0_ |= 0x00000001; - onChanged(); + /** Use {@link #getAnnotationsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getAnnotations() { + return getAnnotationsMap(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getAnnotationsMap() { + return internalGetAnnotations().getMap(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getAnnotationsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); } - if (!other.getDisplayName().isEmpty()) { - displayName_ = other.displayName_; - bitField0_ |= 0x00000002; - onChanged(); + java.util.Map map = internalGetAnnotations().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getAnnotationsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - if (!other.getUid().isEmpty()) { - uid_ = other.uid_; - bitField0_ |= 0x00000004; - onChanged(); + java.util.Map map = internalGetAnnotations().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); } - if (other.getReconciling() != false) { - setReconciling(other.getReconciling()); + return map.get(key); + } + + public Builder clearAnnotations() { + bitField0_ = (bitField0_ & ~0x00000010); + internalGetMutableAnnotations().getMutableMap().clear(); + return this; + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - internalGetMutableAnnotations().mergeFrom(other.internalGetAnnotations()); + internalGetMutableAnnotations().getMutableMap().remove(key); + return this; + } + + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableAnnotations() { bitField0_ |= 0x00000010; - internalGetMutableLabels().mergeFrom(other.internalGetLabels()); - bitField0_ |= 0x00000020; - if (other.hasCreateTime()) { - mergeCreateTime(other.getCreateTime()); - } - if (other.hasUpdateTime()) { - mergeUpdateTime(other.getUpdateTime()); - } - if (other.hasDeleteTime()) { - mergeDeleteTime(other.getDeleteTime()); - } - if (!other.getEtag().isEmpty()) { - etag_ = other.etag_; - bitField0_ |= 0x00000200; - onChanged(); - } - if (!other.getNetwork().isEmpty()) { - network_ = other.network_; - bitField0_ |= 0x00000400; - onChanged(); + return internalGetMutableAnnotations().getMutableMap(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAnnotations(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); } - if (!other.getSubnetwork().isEmpty()) { - subnetwork_ = other.subnetwork_; - bitField0_ |= 0x00000800; - onChanged(); + if (value == null) { + throw new NullPointerException("map value"); } - if (!other.getControlPlaneIp().isEmpty()) { - controlPlaneIp_ = other.controlPlaneIp_; - bitField0_ |= 0x00001000; - onChanged(); + internalGetMutableAnnotations().getMutableMap().put(key, value); + bitField0_ |= 0x00000010; + return this; + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAllAnnotations(java.util.Map values) { + internalGetMutableAnnotations().getMutableMap().putAll(values); + bitField0_ |= 0x00000010; + return this; + } + + private com.google.protobuf.MapField labels_; + + private com.google.protobuf.MapField internalGetLabels() { + if (labels_ == null) { + return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); } - if (other.hasPrivateClusterConfig()) { - mergePrivateClusterConfig(other.getPrivateClusterConfig()); + return labels_; + } + + private com.google.protobuf.MapField + internalGetMutableLabels() { + if (labels_ == null) { + labels_ = com.google.protobuf.MapField.newMapField(LabelsDefaultEntryHolder.defaultEntry); } - if (other.getDegraded() != false) { - setDegraded(other.getDegraded()); + if (!labels_.isMutable()) { + labels_ = labels_.copy(); } - if (conditionsBuilder_ == null) { - if (!other.conditions_.isEmpty()) { - if (conditions_.isEmpty()) { - conditions_ = other.conditions_; - bitField0_ = (bitField0_ & ~0x00008000); - } else { - ensureConditionsIsMutable(); - conditions_.addAll(other.conditions_); - } - onChanged(); - } - } else { - if (!other.conditions_.isEmpty()) { - if (conditionsBuilder_.isEmpty()) { - conditionsBuilder_.dispose(); - conditionsBuilder_ = null; - conditions_ = other.conditions_; - bitField0_ = (bitField0_ & ~0x00008000); - conditionsBuilder_ = - com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders - ? internalGetConditionsFieldBuilder() - : null; - } else { - conditionsBuilder_.addAllMessages(other.conditions_); - } - } + bitField0_ |= 0x00000020; + onChanged(); + return labels_; + } + + public int getLabelsCount() { + return internalGetLabels().getMap().size(); + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation cluster and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; + return internalGetLabels().getMap().containsKey(key); } + /** Use {@link #getLabelsMap()} instead. */ @java.lang.Override - public final boolean isInitialized() { - return true; + @java.lang.Deprecated + public java.util.Map getLabels() { + return getLabelsMap(); } + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation cluster and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); + public java.util.Map getLabelsMap() { + return internalGetLabels().getMap(); + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation cluster and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getLabelsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - name_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - displayName_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 18 - case 26: - { - uid_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000004; - break; - } // case 26 - case 32: - { - reconciling_ = input.readBool(); - bitField0_ |= 0x00000008; - break; - } // case 32 - case 42: - { - com.google.protobuf.MapEntry annotations__ = - input.readMessage( - AnnotationsDefaultEntryHolder.defaultEntry.getParserForType(), - extensionRegistry); - internalGetMutableAnnotations() - .getMutableMap() - .put(annotations__.getKey(), annotations__.getValue()); - bitField0_ |= 0x00000010; - break; - } // case 42 - case 50: - { - input.readMessage( - internalGetCreateTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000040; - break; - } // case 50 - case 58: - { - input.readMessage( - internalGetUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000080; - break; - } // case 58 - case 66: - { - input.readMessage( - internalGetDeleteTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000100; - break; - } // case 66 - case 74: - { - etag_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000200; - break; - } // case 74 - case 82: - { - network_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000400; - break; - } // case 82 - case 90: - { - subnetwork_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000800; - break; - } // case 90 - case 98: - { - input.readMessage( - internalGetPrivateClusterConfigFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00002000; - break; - } // case 98 - case 104: - { - degraded_ = input.readBool(); - bitField0_ |= 0x00004000; - break; - } // case 104 - case 114: - { - com.google.rpc.Status m = - input.readMessage(com.google.rpc.Status.parser(), extensionRegistry); - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.add(m); - } else { - conditionsBuilder_.addMessage(m); - } - break; - } // case 114 - case 122: - { - com.google.protobuf.MapEntry labels__ = - input.readMessage( - LabelsDefaultEntryHolder.defaultEntry.getParserForType(), - extensionRegistry); - internalGetMutableLabels() - .getMutableMap() - .put(labels__.getKey(), labels__.getValue()); - bitField0_ |= 0x00000020; - break; - } // case 122 - case 130: - { - controlPlaneIp_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00001000; - break; - } // case 130 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally + java.util.Map map = internalGetLabels().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation cluster and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getLabelsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public Builder clearLabels() { + bitField0_ = (bitField0_ & ~0x00000020); + internalGetMutableLabels().getMutableMap().clear(); + return this; + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation cluster and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder removeLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableLabels().getMutableMap().remove(key); return this; } - private int bitField0_; - - private java.lang.Object name_ = ""; + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableLabels() { + bitField0_ |= 0x00000020; + return internalGetMutableLabels().getMutableMap(); + } /** * * *
            -     * Full name of this workstation cluster.
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation cluster and that are also propagated to the
            +     * underlying Compute Engine resources.
                  * 
            * - * string name = 1; - * - * @return The name. + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; */ - 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; + public Builder putLabels(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); } + internalGetMutableLabels().getMutableMap().put(key, value); + bitField0_ |= 0x00000020; + return this; } /** * * *
            -     * Full name of this workstation cluster.
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation cluster and that are also propagated to the
            +     * underlying Compute Engine resources.
                  * 
            * - * string name = 1; - * - * @return The bytes for name. + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; */ - 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; - } + public Builder putAllLabels(java.util.Map values) { + internalGetMutableLabels().getMutableMap().putAll(values); + bitField0_ |= 0x00000020; + return this; } + private com.google.protobuf.Timestamp createTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + createTimeBuilder_; + /** * * *
            -     * Full name of this workstation cluster.
            +     * Output only. Time when this workstation cluster was created.
                  * 
            * - * string name = 1; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The name to set. - * @return This builder for chaining. + * @return Whether the createTime field is set. */ - public Builder setName(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - name_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; + public boolean hasCreateTime() { + return ((bitField0_ & 0x00000040) != 0); } /** * * *
            -     * Full name of this workstation cluster.
            +     * Output only. Time when this workstation cluster was created.
                  * 
            * - * string name = 1; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return This builder for chaining. + * @return The createTime. */ - public Builder clearName() { - name_ = getDefaultInstance().getName(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; + public com.google.protobuf.Timestamp getCreateTime() { + if (createTimeBuilder_ == null) { + return createTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : createTime_; + } else { + return createTimeBuilder_.getMessage(); + } } /** * * *
            -     * Full name of this workstation cluster.
            +     * Output only. Time when this workstation cluster was created.
                  * 
            * - * string name = 1; - * - * @param value The bytes for name to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setNameBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder setCreateTime(com.google.protobuf.Timestamp value) { + if (createTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + createTime_ = value; + } else { + createTimeBuilder_.setMessage(value); } - checkByteStringIsUtf8(value); - name_ = value; - bitField0_ |= 0x00000001; + bitField0_ |= 0x00000040; onChanged(); return this; } - private java.lang.Object displayName_ = ""; - /** * * *
            -     * Optional. Human-readable name for this workstation cluster.
            +     * Output only. Time when this workstation cluster was created.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The displayName. + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getDisplayName() { - java.lang.Object ref = displayName_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - displayName_ = s; - return s; + public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (createTimeBuilder_ == null) { + createTime_ = builderForValue.build(); } else { - return (java.lang.String) ref; + createTimeBuilder_.setMessage(builderForValue.build()); } + bitField0_ |= 0x00000040; + onChanged(); + return this; } /** * * *
            -     * Optional. Human-readable name for this workstation cluster.
            +     * Output only. Time when this workstation cluster was created.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for displayName. + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getDisplayNameBytes() { - java.lang.Object ref = displayName_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - displayName_ = b; - return b; + public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { + if (createTimeBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0) + && createTime_ != null + && createTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getCreateTimeBuilder().mergeFrom(value); + } else { + createTime_ = value; + } } else { - return (com.google.protobuf.ByteString) ref; + createTimeBuilder_.mergeFrom(value); + } + if (createTime_ != null) { + bitField0_ |= 0x00000040; + onChanged(); } + return this; } /** * * *
            -     * Optional. Human-readable name for this workstation cluster.
            +     * Output only. Time when this workstation cluster was created.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The displayName to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setDisplayName(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder clearCreateTime() { + bitField0_ = (bitField0_ & ~0x00000040); + createTime_ = null; + if (createTimeBuilder_ != null) { + createTimeBuilder_.dispose(); + createTimeBuilder_ = null; } - displayName_ = value; - bitField0_ |= 0x00000002; onChanged(); return this; } @@ -3488,90 +5918,112 @@ public Builder setDisplayName(java.lang.String value) { * * *
            -     * Optional. Human-readable name for this workstation cluster.
            +     * Output only. Time when this workstation cluster was created.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearDisplayName() { - displayName_ = getDefaultInstance().getDisplayName(); - bitField0_ = (bitField0_ & ~0x00000002); + public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { + bitField0_ |= 0x00000040; onChanged(); - return this; + return internalGetCreateTimeFieldBuilder().getBuilder(); } /** * * *
            -     * Optional. Human-readable name for this workstation cluster.
            +     * Output only. Time when this workstation cluster was created.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { + if (createTimeBuilder_ != null) { + return createTimeBuilder_.getMessageOrBuilder(); + } else { + return createTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : createTime_; + } + } + + /** * - * @param value The bytes for displayName to set. - * @return This builder for chaining. + * + *
            +     * Output only. Time when this workstation cluster was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetCreateTimeFieldBuilder() { + if (createTimeBuilder_ == null) { + createTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getCreateTime(), getParentForChildren(), isClean()); + createTime_ = null; } - checkByteStringIsUtf8(value); - displayName_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; + return createTimeBuilder_; } - private java.lang.Object uid_ = ""; + private com.google.protobuf.Timestamp updateTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + updateTimeBuilder_; /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * cluster.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The uid. + * @return Whether the updateTime field is set. */ - public java.lang.String getUid() { - java.lang.Object ref = uid_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - uid_ = s; - return s; - } else { - return (java.lang.String) ref; - } + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000080) != 0); } /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * cluster.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The bytes for uid. + * @return The updateTime. */ - public com.google.protobuf.ByteString getUidBytes() { - java.lang.Object ref = uid_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - uid_ = b; - return b; + public com.google.protobuf.Timestamp getUpdateTime() { + if (updateTimeBuilder_ == null) { + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; } else { - return (com.google.protobuf.ByteString) ref; + return updateTimeBuilder_.getMessage(); } } @@ -3579,21 +6031,23 @@ public com.google.protobuf.ByteString getUidBytes() { * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * cluster.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The uid to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setUid(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder setUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + updateTime_ = value; + } else { + updateTimeBuilder_.setMessage(value); } - uid_ = value; - bitField0_ |= 0x00000004; + bitField0_ |= 0x00000080; onChanged(); return this; } @@ -3602,17 +6056,20 @@ public Builder setUid(java.lang.String value) { * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * cluster.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearUid() { - uid_ = getDefaultInstance().getUid(); - bitField0_ = (bitField0_ & ~0x00000004); + public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (updateTimeBuilder_ == null) { + updateTime_ = builderForValue.build(); + } else { + updateTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000080; onChanged(); return this; } @@ -3621,201 +6078,189 @@ public Builder clearUid() { * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * cluster.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The bytes for uid to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setUidBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (((bitField0_ & 0x00000080) != 0) + && updateTime_ != null + && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getUpdateTimeBuilder().mergeFrom(value); + } else { + updateTime_ = value; + } + } else { + updateTimeBuilder_.mergeFrom(value); + } + if (updateTime_ != null) { + bitField0_ |= 0x00000080; + onChanged(); } - checkByteStringIsUtf8(value); - uid_ = value; - bitField0_ |= 0x00000004; - onChanged(); return this; } - private boolean reconciling_; - /** * * *
            -     * Output only. Indicates whether this workstation cluster is currently being
            -     * updated to match its intended state.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The reconciling. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public boolean getReconciling() { - return reconciling_; + public Builder clearUpdateTime() { + bitField0_ = (bitField0_ & ~0x00000080); + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; + } + onChanged(); + return this; } /** * * *
            -     * Output only. Indicates whether this workstation cluster is currently being
            -     * updated to match its intended state.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The reconciling to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setReconciling(boolean value) { - - reconciling_ = value; - bitField0_ |= 0x00000008; + public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { + bitField0_ |= 0x00000080; onChanged(); - return this; + return internalGetUpdateTimeFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. Indicates whether this workstation cluster is currently being
            -     * updated to match its intended state.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearReconciling() { - bitField0_ = (bitField0_ & ~0x00000008); - reconciling_ = false; - onChanged(); - return this; - } - - private com.google.protobuf.MapField annotations_; - - private com.google.protobuf.MapField - internalGetAnnotations() { - if (annotations_ == null) { - return com.google.protobuf.MapField.emptyMapField( - AnnotationsDefaultEntryHolder.defaultEntry); - } - return annotations_; - } - - private com.google.protobuf.MapField - internalGetMutableAnnotations() { - if (annotations_ == null) { - annotations_ = - com.google.protobuf.MapField.newMapField(AnnotationsDefaultEntryHolder.defaultEntry); - } - if (!annotations_.isMutable()) { - annotations_ = annotations_.copy(); + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + if (updateTimeBuilder_ != null) { + return updateTimeBuilder_.getMessageOrBuilder(); + } else { + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; } - bitField0_ |= 0x00000010; - onChanged(); - return annotations_; - } - - public int getAnnotationsCount() { - return internalGetAnnotations().getMap().size(); } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - @java.lang.Override - public boolean containsAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetUpdateTimeFieldBuilder() { + if (updateTimeBuilder_ == null) { + updateTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getUpdateTime(), getParentForChildren(), isClean()); + updateTime_ = null; } - return internalGetAnnotations().getMap().containsKey(key); + return updateTimeBuilder_; } - /** Use {@link #getAnnotationsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getAnnotations() { - return getAnnotationsMap(); - } + private com.google.protobuf.Timestamp deleteTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + deleteTimeBuilder_; /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * + * + * @return Whether the deleteTime field is set. */ - @java.lang.Override - public java.util.Map getAnnotationsMap() { - return internalGetAnnotations().getMap(); + public boolean hasDeleteTime() { + return ((bitField0_ & 0x00000100) != 0); } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * + * + * @return The deleteTime. */ - @java.lang.Override - public /* nullable */ java.lang.String getAnnotationsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public com.google.protobuf.Timestamp getDeleteTime() { + if (deleteTimeBuilder_ == null) { + return deleteTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : deleteTime_; + } else { + return deleteTimeBuilder_.getMessage(); } - java.util.Map map = internalGetAnnotations().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - @java.lang.Override - public java.lang.String getAnnotationsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetAnnotations().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + public Builder setDeleteTime(com.google.protobuf.Timestamp value) { + if (deleteTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deleteTime_ = value; + } else { + deleteTimeBuilder_.setMessage(value); } - return map.get(key); - } - - public Builder clearAnnotations() { - bitField0_ = (bitField0_ & ~0x00000010); - internalGetMutableAnnotations().getMutableMap().clear(); + bitField0_ |= 0x00000100; + onChanged(); return this; } @@ -3823,46 +6268,51 @@ public Builder clearAnnotations() { * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder removeAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (deleteTimeBuilder_ == null) { + deleteTime_ = builderForValue.build(); + } else { + deleteTimeBuilder_.setMessage(builderForValue.build()); } - internalGetMutableAnnotations().getMutableMap().remove(key); + bitField0_ |= 0x00000100; + onChanged(); return this; } - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableAnnotations() { - bitField0_ |= 0x00000010; - return internalGetMutableAnnotations().getMutableMap(); - } - /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder putAnnotations(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { + if (deleteTimeBuilder_ == null) { + if (((bitField0_ & 0x00000100) != 0) + && deleteTime_ != null + && deleteTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getDeleteTimeBuilder().mergeFrom(value); + } else { + deleteTime_ = value; + } + } else { + deleteTimeBuilder_.mergeFrom(value); } - if (value == null) { - throw new NullPointerException("map value"); + if (deleteTime_ != null) { + bitField0_ |= 0x00000100; + onChanged(); } - internalGetMutableAnnotations().getMutableMap().put(key, value); - bitField0_ |= 0x00000010; return this; } @@ -3870,190 +6320,183 @@ public Builder putAnnotations(java.lang.String key, java.lang.String value) { * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder putAllAnnotations(java.util.Map values) { - internalGetMutableAnnotations().getMutableMap().putAll(values); - bitField0_ |= 0x00000010; - return this; - } - - private com.google.protobuf.MapField labels_; - - private com.google.protobuf.MapField internalGetLabels() { - if (labels_ == null) { - return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); - } - return labels_; - } - - private com.google.protobuf.MapField - internalGetMutableLabels() { - if (labels_ == null) { - labels_ = com.google.protobuf.MapField.newMapField(LabelsDefaultEntryHolder.defaultEntry); - } - if (!labels_.isMutable()) { - labels_ = labels_.copy(); + public Builder clearDeleteTime() { + bitField0_ = (bitField0_ & ~0x00000100); + deleteTime_ = null; + if (deleteTimeBuilder_ != null) { + deleteTimeBuilder_.dispose(); + deleteTimeBuilder_ = null; } - bitField0_ |= 0x00000020; onChanged(); - return labels_; + return this; } - public int getLabelsCount() { - return internalGetLabels().getMap().size(); + /** + * + * + *
            +     * Output only. Time when this workstation cluster was soft-deleted.
            +     * 
            + * + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.Timestamp.Builder getDeleteTimeBuilder() { + bitField0_ |= 0x00000100; + onChanged(); + return internalGetDeleteTimeFieldBuilder().getBuilder(); } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation cluster and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public boolean containsLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { + if (deleteTimeBuilder_ != null) { + return deleteTimeBuilder_.getMessageOrBuilder(); + } else { + return deleteTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : deleteTime_; } - return internalGetLabels().getMap().containsKey(key); - } - - /** Use {@link #getLabelsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getLabels() { - return getLabelsMap(); } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation cluster and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public java.util.Map getLabelsMap() { - return internalGetLabels().getMap(); + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetDeleteTimeFieldBuilder() { + if (deleteTimeBuilder_ == null) { + deleteTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getDeleteTime(), getParentForChildren(), isClean()); + deleteTime_ = null; + } + return deleteTimeBuilder_; } + private java.lang.Object etag_ = ""; + /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation cluster and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The etag. */ - @java.lang.Override - public /* nullable */ java.lang.String getLabelsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetLabels().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; + public java.lang.String getEtag() { + java.lang.Object ref = etag_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + etag_ = s; + return s; + } else { + return (java.lang.String) ref; + } } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation cluster and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for etag. */ - @java.lang.Override - public java.lang.String getLabelsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetLabels().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + public com.google.protobuf.ByteString getEtagBytes() { + java.lang.Object ref = etag_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + etag_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - return map.get(key); - } - - public Builder clearLabels() { - bitField0_ = (bitField0_ & ~0x00000020); - internalGetMutableLabels().getMutableMap().clear(); - return this; } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation cluster and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The etag to set. + * @return This builder for chaining. */ - public Builder removeLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder setEtag(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - internalGetMutableLabels().getMutableMap().remove(key); + etag_ = value; + bitField0_ |= 0x00000200; + onChanged(); return this; } - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableLabels() { - bitField0_ |= 0x00000020; - return internalGetMutableLabels().getMutableMap(); - } - /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation cluster and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. */ - public Builder putLabels(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); - } - if (value == null) { - throw new NullPointerException("map value"); - } - internalGetMutableLabels().getMutableMap().put(key, value); - bitField0_ |= 0x00000020; + public Builder clearEtag() { + etag_ = getDefaultInstance().getEtag(); + bitField0_ = (bitField0_ & ~0x00000200); + onChanged(); return this; } @@ -4061,64 +6504,74 @@ public Builder putLabels(java.lang.String key, java.lang.String value) { * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation cluster and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for etag to set. + * @return This builder for chaining. */ - public Builder putAllLabels(java.util.Map values) { - internalGetMutableLabels().getMutableMap().putAll(values); - bitField0_ |= 0x00000020; + public Builder setEtagBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + etag_ = value; + bitField0_ |= 0x00000200; + onChanged(); return this; } - private com.google.protobuf.Timestamp createTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - createTimeBuilder_; + private java.lang.Object network_ = ""; /** * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Immutable. Name of the Compute Engine network in which instances associated
            +     * with this workstation cluster will be created.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; * - * @return Whether the createTime field is set. + * @return The network. */ - public boolean hasCreateTime() { - return ((bitField0_ & 0x00000040) != 0); + public java.lang.String getNetwork() { + java.lang.Object ref = network_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + network_ = s; + return s; + } else { + return (java.lang.String) ref; + } } /** * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Immutable. Name of the Compute Engine network in which instances associated
            +     * with this workstation cluster will be created.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; * - * @return The createTime. + * @return The bytes for network. */ - public com.google.protobuf.Timestamp getCreateTime() { - if (createTimeBuilder_ == null) { - return createTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : createTime_; + public com.google.protobuf.ByteString getNetworkBytes() { + java.lang.Object ref = network_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + network_ = b; + return b; } else { - return createTimeBuilder_.getMessage(); + return (com.google.protobuf.ByteString) ref; } } @@ -4126,23 +6579,21 @@ public com.google.protobuf.Timestamp getCreateTime() { * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Immutable. Name of the Compute Engine network in which instances associated
            +     * with this workstation cluster will be created.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The network to set. + * @return This builder for chaining. */ - public Builder setCreateTime(com.google.protobuf.Timestamp value) { - if (createTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - createTime_ = value; - } else { - createTimeBuilder_.setMessage(value); + public Builder setNetwork(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - bitField0_ |= 0x00000040; + network_ = value; + bitField0_ |= 0x00000400; onChanged(); return this; } @@ -4151,20 +6602,17 @@ public Builder setCreateTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Immutable. Name of the Compute Engine network in which instances associated
            +     * with this workstation cluster will be created.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return This builder for chaining. */ - public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (createTimeBuilder_ == null) { - createTime_ = builderForValue.build(); - } else { - createTimeBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000040; + public Builder clearNetwork() { + network_ = getDefaultInstance().getNetwork(); + bitField0_ = (bitField0_ & ~0x00000400); onChanged(); return this; } @@ -4173,164 +6621,172 @@ public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForVal * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Immutable. Name of the Compute Engine network in which instances associated
            +     * with this workstation cluster will be created.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The bytes for network to set. + * @return This builder for chaining. */ - public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { - if (createTimeBuilder_ == null) { - if (((bitField0_ & 0x00000040) != 0) - && createTime_ != null - && createTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getCreateTimeBuilder().mergeFrom(value); - } else { - createTime_ = value; - } - } else { - createTimeBuilder_.mergeFrom(value); - } - if (createTime_ != null) { - bitField0_ |= 0x00000040; - onChanged(); + public Builder setNetworkBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } + checkByteStringIsUtf8(value); + network_ = value; + bitField0_ |= 0x00000400; + onChanged(); return this; } + private java.lang.Object subnetwork_ = ""; + /** * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Immutable. Name of the Compute Engine subnetwork in which instances
            +     * associated with this workstation cluster will be created. Must be part of
            +     * the subnetwork specified for this workstation cluster.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - public Builder clearCreateTime() { - bitField0_ = (bitField0_ & ~0x00000040); - createTime_ = null; - if (createTimeBuilder_ != null) { - createTimeBuilder_.dispose(); - createTimeBuilder_ = null; + * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The subnetwork. + */ + public java.lang.String getSubnetwork() { + java.lang.Object ref = subnetwork_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + subnetwork_ = s; + return s; + } else { + return (java.lang.String) ref; } - onChanged(); - return this; } /** * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Immutable. Name of the Compute Engine subnetwork in which instances
            +     * associated with this workstation cluster will be created. Must be part of
            +     * the subnetwork specified for this workstation cluster.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for subnetwork. */ - public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { - bitField0_ |= 0x00000040; - onChanged(); - return internalGetCreateTimeFieldBuilder().getBuilder(); + public com.google.protobuf.ByteString getSubnetworkBytes() { + java.lang.Object ref = subnetwork_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + subnetwork_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } /** * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Immutable. Name of the Compute Engine subnetwork in which instances
            +     * associated with this workstation cluster will be created. Must be part of
            +     * the subnetwork specified for this workstation cluster.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The subnetwork to set. + * @return This builder for chaining. */ - public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { - if (createTimeBuilder_ != null) { - return createTimeBuilder_.getMessageOrBuilder(); - } else { - return createTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : createTime_; + public Builder setSubnetwork(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } + subnetwork_ = value; + bitField0_ |= 0x00000800; + onChanged(); + return this; } /** * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Immutable. Name of the Compute Engine subnetwork in which instances
            +     * associated with this workstation cluster will be created. Must be part of
            +     * the subnetwork specified for this workstation cluster.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetCreateTimeFieldBuilder() { - if (createTimeBuilder_ == null) { - createTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getCreateTime(), getParentForChildren(), isClean()); - createTime_ = null; - } - return createTimeBuilder_; + public Builder clearSubnetwork() { + subnetwork_ = getDefaultInstance().getSubnetwork(); + bitField0_ = (bitField0_ & ~0x00000800); + onChanged(); + return this; } - private com.google.protobuf.Timestamp updateTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - updateTimeBuilder_; - /** * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Immutable. Name of the Compute Engine subnetwork in which instances
            +     * associated with this workstation cluster will be created. Must be part of
            +     * the subnetwork specified for this workstation cluster.
                  * 
            * - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; * - * @return Whether the updateTime field is set. + * @param value The bytes for subnetwork to set. + * @return This builder for chaining. */ - public boolean hasUpdateTime() { - return ((bitField0_ & 0x00000080) != 0); + public Builder setSubnetworkBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + subnetwork_ = value; + bitField0_ |= 0x00000800; + onChanged(); + return this; } + private java.lang.Object controlPlaneIp_ = ""; + /** * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Output only. The private IP address of the control plane for this
            +     * workstation cluster. Workstation VMs need access to this IP address to work
            +     * with the service, so make sure that your firewall rules allow egress from
            +     * the workstation VMs to this address.
                  * 
            * - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The updateTime. + * @return The controlPlaneIp. */ - public com.google.protobuf.Timestamp getUpdateTime() { - if (updateTimeBuilder_ == null) { - return updateTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : updateTime_; + public java.lang.String getControlPlaneIp() { + java.lang.Object ref = controlPlaneIp_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + controlPlaneIp_ = s; + return s; } else { - return updateTimeBuilder_.getMessage(); + return (java.lang.String) ref; } } @@ -4338,45 +6794,49 @@ public com.google.protobuf.Timestamp getUpdateTime() { * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Output only. The private IP address of the control plane for this
            +     * workstation cluster. Workstation VMs need access to this IP address to work
            +     * with the service, so make sure that your firewall rules allow egress from
            +     * the workstation VMs to this address.
                  * 
            * - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for controlPlaneIp. */ - public Builder setUpdateTime(com.google.protobuf.Timestamp value) { - if (updateTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - updateTime_ = value; + public com.google.protobuf.ByteString getControlPlaneIpBytes() { + java.lang.Object ref = controlPlaneIp_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + controlPlaneIp_ = b; + return b; } else { - updateTimeBuilder_.setMessage(value); + return (com.google.protobuf.ByteString) ref; } - bitField0_ |= 0x00000080; - onChanged(); - return this; } /** * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Output only. The private IP address of the control plane for this
            +     * workstation cluster. Workstation VMs need access to this IP address to work
            +     * with the service, so make sure that your firewall rules allow egress from
            +     * the workstation VMs to this address.
                  * 
            * - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The controlPlaneIp to set. + * @return This builder for chaining. */ - public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (updateTimeBuilder_ == null) { - updateTime_ = builderForValue.build(); - } else { - updateTimeBuilder_.setMessage(builderForValue.build()); + public Builder setControlPlaneIp(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - bitField0_ |= 0x00000080; + controlPlaneIp_ = value; + bitField0_ |= 0x00001000; onChanged(); return this; } @@ -4385,29 +6845,20 @@ public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForVal * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Output only. The private IP address of the control plane for this
            +     * workstation cluster. Workstation VMs need access to this IP address to work
            +     * with the service, so make sure that your firewall rules allow egress from
            +     * the workstation VMs to this address.
                  * 
            * - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { - if (updateTimeBuilder_ == null) { - if (((bitField0_ & 0x00000080) != 0) - && updateTime_ != null - && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getUpdateTimeBuilder().mergeFrom(value); - } else { - updateTime_ = value; - } - } else { - updateTimeBuilder_.mergeFrom(value); - } - if (updateTime_ != null) { - bitField0_ |= 0x00000080; - onChanged(); - } + public Builder clearControlPlaneIp() { + controlPlaneIp_ = getDefaultInstance().getControlPlaneIp(); + bitField0_ = (bitField0_ & ~0x00001000); + onChanged(); return this; } @@ -4415,59 +6866,75 @@ public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Output only. The private IP address of the control plane for this
            +     * workstation cluster. Workstation VMs need access to this IP address to work
            +     * with the service, so make sure that your firewall rules allow egress from
            +     * the workstation VMs to this address.
                  * 
            * - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for controlPlaneIp to set. + * @return This builder for chaining. */ - public Builder clearUpdateTime() { - bitField0_ = (bitField0_ & ~0x00000080); - updateTime_ = null; - if (updateTimeBuilder_ != null) { - updateTimeBuilder_.dispose(); - updateTimeBuilder_ = null; + public Builder setControlPlaneIpBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } + checkByteStringIsUtf8(value); + controlPlaneIp_ = value; + bitField0_ |= 0x00001000; onChanged(); return this; } + private com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig + privateClusterConfig_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig, + com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig.Builder, + com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfigOrBuilder> + privateClusterConfigBuilder_; + /** * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return Whether the privateClusterConfig field is set. */ - public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { - bitField0_ |= 0x00000080; - onChanged(); - return internalGetUpdateTimeFieldBuilder().getBuilder(); + public boolean hasPrivateClusterConfig() { + return ((bitField0_ & 0x00002000) != 0); } /** * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The privateClusterConfig. */ - public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { - if (updateTimeBuilder_ != null) { - return updateTimeBuilder_.getMessageOrBuilder(); + public com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig + getPrivateClusterConfig() { + if (privateClusterConfigBuilder_ == null) { + return privateClusterConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig + .getDefaultInstance() + : privateClusterConfig_; } else { - return updateTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : updateTime_; + return privateClusterConfigBuilder_.getMessage(); } } @@ -4475,98 +6942,103 @@ public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetUpdateTimeFieldBuilder() { - if (updateTimeBuilder_ == null) { - updateTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getUpdateTime(), getParentForChildren(), isClean()); - updateTime_ = null; + public Builder setPrivateClusterConfig( + com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig value) { + if (privateClusterConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + privateClusterConfig_ = value; + } else { + privateClusterConfigBuilder_.setMessage(value); } - return updateTimeBuilder_; + bitField0_ |= 0x00002000; + onChanged(); + return this; } - private com.google.protobuf.Timestamp deleteTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - deleteTimeBuilder_; - /** * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the deleteTime field is set. */ - public boolean hasDeleteTime() { - return ((bitField0_ & 0x00000100) != 0); + public Builder setPrivateClusterConfig( + com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig.Builder + builderForValue) { + if (privateClusterConfigBuilder_ == null) { + privateClusterConfig_ = builderForValue.build(); + } else { + privateClusterConfigBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00002000; + onChanged(); + return this; } /** * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The deleteTime. */ - public com.google.protobuf.Timestamp getDeleteTime() { - if (deleteTimeBuilder_ == null) { - return deleteTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : deleteTime_; + public Builder mergePrivateClusterConfig( + com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig value) { + if (privateClusterConfigBuilder_ == null) { + if (((bitField0_ & 0x00002000) != 0) + && privateClusterConfig_ != null + && privateClusterConfig_ + != com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig + .getDefaultInstance()) { + getPrivateClusterConfigBuilder().mergeFrom(value); + } else { + privateClusterConfig_ = value; + } } else { - return deleteTimeBuilder_.getMessage(); + privateClusterConfigBuilder_.mergeFrom(value); } + if (privateClusterConfig_ != null) { + bitField0_ |= 0x00002000; + onChanged(); + } + return this; } /** * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setDeleteTime(com.google.protobuf.Timestamp value) { - if (deleteTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - deleteTime_ = value; - } else { - deleteTimeBuilder_.setMessage(value); + public Builder clearPrivateClusterConfig() { + bitField0_ = (bitField0_ & ~0x00002000); + privateClusterConfig_ = null; + if (privateClusterConfigBuilder_ != null) { + privateClusterConfigBuilder_.dispose(); + privateClusterConfigBuilder_ = null; } - bitField0_ |= 0x00000100; onChanged(); return this; } @@ -4575,111 +7047,115 @@ public Builder setDeleteTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (deleteTimeBuilder_ == null) { - deleteTime_ = builderForValue.build(); - } else { - deleteTimeBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000100; + public com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig.Builder + getPrivateClusterConfigBuilder() { + bitField0_ |= 0x00002000; onChanged(); - return this; + return internalGetPrivateClusterConfigFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { - if (deleteTimeBuilder_ == null) { - if (((bitField0_ & 0x00000100) != 0) - && deleteTime_ != null - && deleteTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getDeleteTimeBuilder().mergeFrom(value); - } else { - deleteTime_ = value; - } + public com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfigOrBuilder + getPrivateClusterConfigOrBuilder() { + if (privateClusterConfigBuilder_ != null) { + return privateClusterConfigBuilder_.getMessageOrBuilder(); } else { - deleteTimeBuilder_.mergeFrom(value); - } - if (deleteTime_ != null) { - bitField0_ |= 0x00000100; - onChanged(); + return privateClusterConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig + .getDefaultInstance() + : privateClusterConfig_; } - return this; } /** * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearDeleteTime() { - bitField0_ = (bitField0_ & ~0x00000100); - deleteTime_ = null; - if (deleteTimeBuilder_ != null) { - deleteTimeBuilder_.dispose(); - deleteTimeBuilder_ = null; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig, + com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig.Builder, + com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfigOrBuilder> + internalGetPrivateClusterConfigFieldBuilder() { + if (privateClusterConfigBuilder_ == null) { + privateClusterConfigBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig, + com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig.Builder, + com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfigOrBuilder>( + getPrivateClusterConfig(), getParentForChildren(), isClean()); + privateClusterConfig_ = null; } - onChanged(); - return this; + return privateClusterConfigBuilder_; } + private com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig domainConfig_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig, + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig.Builder, + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfigOrBuilder> + domainConfigBuilder_; + /** * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return Whether the domainConfig field is set. */ - public com.google.protobuf.Timestamp.Builder getDeleteTimeBuilder() { - bitField0_ |= 0x00000100; - onChanged(); - return internalGetDeleteTimeFieldBuilder().getBuilder(); + public boolean hasDomainConfig() { + return ((bitField0_ & 0x00004000) != 0); } /** * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The domainConfig. */ - public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { - if (deleteTimeBuilder_ != null) { - return deleteTimeBuilder_.getMessageOrBuilder(); + public com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig getDomainConfig() { + if (domainConfigBuilder_ == null) { + return domainConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig.getDefaultInstance() + : domainConfig_; } else { - return deleteTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : deleteTime_; + return domainConfigBuilder_.getMessage(); } } @@ -4687,102 +7163,102 @@ public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetDeleteTimeFieldBuilder() { - if (deleteTimeBuilder_ == null) { - deleteTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getDeleteTime(), getParentForChildren(), isClean()); - deleteTime_ = null; + public Builder setDomainConfig( + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig value) { + if (domainConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + domainConfig_ = value; + } else { + domainConfigBuilder_.setMessage(value); } - return deleteTimeBuilder_; + bitField0_ |= 0x00004000; + onChanged(); + return this; } - private java.lang.Object etag_ = ""; - /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The etag. + * + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public java.lang.String getEtag() { - java.lang.Object ref = etag_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - etag_ = s; - return s; + public Builder setDomainConfig( + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig.Builder builderForValue) { + if (domainConfigBuilder_ == null) { + domainConfig_ = builderForValue.build(); } else { - return (java.lang.String) ref; + domainConfigBuilder_.setMessage(builderForValue.build()); } + bitField0_ |= 0x00004000; + onChanged(); + return this; } /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for etag. + * + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public com.google.protobuf.ByteString getEtagBytes() { - java.lang.Object ref = etag_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - etag_ = b; - return b; + public Builder mergeDomainConfig( + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig value) { + if (domainConfigBuilder_ == null) { + if (((bitField0_ & 0x00004000) != 0) + && domainConfig_ != null + && domainConfig_ + != com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig + .getDefaultInstance()) { + getDomainConfigBuilder().mergeFrom(value); + } else { + domainConfig_ = value; + } } else { - return (com.google.protobuf.ByteString) ref; + domainConfigBuilder_.mergeFrom(value); + } + if (domainConfig_ != null) { + bitField0_ |= 0x00004000; + onChanged(); } + return this; } /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The etag to set. - * @return This builder for chaining. + * + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setEtag(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder clearDomainConfig() { + bitField0_ = (bitField0_ & ~0x00004000); + domainConfig_ = null; + if (domainConfigBuilder_ != null) { + domainConfigBuilder_.dispose(); + domainConfigBuilder_ = null; } - etag_ = value; - bitField0_ |= 0x00000200; onChanged(); return this; } @@ -4791,116 +7267,110 @@ public Builder setEtag(java.lang.String value) { * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. + * + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder clearEtag() { - etag_ = getDefaultInstance().getEtag(); - bitField0_ = (bitField0_ & ~0x00000200); + public com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig.Builder + getDomainConfigBuilder() { + bitField0_ |= 0x00004000; onChanged(); - return this; + return internalGetDomainConfigFieldBuilder().getBuilder(); } /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for etag to set. - * @return This builder for chaining. + * + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setEtagBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public com.google.cloud.workstations.v1.WorkstationCluster.DomainConfigOrBuilder + getDomainConfigOrBuilder() { + if (domainConfigBuilder_ != null) { + return domainConfigBuilder_.getMessageOrBuilder(); + } else { + return domainConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig.getDefaultInstance() + : domainConfig_; } - checkByteStringIsUtf8(value); - etag_ = value; - bitField0_ |= 0x00000200; - onChanged(); - return this; } - private java.lang.Object network_ = ""; - /** * * *
            -     * Immutable. Name of the Compute Engine network in which instances associated
            -     * with this workstation cluster will be created.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * - * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The network. + * + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public java.lang.String getNetwork() { - java.lang.Object ref = network_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - network_ = s; - return s; - } else { - return (java.lang.String) ref; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig, + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig.Builder, + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfigOrBuilder> + internalGetDomainConfigFieldBuilder() { + if (domainConfigBuilder_ == null) { + domainConfigBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig, + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig.Builder, + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfigOrBuilder>( + getDomainConfig(), getParentForChildren(), isClean()); + domainConfig_ = null; } + return domainConfigBuilder_; } + private boolean degraded_; + /** * * *
            -     * Immutable. Name of the Compute Engine network in which instances associated
            -     * with this workstation cluster will be created.
            +     * Output only. Whether this workstation cluster is in degraded mode, in which
            +     * case it may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1.WorkstationCluster.conditions]
            +     * field contains detailed information about the status of the cluster.
                  * 
            * - * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The bytes for network. + * @return The degraded. */ - public com.google.protobuf.ByteString getNetworkBytes() { - java.lang.Object ref = network_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - network_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + @java.lang.Override + public boolean getDegraded() { + return degraded_; } /** * * *
            -     * Immutable. Name of the Compute Engine network in which instances associated
            -     * with this workstation cluster will be created.
            +     * Output only. Whether this workstation cluster is in degraded mode, in which
            +     * case it may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1.WorkstationCluster.conditions]
            +     * field contains detailed information about the status of the cluster.
                  * 
            * - * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The network to set. + * @param value The degraded to set. * @return This builder for chaining. */ - public Builder setNetwork(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - network_ = value; - bitField0_ |= 0x00000400; + public Builder setDegraded(boolean value) { + + degraded_ = value; + bitField0_ |= 0x00008000; onChanged(); return this; } @@ -4909,69 +7379,73 @@ public Builder setNetwork(java.lang.String value) { * * *
            -     * Immutable. Name of the Compute Engine network in which instances associated
            -     * with this workstation cluster will be created.
            +     * Output only. Whether this workstation cluster is in degraded mode, in which
            +     * case it may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1.WorkstationCluster.conditions]
            +     * field contains detailed information about the status of the cluster.
                  * 
            * - * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ - public Builder clearNetwork() { - network_ = getDefaultInstance().getNetwork(); - bitField0_ = (bitField0_ & ~0x00000400); + public Builder clearDegraded() { + bitField0_ = (bitField0_ & ~0x00008000); + degraded_ = false; onChanged(); return this; } + private java.util.List conditions_ = java.util.Collections.emptyList(); + + private void ensureConditionsIsMutable() { + if (!((bitField0_ & 0x00010000) != 0)) { + conditions_ = new java.util.ArrayList(conditions_); + bitField0_ |= 0x00010000; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> + conditionsBuilder_; + /** * * *
            -     * Immutable. Name of the Compute Engine network in which instances associated
            -     * with this workstation cluster will be created.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The bytes for network to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setNetworkBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public java.util.List getConditionsList() { + if (conditionsBuilder_ == null) { + return java.util.Collections.unmodifiableList(conditions_); + } else { + return conditionsBuilder_.getMessageList(); } - checkByteStringIsUtf8(value); - network_ = value; - bitField0_ |= 0x00000400; - onChanged(); - return this; } - private java.lang.Object subnetwork_ = ""; - /** * * *
            -     * Immutable. Name of the Compute Engine subnetwork in which instances
            -     * associated with this workstation cluster will be created. Must be part of
            -     * the subnetwork specified for this workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The subnetwork. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getSubnetwork() { - java.lang.Object ref = subnetwork_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - subnetwork_ = s; - return s; + public int getConditionsCount() { + if (conditionsBuilder_ == null) { + return conditions_.size(); } else { - return (java.lang.String) ref; + return conditionsBuilder_.getCount(); } } @@ -4979,48 +7453,68 @@ public java.lang.String getSubnetwork() { * * *
            -     * Immutable. Name of the Compute Engine subnetwork in which instances
            -     * associated with this workstation cluster will be created. Must be part of
            -     * the subnetwork specified for this workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.rpc.Status getConditions(int index) { + if (conditionsBuilder_ == null) { + return conditions_.get(index); + } else { + return conditionsBuilder_.getMessage(index); + } + } + + /** * - * @return The bytes for subnetwork. + * + *
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
            +     * 
            + * + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getSubnetworkBytes() { - java.lang.Object ref = subnetwork_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - subnetwork_ = b; - return b; + public Builder setConditions(int index, com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionsIsMutable(); + conditions_.set(index, value); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + conditionsBuilder_.setMessage(index, value); } + return this; } /** * * *
            -     * Immutable. Name of the Compute Engine subnetwork in which instances
            -     * associated with this workstation cluster will be created. Must be part of
            -     * the subnetwork specified for this workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The subnetwork to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setSubnetwork(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder setConditions(int index, com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.set(index, builderForValue.build()); + onChanged(); + } else { + conditionsBuilder_.setMessage(index, builderForValue.build()); } - subnetwork_ = value; - bitField0_ |= 0x00000800; - onChanged(); return this; } @@ -5028,19 +7522,25 @@ public Builder setSubnetwork(java.lang.String value) { * * *
            -     * Immutable. Name of the Compute Engine subnetwork in which instances
            -     * associated with this workstation cluster will be created. Must be part of
            -     * the subnetwork specified for this workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearSubnetwork() { - subnetwork_ = getDefaultInstance().getSubnetwork(); - bitField0_ = (bitField0_ & ~0x00000800); - onChanged(); + public Builder addConditions(com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionsIsMutable(); + conditions_.add(value); + onChanged(); + } else { + conditionsBuilder_.addMessage(value); + } return this; } @@ -5048,103 +7548,94 @@ public Builder clearSubnetwork() { * * *
            -     * Immutable. Name of the Compute Engine subnetwork in which instances
            -     * associated with this workstation cluster will be created. Must be part of
            -     * the subnetwork specified for this workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The bytes for subnetwork to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setSubnetworkBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder addConditions(int index, com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionsIsMutable(); + conditions_.add(index, value); + onChanged(); + } else { + conditionsBuilder_.addMessage(index, value); } - checkByteStringIsUtf8(value); - subnetwork_ = value; - bitField0_ |= 0x00000800; - onChanged(); return this; } - private java.lang.Object controlPlaneIp_ = ""; - /** * * *
            -     * Output only. The private IP address of the control plane for this
            -     * workstation cluster. Workstation VMs need access to this IP address to work
            -     * with the service, so make sure that your firewall rules allow egress from
            -     * the workstation VMs to this address.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The controlPlaneIp. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getControlPlaneIp() { - java.lang.Object ref = controlPlaneIp_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - controlPlaneIp_ = s; - return s; + public Builder addConditions(com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(builderForValue.build()); + onChanged(); } else { - return (java.lang.String) ref; + conditionsBuilder_.addMessage(builderForValue.build()); } + return this; } /** * * *
            -     * Output only. The private IP address of the control plane for this
            -     * workstation cluster. Workstation VMs need access to this IP address to work
            -     * with the service, so make sure that your firewall rules allow egress from
            -     * the workstation VMs to this address.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for controlPlaneIp. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getControlPlaneIpBytes() { - java.lang.Object ref = controlPlaneIp_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - controlPlaneIp_ = b; - return b; + public Builder addConditions(int index, com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(index, builderForValue.build()); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + conditionsBuilder_.addMessage(index, builderForValue.build()); } + return this; } /** * * *
            -     * Output only. The private IP address of the control plane for this
            -     * workstation cluster. Workstation VMs need access to this IP address to work
            -     * with the service, so make sure that your firewall rules allow egress from
            -     * the workstation VMs to this address.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The controlPlaneIp to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setControlPlaneIp(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder addAllConditions(java.lang.Iterable values) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, conditions_); + onChanged(); + } else { + conditionsBuilder_.addAllMessages(values); } - controlPlaneIp_ = value; - bitField0_ |= 0x00001000; - onChanged(); return this; } @@ -5152,20 +7643,22 @@ public Builder setControlPlaneIp(java.lang.String value) { * * *
            -     * Output only. The private IP address of the control plane for this
            -     * workstation cluster. Workstation VMs need access to this IP address to work
            -     * with the service, so make sure that your firewall rules allow egress from
            -     * the workstation VMs to this address.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearControlPlaneIp() { - controlPlaneIp_ = getDefaultInstance().getControlPlaneIp(); - bitField0_ = (bitField0_ & ~0x00001000); - onChanged(); + public Builder clearConditions() { + if (conditionsBuilder_ == null) { + conditions_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00010000); + onChanged(); + } else { + conditionsBuilder_.clear(); + } return this; } @@ -5173,75 +7666,78 @@ public Builder clearControlPlaneIp() { * * *
            -     * Output only. The private IP address of the control plane for this
            -     * workstation cluster. Workstation VMs need access to this IP address to work
            -     * with the service, so make sure that your firewall rules allow egress from
            -     * the workstation VMs to this address.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The bytes for controlPlaneIp to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setControlPlaneIpBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder removeConditions(int index) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.remove(index); + onChanged(); + } else { + conditionsBuilder_.remove(index); } - checkByteStringIsUtf8(value); - controlPlaneIp_ = value; - bitField0_ |= 0x00001000; - onChanged(); return this; } - private com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig - privateClusterConfig_; - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig, - com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig.Builder, - com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfigOrBuilder> - privateClusterConfigBuilder_; - /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; * + */ + public com.google.rpc.Status.Builder getConditionsBuilder(int index) { + return internalGetConditionsFieldBuilder().getBuilder(index); + } + + /** * - * @return Whether the privateClusterConfig field is set. + * + *
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
            +     * 
            + * + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public boolean hasPrivateClusterConfig() { - return ((bitField0_ & 0x00002000) != 0); + public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { + if (conditionsBuilder_ == null) { + return conditions_.get(index); + } else { + return conditionsBuilder_.getMessageOrBuilder(index); + } } /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @return The privateClusterConfig. */ - public com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig - getPrivateClusterConfig() { - if (privateClusterConfigBuilder_ == null) { - return privateClusterConfig_ == null - ? com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig - .getDefaultInstance() - : privateClusterConfig_; + public java.util.List getConditionsOrBuilderList() { + if (conditionsBuilder_ != null) { + return conditionsBuilder_.getMessageOrBuilderList(); } else { - return privateClusterConfigBuilder_.getMessage(); + return java.util.Collections.unmodifiableList(conditions_); } } @@ -5249,217 +7745,251 @@ public boolean hasPrivateClusterConfig() { * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder setPrivateClusterConfig( - com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig value) { - if (privateClusterConfigBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - privateClusterConfig_ = value; - } else { - privateClusterConfigBuilder_.setMessage(value); - } - bitField0_ |= 0x00002000; - onChanged(); - return this; + public com.google.rpc.Status.Builder addConditionsBuilder() { + return internalGetConditionsFieldBuilder() + .addBuilder(com.google.rpc.Status.getDefaultInstance()); } /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder setPrivateClusterConfig( - com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig.Builder - builderForValue) { - if (privateClusterConfigBuilder_ == null) { - privateClusterConfig_ = builderForValue.build(); - } else { - privateClusterConfigBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00002000; - onChanged(); - return this; + public com.google.rpc.Status.Builder addConditionsBuilder(int index) { + return internalGetConditionsFieldBuilder() + .addBuilder(index, com.google.rpc.Status.getDefaultInstance()); } /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder mergePrivateClusterConfig( - com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig value) { - if (privateClusterConfigBuilder_ == null) { - if (((bitField0_ & 0x00002000) != 0) - && privateClusterConfig_ != null - && privateClusterConfig_ - != com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig - .getDefaultInstance()) { - getPrivateClusterConfigBuilder().mergeFrom(value); - } else { - privateClusterConfig_ = value; - } - } else { - privateClusterConfigBuilder_.mergeFrom(value); + public java.util.List getConditionsBuilderList() { + return internalGetConditionsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> + internalGetConditionsFieldBuilder() { + if (conditionsBuilder_ == null) { + conditionsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, + com.google.rpc.Status.Builder, + com.google.rpc.StatusOrBuilder>( + conditions_, ((bitField0_ & 0x00010000) != 0), getParentForChildren(), isClean()); + conditions_ = null; } - if (privateClusterConfig_ != null) { - bitField0_ |= 0x00002000; - onChanged(); + return conditionsBuilder_; + } + + private com.google.protobuf.MapField tags_; + + private com.google.protobuf.MapField internalGetTags() { + if (tags_ == null) { + return com.google.protobuf.MapField.emptyMapField(TagsDefaultEntryHolder.defaultEntry); } - return this; + return tags_; + } + + private com.google.protobuf.MapField + internalGetMutableTags() { + if (tags_ == null) { + tags_ = com.google.protobuf.MapField.newMapField(TagsDefaultEntryHolder.defaultEntry); + } + if (!tags_.isMutable()) { + tags_ = tags_.copy(); + } + bitField0_ |= 0x00020000; + onChanged(); + return tags_; + } + + public int getTagsCount() { + return internalGetTags().getMap().size(); } /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +     * resource. For example:
            +     * "123/environment": "production",
            +     * "123/costCenter": "marketing"
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearPrivateClusterConfig() { - bitField0_ = (bitField0_ & ~0x00002000); - privateClusterConfig_ = null; - if (privateClusterConfigBuilder_ != null) { - privateClusterConfigBuilder_.dispose(); - privateClusterConfigBuilder_ = null; + @java.lang.Override + public boolean containsTags(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - onChanged(); - return this; + return internalGetTags().getMap().containsKey(key); + } + + /** Use {@link #getTagsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getTags() { + return getTagsMap(); } /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +     * resource. For example:
            +     * "123/environment": "production",
            +     * "123/costCenter": "marketing"
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig.Builder - getPrivateClusterConfigBuilder() { - bitField0_ |= 0x00002000; - onChanged(); - return internalGetPrivateClusterConfigFieldBuilder().getBuilder(); + @java.lang.Override + public java.util.Map getTagsMap() { + return internalGetTags().getMap(); } /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +     * resource. For example:
            +     * "123/environment": "production",
            +     * "123/costCenter": "marketing"
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfigOrBuilder - getPrivateClusterConfigOrBuilder() { - if (privateClusterConfigBuilder_ != null) { - return privateClusterConfigBuilder_.getMessageOrBuilder(); - } else { - return privateClusterConfig_ == null - ? com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig - .getDefaultInstance() - : privateClusterConfig_; + @java.lang.Override + public /* nullable */ java.lang.String getTagsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); } + java.util.Map map = internalGetTags().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; } /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +     * resource. For example:
            +     * "123/environment": "production",
            +     * "123/costCenter": "marketing"
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig, - com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig.Builder, - com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfigOrBuilder> - internalGetPrivateClusterConfigFieldBuilder() { - if (privateClusterConfigBuilder_ == null) { - privateClusterConfigBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig, - com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfig.Builder, - com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfigOrBuilder>( - getPrivateClusterConfig(), getParentForChildren(), isClean()); - privateClusterConfig_ = null; + @java.lang.Override + public java.lang.String getTagsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - return privateClusterConfigBuilder_; + java.util.Map map = internalGetTags().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); } - private boolean degraded_; + public Builder clearTags() { + bitField0_ = (bitField0_ & ~0x00020000); + internalGetMutableTags().getMutableMap().clear(); + return this; + } /** * * *
            -     * Output only. Whether this workstation cluster is in degraded mode, in which
            -     * case it may require user action to restore full functionality. Details can
            -     * be found in
            -     * [conditions][google.cloud.workstations.v1.WorkstationCluster.conditions].
            +     * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +     * resource. For example:
            +     * "123/environment": "production",
            +     * "123/costCenter": "marketing"
                  * 
            * - * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The degraded. + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * */ - @java.lang.Override - public boolean getDegraded() { - return degraded_; + public Builder removeTags(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableTags().getMutableMap().remove(key); + return this; + } + + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableTags() { + bitField0_ |= 0x00020000; + return internalGetMutableTags().getMutableMap(); } /** * * *
            -     * Output only. Whether this workstation cluster is in degraded mode, in which
            -     * case it may require user action to restore full functionality. Details can
            -     * be found in
            -     * [conditions][google.cloud.workstations.v1.WorkstationCluster.conditions].
            +     * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +     * resource. For example:
            +     * "123/environment": "production",
            +     * "123/costCenter": "marketing"
                  * 
            * - * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The degraded to set. - * @return This builder for chaining. + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setDegraded(boolean value) { - - degraded_ = value; - bitField0_ |= 0x00004000; - onChanged(); + public Builder putTags(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableTags().getMutableMap().put(key, value); + bitField0_ |= 0x00020000; return this; } @@ -5467,53 +7997,66 @@ public Builder setDegraded(boolean value) { * * *
            -     * Output only. Whether this workstation cluster is in degraded mode, in which
            -     * case it may require user action to restore full functionality. Details can
            -     * be found in
            -     * [conditions][google.cloud.workstations.v1.WorkstationCluster.conditions].
            +     * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +     * resource. For example:
            +     * "123/environment": "production",
            +     * "123/costCenter": "marketing"
                  * 
            * - * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder clearDegraded() { - bitField0_ = (bitField0_ & ~0x00004000); - degraded_ = false; - onChanged(); + public Builder putAllTags(java.util.Map values) { + internalGetMutableTags().getMutableMap().putAll(values); + bitField0_ |= 0x00020000; return this; } - private java.util.List conditions_ = java.util.Collections.emptyList(); + private com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gatewayConfig_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig, + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig.Builder, + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfigOrBuilder> + gatewayConfigBuilder_; - private void ensureConditionsIsMutable() { - if (!((bitField0_ & 0x00008000) != 0)) { - conditions_ = new java.util.ArrayList(conditions_); - bitField0_ |= 0x00008000; - } + /** + * + * + *
            +     * Optional. Configuration options for Cluster HTTP Gateway.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the gatewayConfig field is set. + */ + public boolean hasGatewayConfig() { + return ((bitField0_ & 0x00040000) != 0); } - private com.google.protobuf.RepeatedFieldBuilder< - com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> - conditionsBuilder_; - /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The gatewayConfig. */ - public java.util.List getConditionsList() { - if (conditionsBuilder_ == null) { - return java.util.Collections.unmodifiableList(conditions_); + public com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig getGatewayConfig() { + if (gatewayConfigBuilder_ == null) { + return gatewayConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig.getDefaultInstance() + : gatewayConfig_; } else { - return conditionsBuilder_.getMessageList(); + return gatewayConfigBuilder_.getMessage(); } } @@ -5521,64 +8064,80 @@ public java.util.List getConditionsList() { * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * */ - public int getConditionsCount() { - if (conditionsBuilder_ == null) { - return conditions_.size(); + public Builder setGatewayConfig( + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig value) { + if (gatewayConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + gatewayConfig_ = value; } else { - return conditionsBuilder_.getCount(); + gatewayConfigBuilder_.setMessage(value); } + bitField0_ |= 0x00040000; + onChanged(); + return this; } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.rpc.Status getConditions(int index) { - if (conditionsBuilder_ == null) { - return conditions_.get(index); + public Builder setGatewayConfig( + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig.Builder builderForValue) { + if (gatewayConfigBuilder_ == null) { + gatewayConfig_ = builderForValue.build(); } else { - return conditionsBuilder_.getMessage(index); + gatewayConfigBuilder_.setMessage(builderForValue.build()); } + bitField0_ |= 0x00040000; + onChanged(); + return this; } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setConditions(int index, com.google.rpc.Status value) { - if (conditionsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeGatewayConfig( + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig value) { + if (gatewayConfigBuilder_ == null) { + if (((bitField0_ & 0x00040000) != 0) + && gatewayConfig_ != null + && gatewayConfig_ + != com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig + .getDefaultInstance()) { + getGatewayConfigBuilder().mergeFrom(value); + } else { + gatewayConfig_ = value; } - ensureConditionsIsMutable(); - conditions_.set(index, value); - onChanged(); } else { - conditionsBuilder_.setMessage(index, value); + gatewayConfigBuilder_.mergeFrom(value); + } + if (gatewayConfig_ != null) { + bitField0_ |= 0x00040000; + onChanged(); } return this; } @@ -5587,22 +8146,21 @@ public Builder setConditions(int index, com.google.rpc.Status value) { * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setConditions(int index, com.google.rpc.Status.Builder builderForValue) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.set(index, builderForValue.build()); - onChanged(); - } else { - conditionsBuilder_.setMessage(index, builderForValue.build()); + public Builder clearGatewayConfig() { + bitField0_ = (bitField0_ & ~0x00040000); + gatewayConfig_ = null; + if (gatewayConfigBuilder_ != null) { + gatewayConfigBuilder_.dispose(); + gatewayConfigBuilder_ = null; } + onChanged(); return this; } @@ -5610,143 +8168,158 @@ public Builder setConditions(int index, com.google.rpc.Status.Builder builderFor * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addConditions(com.google.rpc.Status value) { - if (conditionsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConditionsIsMutable(); - conditions_.add(value); - onChanged(); - } else { - conditionsBuilder_.addMessage(value); - } - return this; + public com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig.Builder + getGatewayConfigBuilder() { + bitField0_ |= 0x00040000; + onChanged(); + return internalGetGatewayConfigFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addConditions(int index, com.google.rpc.Status value) { - if (conditionsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConditionsIsMutable(); - conditions_.add(index, value); - onChanged(); + public com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfigOrBuilder + getGatewayConfigOrBuilder() { + if (gatewayConfigBuilder_ != null) { + return gatewayConfigBuilder_.getMessageOrBuilder(); } else { - conditionsBuilder_.addMessage(index, value); + return gatewayConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig.getDefaultInstance() + : gatewayConfig_; } - return this; } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addConditions(com.google.rpc.Status.Builder builderForValue) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.add(builderForValue.build()); - onChanged(); - } else { - conditionsBuilder_.addMessage(builderForValue.build()); + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig, + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig.Builder, + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfigOrBuilder> + internalGetGatewayConfigFieldBuilder() { + if (gatewayConfigBuilder_ == null) { + gatewayConfigBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig, + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig.Builder, + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfigOrBuilder>( + getGatewayConfig(), getParentForChildren(), isClean()); + gatewayConfig_ = null; } - return this; + return gatewayConfigBuilder_; } + private java.lang.Object workstationAuthorizationUrl_ = ""; + /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the redirect URL for unauthorized requests received by
            +     * workstation VMs in this cluster.
            +     *
            +     * Redirects to this endpoint will send a base64 encoded `state` query param
            +     * containing the target workstation name and original request hostname. The
            +     * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +     * and redirecting back to the original hostname with the token.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The workstationAuthorizationUrl. */ - public Builder addConditions(int index, com.google.rpc.Status.Builder builderForValue) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.add(index, builderForValue.build()); - onChanged(); + public java.lang.String getWorkstationAuthorizationUrl() { + java.lang.Object ref = workstationAuthorizationUrl_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + workstationAuthorizationUrl_ = s; + return s; } else { - conditionsBuilder_.addMessage(index, builderForValue.build()); + return (java.lang.String) ref; } - return this; } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the redirect URL for unauthorized requests received by
            +     * workstation VMs in this cluster.
            +     *
            +     * Redirects to this endpoint will send a base64 encoded `state` query param
            +     * containing the target workstation name and original request hostname. The
            +     * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +     * and redirecting back to the original hostname with the token.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The bytes for workstationAuthorizationUrl. */ - public Builder addAllConditions(java.lang.Iterable values) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, conditions_); - onChanged(); + public com.google.protobuf.ByteString getWorkstationAuthorizationUrlBytes() { + java.lang.Object ref = workstationAuthorizationUrl_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + workstationAuthorizationUrl_ = b; + return b; } else { - conditionsBuilder_.addAllMessages(values); + return (com.google.protobuf.ByteString) ref; } - return this; } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the redirect URL for unauthorized requests received by
            +     * workstation VMs in this cluster.
            +     *
            +     * Redirects to this endpoint will send a base64 encoded `state` query param
            +     * containing the target workstation name and original request hostname. The
            +     * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +     * and redirecting back to the original hostname with the token.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @param value The workstationAuthorizationUrl to set. + * @return This builder for chaining. */ - public Builder clearConditions() { - if (conditionsBuilder_ == null) { - conditions_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00008000); - onChanged(); - } else { - conditionsBuilder_.clear(); + public Builder setWorkstationAuthorizationUrl(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } + workstationAuthorizationUrl_ = value; + bitField0_ |= 0x00080000; + onChanged(); return this; } @@ -5754,22 +8327,24 @@ public Builder clearConditions() { * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the redirect URL for unauthorized requests received by
            +     * workstation VMs in this cluster.
            +     *
            +     * Redirects to this endpoint will send a base64 encoded `state` query param
            +     * containing the target workstation name and original request hostname. The
            +     * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +     * and redirecting back to the original hostname with the token.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return This builder for chaining. */ - public Builder removeConditions(int index) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.remove(index); - onChanged(); - } else { - conditionsBuilder_.remove(index); - } + public Builder clearWorkstationAuthorizationUrl() { + workstationAuthorizationUrl_ = getDefaultInstance().getWorkstationAuthorizationUrl(); + bitField0_ = (bitField0_ & ~0x00080000); + onChanged(); return this; } @@ -5777,35 +8352,61 @@ public Builder removeConditions(int index) { * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the redirect URL for unauthorized requests received by
            +     * workstation VMs in this cluster.
            +     *
            +     * Redirects to this endpoint will send a base64 encoded `state` query param
            +     * containing the target workstation name and original request hostname. The
            +     * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +     * and redirecting back to the original hostname with the token.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @param value The bytes for workstationAuthorizationUrl to set. + * @return This builder for chaining. */ - public com.google.rpc.Status.Builder getConditionsBuilder(int index) { - return internalGetConditionsFieldBuilder().getBuilder(index); + public Builder setWorkstationAuthorizationUrlBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + workstationAuthorizationUrl_ = value; + bitField0_ |= 0x00080000; + onChanged(); + return this; } + private java.lang.Object workstationLaunchUrl_ = ""; + /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the launch URL for workstations in this cluster.
            +     * Requests sent to unstarted workstations will be redirected to this URL.
            +     *
            +     * Requests redirected to the launch endpoint will be sent with a
            +     * `workstation` and `project` query parameter containing the full workstation
            +     * resource name and project ID, respectively. The launch endpoint is
            +     * responsible for starting the workstation, polling it until it reaches
            +     * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The workstationLaunchUrl. */ - public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { - if (conditionsBuilder_ == null) { - return conditions_.get(index); + public java.lang.String getWorkstationLaunchUrl() { + java.lang.Object ref = workstationLaunchUrl_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + workstationLaunchUrl_ = s; + return s; } else { - return conditionsBuilder_.getMessageOrBuilder(index); + return (java.lang.String) ref; } } @@ -5813,19 +8414,29 @@ public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the launch URL for workstations in this cluster.
            +     * Requests sent to unstarted workstations will be redirected to this URL.
            +     *
            +     * Requests redirected to the launch endpoint will be sent with a
            +     * `workstation` and `project` query parameter containing the full workstation
            +     * resource name and project ID, respectively. The launch endpoint is
            +     * responsible for starting the workstation, polling it until it reaches
            +     * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for workstationLaunchUrl. */ - public java.util.List getConditionsOrBuilderList() { - if (conditionsBuilder_ != null) { - return conditionsBuilder_.getMessageOrBuilderList(); + public com.google.protobuf.ByteString getWorkstationLaunchUrlBytes() { + java.lang.Object ref = workstationLaunchUrl_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + workstationLaunchUrl_ = b; + return b; } else { - return java.util.Collections.unmodifiableList(conditions_); + return (com.google.protobuf.ByteString) ref; } } @@ -5833,65 +8444,84 @@ public java.util.List getConditionsOrB * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the launch URL for workstations in this cluster.
            +     * Requests sent to unstarted workstations will be redirected to this URL.
            +     *
            +     * Requests redirected to the launch endpoint will be sent with a
            +     * `workstation` and `project` query parameter containing the full workstation
            +     * resource name and project ID, respectively. The launch endpoint is
            +     * responsible for starting the workstation, polling it until it reaches
            +     * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The workstationLaunchUrl to set. + * @return This builder for chaining. */ - public com.google.rpc.Status.Builder addConditionsBuilder() { - return internalGetConditionsFieldBuilder() - .addBuilder(com.google.rpc.Status.getDefaultInstance()); + public Builder setWorkstationLaunchUrl(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + workstationLaunchUrl_ = value; + bitField0_ |= 0x00100000; + onChanged(); + return this; } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the launch URL for workstations in this cluster.
            +     * Requests sent to unstarted workstations will be redirected to this URL.
            +     *
            +     * Requests redirected to the launch endpoint will be sent with a
            +     * `workstation` and `project` query parameter containing the full workstation
            +     * resource name and project ID, respectively. The launch endpoint is
            +     * responsible for starting the workstation, polling it until it reaches
            +     * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. */ - public com.google.rpc.Status.Builder addConditionsBuilder(int index) { - return internalGetConditionsFieldBuilder() - .addBuilder(index, com.google.rpc.Status.getDefaultInstance()); + public Builder clearWorkstationLaunchUrl() { + workstationLaunchUrl_ = getDefaultInstance().getWorkstationLaunchUrl(); + bitField0_ = (bitField0_ & ~0x00100000); + onChanged(); + return this; } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the launch URL for workstations in this cluster.
            +     * Requests sent to unstarted workstations will be redirected to this URL.
            +     *
            +     * Requests redirected to the launch endpoint will be sent with a
            +     * `workstation` and `project` query parameter containing the full workstation
            +     * resource name and project ID, respectively. The launch endpoint is
            +     * responsible for starting the workstation, polling it until it reaches
            +     * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for workstationLaunchUrl to set. + * @return This builder for chaining. */ - public java.util.List getConditionsBuilderList() { - return internalGetConditionsFieldBuilder().getBuilderList(); - } - - private com.google.protobuf.RepeatedFieldBuilder< - com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> - internalGetConditionsFieldBuilder() { - if (conditionsBuilder_ == null) { - conditionsBuilder_ = - new com.google.protobuf.RepeatedFieldBuilder< - com.google.rpc.Status, - com.google.rpc.Status.Builder, - com.google.rpc.StatusOrBuilder>( - conditions_, ((bitField0_ & 0x00008000) != 0), getParentForChildren(), isClean()); - conditions_ = null; + public Builder setWorkstationLaunchUrlBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - return conditionsBuilder_; + checkByteStringIsUtf8(value); + workstationLaunchUrl_ = value; + bitField0_ |= 0x00100000; + onChanged(); + return this; } // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationCluster) diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationClusterOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationClusterOrBuilder.java index 428fe84038b0..b3f87d045450 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationClusterOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationClusterOrBuilder.java @@ -30,10 +30,10 @@ public interface WorkstationClusterOrBuilder * * *
            -   * Full name of this workstation cluster.
            +   * Identifier. Full name of this workstation cluster.
                * 
            * - * string name = 1; + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; * * @return The name. */ @@ -43,10 +43,10 @@ public interface WorkstationClusterOrBuilder * * *
            -   * Full name of this workstation cluster.
            +   * Identifier. Full name of this workstation cluster.
                * 
            * - * string name = 1; + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; * * @return The bytes for name. */ @@ -86,7 +86,9 @@ public interface WorkstationClusterOrBuilder * cluster. *
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * * * @return The uid. */ @@ -100,7 +102,9 @@ public interface WorkstationClusterOrBuilder * cluster. *
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * * * @return The bytes for uid. */ @@ -551,14 +555,58 @@ java.lang.String getLabelsOrDefault( com.google.cloud.workstations.v1.WorkstationCluster.PrivateClusterConfigOrBuilder getPrivateClusterConfigOrBuilder(); + /** + * + * + *
            +   * Optional. Configuration options for a custom domain.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the domainConfig field is set. + */ + boolean hasDomainConfig(); + + /** + * + * + *
            +   * Optional. Configuration options for a custom domain.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The domainConfig. + */ + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfig getDomainConfig(); + + /** + * + * + *
            +   * Optional. Configuration options for a custom domain.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1.WorkstationCluster.DomainConfigOrBuilder + getDomainConfigOrBuilder(); + /** * * *
                * Output only. Whether this workstation cluster is in degraded mode, in which
            -   * case it may require user action to restore full functionality. Details can
            -   * be found in
            -   * [conditions][google.cloud.workstations.v1.WorkstationCluster.conditions].
            +   * case it may require user action to restore full functionality. The
            +   * [conditions][google.cloud.workstations.v1.WorkstationCluster.conditions]
            +   * field contains detailed information about the status of the cluster.
                * 
            * * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; @@ -631,4 +679,216 @@ java.lang.String getLabelsOrDefault( *
            */ com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index); + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + int getTagsCount(); + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + boolean containsTags(java.lang.String key); + + /** Use {@link #getTagsMap()} instead. */ + @java.lang.Deprecated + java.util.Map getTags(); + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.Map getTagsMap(); + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + /* nullable */ + java.lang.String getTagsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue); + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + java.lang.String getTagsOrThrow(java.lang.String key); + + /** + * + * + *
            +   * Optional. Configuration options for Cluster HTTP Gateway.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the gatewayConfig field is set. + */ + boolean hasGatewayConfig(); + + /** + * + * + *
            +   * Optional. Configuration options for Cluster HTTP Gateway.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The gatewayConfig. + */ + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfig getGatewayConfig(); + + /** + * + * + *
            +   * Optional. Configuration options for Cluster HTTP Gateway.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1.WorkstationCluster.GatewayConfigOrBuilder + getGatewayConfigOrBuilder(); + + /** + * + * + *
            +   * Optional. Specifies the redirect URL for unauthorized requests received by
            +   * workstation VMs in this cluster.
            +   *
            +   * Redirects to this endpoint will send a base64 encoded `state` query param
            +   * containing the target workstation name and original request hostname. The
            +   * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +   * and redirecting back to the original hostname with the token.
            +   * 
            + * + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The workstationAuthorizationUrl. + */ + java.lang.String getWorkstationAuthorizationUrl(); + + /** + * + * + *
            +   * Optional. Specifies the redirect URL for unauthorized requests received by
            +   * workstation VMs in this cluster.
            +   *
            +   * Redirects to this endpoint will send a base64 encoded `state` query param
            +   * containing the target workstation name and original request hostname. The
            +   * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +   * and redirecting back to the original hostname with the token.
            +   * 
            + * + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The bytes for workstationAuthorizationUrl. + */ + com.google.protobuf.ByteString getWorkstationAuthorizationUrlBytes(); + + /** + * + * + *
            +   * Optional. Specifies the launch URL for workstations in this cluster.
            +   * Requests sent to unstarted workstations will be redirected to this URL.
            +   *
            +   * Requests redirected to the launch endpoint will be sent with a
            +   * `workstation` and `project` query parameter containing the full workstation
            +   * resource name and project ID, respectively. The launch endpoint is
            +   * responsible for starting the workstation, polling it until it reaches
            +   * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
            +   * 
            + * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The workstationLaunchUrl. + */ + java.lang.String getWorkstationLaunchUrl(); + + /** + * + * + *
            +   * Optional. Specifies the launch URL for workstations in this cluster.
            +   * Requests sent to unstarted workstations will be redirected to this URL.
            +   *
            +   * Requests redirected to the launch endpoint will be sent with a
            +   * `workstation` and `project` query parameter containing the full workstation
            +   * resource name and project ID, respectively. The launch endpoint is
            +   * responsible for starting the workstation, polling it until it reaches
            +   * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
            +   * 
            + * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for workstationLaunchUrl. + */ + com.google.protobuf.ByteString getWorkstationLaunchUrlBytes(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationConfig.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationConfig.java index 0d9c984194f1..c6530137d2ce 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationConfig.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationConfig.java @@ -65,9 +65,11 @@ private WorkstationConfig() { uid_ = ""; etag_ = ""; persistentDirectories_ = java.util.Collections.emptyList(); + ephemeralDirectories_ = java.util.Collections.emptyList(); readinessChecks_ = java.util.Collections.emptyList(); replicaZones_ = com.google.protobuf.LazyStringArrayList.emptyList(); conditions_ = java.util.Collections.emptyList(); + allowedPorts_ = java.util.Collections.emptyList(); } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -240,10 +242,12 @@ public interface GceInstanceOrBuilder *
                    * Optional. The email address of the service account for Cloud
                    * Workstations VMs created with this configuration. When specified, be
            -       * sure that the service account has `logginglogEntries.create` permission
            -       * on the project so it can write logs out to Cloud Logging. If using a
            -       * custom container image, the service account must have permissions to
            -       * pull the specified image.
            +       * sure that the service account has `logging.logEntries.create` and
            +       * `monitoring.timeSeries.create` permissions on the project so it can
            +       * write logs out to Cloud Logging. If using a custom container image, the
            +       * service account must have [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image.
                    *
                    * If you as the administrator want to be able to `ssh` into the
                    * underlying VM, you need to set this value to a service account
            @@ -269,10 +273,12 @@ public interface GceInstanceOrBuilder
                    * 
                    * Optional. The email address of the service account for Cloud
                    * Workstations VMs created with this configuration. When specified, be
            -       * sure that the service account has `logginglogEntries.create` permission
            -       * on the project so it can write logs out to Cloud Logging. If using a
            -       * custom container image, the service account must have permissions to
            -       * pull the specified image.
            +       * sure that the service account has `logging.logEntries.create` and
            +       * `monitoring.timeSeries.create` permissions on the project so it can
            +       * write logs out to Cloud Logging. If using a custom container image, the
            +       * service account must have [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image.
                    *
                    * If you as the administrator want to be able to `ssh` into the
                    * underlying VM, you need to set this value to a service account
            @@ -298,9 +304,8 @@ public interface GceInstanceOrBuilder
                    * 
                    * Optional. Scopes to grant to the
                    * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
                    * 
            * * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -316,9 +321,8 @@ public interface GceInstanceOrBuilder *
                    * Optional. Scopes to grant to the
                    * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
                    * 
            * * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -334,9 +338,8 @@ public interface GceInstanceOrBuilder *
                    * Optional. Scopes to grant to the
                    * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
                    * 
            * * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -353,9 +356,8 @@ public interface GceInstanceOrBuilder *
                    * Optional. Scopes to grant to the
                    * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
                    * 
            * * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -498,7 +500,9 @@ public interface GceInstanceOrBuilder * *
                    * Optional. Whether to enable nested virtualization on Cloud Workstations
            -       * VMs created under this workstation configuration.
            +       * VMs created using this workstation configuration.
            +       *
            +       * Defaults to false.
                    *
                    * Nested virtualization lets you run virtual machine (VM) instances
                    * inside your workstation. Before enabling nested virtualization,
            @@ -521,16 +525,6 @@ public interface GceInstanceOrBuilder
                    * workstation configurations that specify a
                    * [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.machine_type]
                    * in the N1 or N2 machine series.
            -       * * **GPUs**: nested virtualization may not be enabled on workstation
            -       * configurations with accelerators.
            -       * * **Operating System**: Because
            -       * [Container-Optimized
            -       * OS](https://cloud.google.com/compute/docs/images/os-details#container-optimized_os_cos)
            -       * does not support nested virtualization, when nested virtualization is
            -       * enabled, the underlying Compute Engine VM instances boot from an
            -       * [Ubuntu
            -       * LTS](https://cloud.google.com/compute/docs/images/os-details#ubuntu_lts)
            -       * image.
                    * 
            * * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; @@ -646,6 +640,390 @@ public interface GceInstanceOrBuilder * @return The bootDiskSizeGb. */ int getBootDiskSizeGb(); + + /** + * + * + *
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator> + getAcceleratorsList(); + + /** + * + * + *
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + getAccelerators(int index); + + /** + * + * + *
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getAcceleratorsCount(); + + /** + * + * + *
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + ? extends + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + getAcceleratorsOrBuilderList(); + + /** + * + * + *
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.AcceleratorOrBuilder + getAcceleratorsOrBuilder(int index); + + /** + * + * + *
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig> + getBoostConfigsList(); + + /** + * + * + *
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + getBoostConfigs(int index); + + /** + * + * + *
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getBoostConfigsCount(); + + /** + * + * + *
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + ? extends + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder> + getBoostConfigsOrBuilderList(); + + /** + * + * + *
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfigOrBuilder + getBoostConfigsOrBuilder(int index); + + /** + * + * + *
            +       * Optional. Whether to disable SSH access to the VM.
            +       * 
            + * + * bool disable_ssh = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The disableSsh. + */ + boolean getDisableSsh(); + + /** + * + * + *
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
            +       * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getVmTagsCount(); + + /** + * + * + *
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
            +       * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + boolean containsVmTags(java.lang.String key); + + /** Use {@link #getVmTagsMap()} instead. */ + @java.lang.Deprecated + java.util.Map getVmTags(); + + /** + * + * + *
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
            +       * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.Map getVmTagsMap(); + + /** + * + * + *
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
            +       * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + /* nullable */ + java.lang.String getVmTagsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue); + + /** + * + * + *
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
            +       * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.lang.String getVmTagsOrThrow(java.lang.String key); + + /** + * + * + *
            +       * Optional. Link to the startup script stored in Cloud Storage. This
            +       * script will be run on the host workstation VM when the VM is created.
            +       * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +       * specifying a startup script, the service account must have [Permission
            +       * to access the bucket and script file in Cloud
            +       * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +       * Otherwise, the script must be publicly accessible.
            +       * Note that the service regularly updates the OS version of the host VM,
            +       * and it is the responsibility of the user to ensure the script stays
            +       * compatible with the OS version.
            +       * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The startupScriptUri. + */ + java.lang.String getStartupScriptUri(); + + /** + * + * + *
            +       * Optional. Link to the startup script stored in Cloud Storage. This
            +       * script will be run on the host workstation VM when the VM is created.
            +       * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +       * specifying a startup script, the service account must have [Permission
            +       * to access the bucket and script file in Cloud
            +       * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +       * Otherwise, the script must be publicly accessible.
            +       * Note that the service regularly updates the OS version of the host VM,
            +       * and it is the responsibility of the user to ensure the script stays
            +       * compatible with the OS version.
            +       * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for startupScriptUri. + */ + com.google.protobuf.ByteString getStartupScriptUriBytes(); + + /** + * + * + *
            +       * Optional. Custom metadata to apply to Compute Engine instances.
            +       * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getInstanceMetadataCount(); + + /** + * + * + *
            +       * Optional. Custom metadata to apply to Compute Engine instances.
            +       * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + boolean containsInstanceMetadata(java.lang.String key); + + /** Use {@link #getInstanceMetadataMap()} instead. */ + @java.lang.Deprecated + java.util.Map getInstanceMetadata(); + + /** + * + * + *
            +       * Optional. Custom metadata to apply to Compute Engine instances.
            +       * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.Map getInstanceMetadataMap(); + + /** + * + * + *
            +       * Optional. Custom metadata to apply to Compute Engine instances.
            +       * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + /* nullable */ + java.lang.String getInstanceMetadataOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue); + + /** + * + * + *
            +       * Optional. Custom metadata to apply to Compute Engine instances.
            +       * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.lang.String getInstanceMetadataOrThrow(java.lang.String key); } /** @@ -683,6 +1061,9 @@ private GceInstance() { serviceAccount_ = ""; serviceAccountScopes_ = com.google.protobuf.LazyStringArrayList.emptyList(); tags_ = com.google.protobuf.LazyStringArrayList.emptyList(); + accelerators_ = java.util.Collections.emptyList(); + boostConfigs_ = java.util.Collections.emptyList(); + startupScriptUri_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -690,6 +1071,20 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_descriptor; } + @SuppressWarnings({"rawtypes"}) + @java.lang.Override + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 14: + return internalGetVmTags(); + case 27: + return internalGetInstanceMetadata(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + @java.lang.Override protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { @@ -2093,1447 +2488,1095 @@ public com.google.protobuf.Parser getParserForTyp } } - private int bitField0_; - public static final int MACHINE_TYPE_FIELD_NUMBER = 1; - - @SuppressWarnings("serial") - private volatile java.lang.Object machineType_ = ""; + public interface AcceleratorOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator) + com.google.protobuf.MessageOrBuilder { - /** - * - * - *
            -       * Optional. The type of machine to use for VM instances—for example,
            -       * `"e2-standard-4"`. For more information about machine types that
            -       * Cloud Workstations supports, see the list of
            -       * [available machine
            -       * types](https://cloud.google.com/workstations/docs/available-machine-types).
            -       * 
            - * - * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The machineType. - */ - @java.lang.Override - public java.lang.String getMachineType() { - java.lang.Object ref = machineType_; - 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(); - machineType_ = s; - return s; - } + /** + * + * + *
            +         * Optional. Type of accelerator resource to attach to the instance, for
            +         * example,
            +         * `"nvidia-tesla-p100"`.
            +         * 
            + * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The type. + */ + java.lang.String getType(); + + /** + * + * + *
            +         * Optional. Type of accelerator resource to attach to the instance, for
            +         * example,
            +         * `"nvidia-tesla-p100"`.
            +         * 
            + * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for type. + */ + com.google.protobuf.ByteString getTypeBytes(); + + /** + * + * + *
            +         * Optional. Number of accelerator cards exposed to the instance.
            +         * 
            + * + * int32 count = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count. + */ + int getCount(); } /** * * *
            -       * Optional. The type of machine to use for VM instances—for example,
            -       * `"e2-standard-4"`. For more information about machine types that
            -       * Cloud Workstations supports, see the list of
            -       * [available machine
            -       * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +       * An accelerator card attached to the instance.
                    * 
            * - * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for machineType. + * Protobuf type {@code + * google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator} */ - @java.lang.Override - public com.google.protobuf.ByteString getMachineTypeBytes() { - java.lang.Object ref = machineType_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - machineType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + public static final class Accelerator extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator) + AcceleratorOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "Accelerator"); } - } - public static final int SERVICE_ACCOUNT_FIELD_NUMBER = 2; + // Use Accelerator.newBuilder() to construct. + private Accelerator(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } - @SuppressWarnings("serial") - private volatile java.lang.Object serviceAccount_ = ""; + private Accelerator() { + type_ = ""; + } - /** - * - * - *
            -       * Optional. The email address of the service account for Cloud
            -       * Workstations VMs created with this configuration. When specified, be
            -       * sure that the service account has `logginglogEntries.create` permission
            -       * on the project so it can write logs out to Cloud Logging. If using a
            -       * custom container image, the service account must have permissions to
            -       * pull the specified image.
            -       *
            -       * If you as the administrator want to be able to `ssh` into the
            -       * underlying VM, you need to set this value to a service account
            -       * for which you have the `iam.serviceAccounts.actAs` permission.
            -       * Conversely, if you don't want anyone to be able to `ssh` into the
            -       * underlying VM, use a service account where no one has that
            -       * permission.
            -       *
            -       * If not set, VMs run with a service account provided by the
            -       * Cloud Workstations service, and the image must be publicly
            -       * accessible.
            -       * 
            - * - * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The serviceAccount. - */ - @java.lang.Override - public java.lang.String getServiceAccount() { - java.lang.Object ref = serviceAccount_; - 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(); - serviceAccount_ = s; - return s; + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_Accelerator_descriptor; } - } - /** - * - * - *
            -       * Optional. The email address of the service account for Cloud
            -       * Workstations VMs created with this configuration. When specified, be
            -       * sure that the service account has `logginglogEntries.create` permission
            -       * on the project so it can write logs out to Cloud Logging. If using a
            -       * custom container image, the service account must have permissions to
            -       * pull the specified image.
            -       *
            -       * If you as the administrator want to be able to `ssh` into the
            -       * underlying VM, you need to set this value to a service account
            -       * for which you have the `iam.serviceAccounts.actAs` permission.
            -       * Conversely, if you don't want anyone to be able to `ssh` into the
            -       * underlying VM, use a service account where no one has that
            -       * permission.
            -       *
            -       * If not set, VMs run with a service account provided by the
            -       * Cloud Workstations service, and the image must be publicly
            -       * accessible.
            -       * 
            - * - * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for serviceAccount. - */ - @java.lang.Override - public com.google.protobuf.ByteString getServiceAccountBytes() { - java.lang.Object ref = serviceAccount_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - serviceAccount_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_Accelerator_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .class, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder.class); } - } - public static final int SERVICE_ACCOUNT_SCOPES_FIELD_NUMBER = 3; + public static final int TYPE_FIELD_NUMBER = 1; - @SuppressWarnings("serial") - private com.google.protobuf.LazyStringArrayList serviceAccountScopes_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + @SuppressWarnings("serial") + private volatile java.lang.Object type_ = ""; - /** - * - * - *
            -       * Optional. Scopes to grant to the
            -       * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            -       * 
            - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return A list containing the serviceAccountScopes. - */ - public com.google.protobuf.ProtocolStringList getServiceAccountScopesList() { - return serviceAccountScopes_; - } + /** + * + * + *
            +         * Optional. Type of accelerator resource to attach to the instance, for
            +         * example,
            +         * `"nvidia-tesla-p100"`.
            +         * 
            + * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The type. + */ + @java.lang.Override + public java.lang.String getType() { + java.lang.Object ref = type_; + 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(); + type_ = s; + return s; + } + } - /** - * - * - *
            -       * Optional. Scopes to grant to the
            -       * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            -       * 
            - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The count of serviceAccountScopes. - */ - public int getServiceAccountScopesCount() { - return serviceAccountScopes_.size(); - } + /** + * + * + *
            +         * Optional. Type of accelerator resource to attach to the instance, for
            +         * example,
            +         * `"nvidia-tesla-p100"`.
            +         * 
            + * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for type. + */ + @java.lang.Override + public com.google.protobuf.ByteString getTypeBytes() { + java.lang.Object ref = type_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + type_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - /** - * - * - *
            -       * Optional. Scopes to grant to the
            -       * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            -       * 
            - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index of the element to return. - * @return The serviceAccountScopes at the given index. - */ - public java.lang.String getServiceAccountScopes(int index) { - return serviceAccountScopes_.get(index); - } + public static final int COUNT_FIELD_NUMBER = 2; + private int count_ = 0; - /** - * - * - *
            -       * Optional. Scopes to grant to the
            -       * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            -       * 
            - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index of the value to return. - * @return The bytes of the serviceAccountScopes at the given index. - */ - public com.google.protobuf.ByteString getServiceAccountScopesBytes(int index) { - return serviceAccountScopes_.getByteString(index); - } + /** + * + * + *
            +         * Optional. Number of accelerator cards exposed to the instance.
            +         * 
            + * + * int32 count = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count. + */ + @java.lang.Override + public int getCount() { + return count_; + } - public static final int TAGS_FIELD_NUMBER = 4; + private byte memoizedIsInitialized = -1; - @SuppressWarnings("serial") - private com.google.protobuf.LazyStringArrayList tags_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - /** - * - * - *
            -       * Optional. Network tags to add to the Compute Engine VMs backing the
            -       * workstations. This option applies
            -       * [network
            -       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -       * created with this configuration. These network tags enable the creation
            -       * of [firewall
            -       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -       * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return A list containing the tags. - */ - public com.google.protobuf.ProtocolStringList getTagsList() { - return tags_; - } + memoizedIsInitialized = 1; + return true; + } - /** - * - * - *
            -       * Optional. Network tags to add to the Compute Engine VMs backing the
            -       * workstations. This option applies
            -       * [network
            -       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -       * created with this configuration. These network tags enable the creation
            -       * of [firewall
            -       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -       * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The count of tags. - */ - public int getTagsCount() { - return tags_.size(); - } + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(type_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, type_); + } + if (count_ != 0) { + output.writeInt32(2, count_); + } + getUnknownFields().writeTo(output); + } - /** - * - * - *
            -       * Optional. Network tags to add to the Compute Engine VMs backing the
            -       * workstations. This option applies
            -       * [network
            -       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -       * created with this configuration. These network tags enable the creation
            -       * of [firewall
            -       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -       * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the element to return. - * @return The tags at the given index. - */ - public java.lang.String getTags(int index) { - return tags_.get(index); - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - /** - * - * - *
            -       * Optional. Network tags to add to the Compute Engine VMs backing the
            -       * workstations. This option applies
            -       * [network
            -       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -       * created with this configuration. These network tags enable the creation
            -       * of [firewall
            -       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -       * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the value to return. - * @return The bytes of the tags at the given index. - */ - public com.google.protobuf.ByteString getTagsBytes(int index) { - return tags_.getByteString(index); - } + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(type_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, type_); + } + if (count_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, count_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - public static final int POOL_SIZE_FIELD_NUMBER = 5; - private int poolSize_ = 0; + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator other = + (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator) obj; - /** - * - * - *
            -       * Optional. The number of VMs that the system should keep idle so that
            -       * new workstations can be started quickly for new users. Defaults to `0`
            -       * in the API.
            -       * 
            - * - * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The poolSize. - */ - @java.lang.Override - public int getPoolSize() { - return poolSize_; - } + if (!getType().equals(other.getType())) return false; + if (getCount() != other.getCount()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - public static final int POOLED_INSTANCES_FIELD_NUMBER = 12; - private int pooledInstances_ = 0; + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + TYPE_FIELD_NUMBER; + hash = (53 * hash) + getType().hashCode(); + hash = (37 * hash) + COUNT_FIELD_NUMBER; + hash = (53 * hash) + getCount(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - /** - * - * - *
            -       * Output only. Number of instances currently available in the pool for
            -       * faster workstation startup.
            -       * 
            - * - * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The pooledInstances. - */ - @java.lang.Override - public int getPooledInstances() { - return pooledInstances_; - } + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - public static final int DISABLE_PUBLIC_IP_ADDRESSES_FIELD_NUMBER = 6; - private boolean disablePublicIpAddresses_ = false; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - /** - * - * - *
            -       * Optional. When set to true, disables public IP addresses for VMs. If
            -       * you disable public IP addresses, you must set up Private Google Access
            -       * or Cloud NAT on your network. If you use Private Google Access and you
            -       * use `private.googleapis.com` or `restricted.googleapis.com` for
            -       * Container Registry and Artifact Registry, make sure that you set
            -       * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            -       * Defaults to false (VMs have public IP addresses).
            -       * 
            - * - * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The disablePublicIpAddresses. - */ - @java.lang.Override - public boolean getDisablePublicIpAddresses() { - return disablePublicIpAddresses_; - } + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - public static final int ENABLE_NESTED_VIRTUALIZATION_FIELD_NUMBER = 7; - private boolean enableNestedVirtualization_ = false; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - /** - * - * - *
            -       * Optional. Whether to enable nested virtualization on Cloud Workstations
            -       * VMs created under this workstation configuration.
            -       *
            -       * Nested virtualization lets you run virtual machine (VM) instances
            -       * inside your workstation. Before enabling nested virtualization,
            -       * consider the following important considerations. Cloud Workstations
            -       * instances are subject to the [same restrictions as Compute Engine
            -       * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            -       *
            -       * * **Organization policy**: projects, folders, or
            -       * organizations may be restricted from creating nested VMs if the
            -       * **Disable VM nested virtualization** constraint is enforced in
            -       * the organization policy. For more information, see the
            -       * Compute Engine section,
            -       * [Checking whether nested virtualization is
            -       * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            -       * * **Performance**: nested VMs might experience a 10% or greater
            -       * decrease in performance for workloads that are CPU-bound and
            -       * possibly greater than a 10% decrease for workloads that are
            -       * input/output bound.
            -       * * **Machine Type**: nested virtualization can only be enabled on
            -       * workstation configurations that specify a
            -       * [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.machine_type]
            -       * in the N1 or N2 machine series.
            -       * * **GPUs**: nested virtualization may not be enabled on workstation
            -       * configurations with accelerators.
            -       * * **Operating System**: Because
            -       * [Container-Optimized
            -       * OS](https://cloud.google.com/compute/docs/images/os-details#container-optimized_os_cos)
            -       * does not support nested virtualization, when nested virtualization is
            -       * enabled, the underlying Compute Engine VM instances boot from an
            -       * [Ubuntu
            -       * LTS](https://cloud.google.com/compute/docs/images/os-details#ubuntu_lts)
            -       * image.
            -       * 
            - * - * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The enableNestedVirtualization. - */ - @java.lang.Override - public boolean getEnableNestedVirtualization() { - return enableNestedVirtualization_; - } + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - public static final int SHIELDED_INSTANCE_CONFIG_FIELD_NUMBER = 8; - private com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig - shieldedInstanceConfig_; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - /** - * - * - *
            -       * Optional. A set of Compute Engine Shielded instance options.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the shieldedInstanceConfig field is set. - */ - @java.lang.Override - public boolean hasShieldedInstanceConfig() { - return ((bitField0_ & 0x00000001) != 0); - } + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - /** - * - * - *
            -       * Optional. A set of Compute Engine Shielded instance options.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The shieldedInstanceConfig. - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig - getShieldedInstanceConfig() { - return shieldedInstanceConfig_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.getDefaultInstance() - : shieldedInstanceConfig_; - } + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -       * Optional. A set of Compute Engine Shielded instance options.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfigOrBuilder - getShieldedInstanceConfigOrBuilder() { - return shieldedInstanceConfig_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.getDefaultInstance() - : shieldedInstanceConfig_; - } + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } - public static final int CONFIDENTIAL_INSTANCE_CONFIG_FIELD_NUMBER = 10; - private com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig - confidentialInstanceConfig_; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -       * Optional. A set of Compute Engine Confidential VM instance options.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the confidentialInstanceConfig field is set. - */ - @java.lang.Override - public boolean hasConfidentialInstanceConfig() { - return ((bitField0_ & 0x00000002) != 0); - } + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - /** - * - * - *
            -       * Optional. A set of Compute Engine Confidential VM instance options.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The confidentialInstanceConfig. - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig - getConfidentialInstanceConfig() { - return confidentialInstanceConfig_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.getDefaultInstance() - : confidentialInstanceConfig_; - } + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -       * Optional. A set of Compute Engine Confidential VM instance options.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfigOrBuilder - getConfidentialInstanceConfigOrBuilder() { - return confidentialInstanceConfig_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.getDefaultInstance() - : confidentialInstanceConfig_; - } + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } - public static final int BOOT_DISK_SIZE_GB_FIELD_NUMBER = 9; - private int bootDiskSizeGb_ = 0; + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } - /** - * - * - *
            -       * Optional. The size of the boot disk for the VM in gigabytes (GB).
            -       * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            -       * 
            - * - * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bootDiskSizeGb. - */ - @java.lang.Override - public int getBootDiskSizeGb() { - return bootDiskSizeGb_; - } + public static Builder newBuilder( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - private byte memoizedIsInitialized = -1; + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } - memoizedIsInitialized = 1; - return true; - } + /** + * + * + *
            +         * An accelerator card attached to the instance.
            +         * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator) + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_Accelerator_descriptor; + } - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(machineType_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 1, machineType_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serviceAccount_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, serviceAccount_); - } - for (int i = 0; i < serviceAccountScopes_.size(); i++) { - com.google.protobuf.GeneratedMessage.writeString( - output, 3, serviceAccountScopes_.getRaw(i)); - } - for (int i = 0; i < tags_.size(); i++) { - com.google.protobuf.GeneratedMessage.writeString(output, 4, tags_.getRaw(i)); - } - if (poolSize_ != 0) { - output.writeInt32(5, poolSize_); - } - if (disablePublicIpAddresses_ != false) { - output.writeBool(6, disablePublicIpAddresses_); - } - if (enableNestedVirtualization_ != false) { - output.writeBool(7, enableNestedVirtualization_); - } - if (((bitField0_ & 0x00000001) != 0)) { - output.writeMessage(8, getShieldedInstanceConfig()); - } - if (bootDiskSizeGb_ != 0) { - output.writeInt32(9, bootDiskSizeGb_); - } - if (((bitField0_ & 0x00000002) != 0)) { - output.writeMessage(10, getConfidentialInstanceConfig()); - } - if (pooledInstances_ != 0) { - output.writeInt32(12, pooledInstances_); - } - getUnknownFields().writeTo(output); - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_Accelerator_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .class, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder.class); + } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + // Construct using + // com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator.newBuilder() + private Builder() {} - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(machineType_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, machineType_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serviceAccount_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(2, serviceAccount_); - } - { - int dataSize = 0; - for (int i = 0; i < serviceAccountScopes_.size(); i++) { - dataSize += computeStringSizeNoTag(serviceAccountScopes_.getRaw(i)); + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); } - size += dataSize; - size += 1 * getServiceAccountScopesList().size(); - } - { - int dataSize = 0; - for (int i = 0; i < tags_.size(); i++) { - dataSize += computeStringSizeNoTag(tags_.getRaw(i)); + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + type_ = ""; + count_ = 0; + return this; } - size += dataSize; - size += 1 * getTagsList().size(); - } - if (poolSize_ != 0) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(5, poolSize_); - } - if (disablePublicIpAddresses_ != false) { - size += - com.google.protobuf.CodedOutputStream.computeBoolSize(6, disablePublicIpAddresses_); - } - if (enableNestedVirtualization_ != false) { - size += - com.google.protobuf.CodedOutputStream.computeBoolSize(7, enableNestedVirtualization_); - } - if (((bitField0_ & 0x00000001) != 0)) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 8, getShieldedInstanceConfig()); - } - if (bootDiskSizeGb_ != 0) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(9, bootDiskSizeGb_); - } - if (((bitField0_ & 0x00000002) != 0)) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 10, getConfidentialInstanceConfig()); - } - if (pooledInstances_ != 0) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(12, pooledInstances_); - } - 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.cloud.workstations.v1.WorkstationConfig.Host.GceInstance)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance other = - (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) obj; + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_Accelerator_descriptor; + } - if (!getMachineType().equals(other.getMachineType())) return false; - if (!getServiceAccount().equals(other.getServiceAccount())) return false; - if (!getServiceAccountScopesList().equals(other.getServiceAccountScopesList())) - return false; - if (!getTagsList().equals(other.getTagsList())) return false; - if (getPoolSize() != other.getPoolSize()) return false; - if (getPooledInstances() != other.getPooledInstances()) return false; - if (getDisablePublicIpAddresses() != other.getDisablePublicIpAddresses()) return false; - if (getEnableNestedVirtualization() != other.getEnableNestedVirtualization()) return false; - if (hasShieldedInstanceConfig() != other.hasShieldedInstanceConfig()) return false; - if (hasShieldedInstanceConfig()) { - if (!getShieldedInstanceConfig().equals(other.getShieldedInstanceConfig())) return false; - } - if (hasConfidentialInstanceConfig() != other.hasConfidentialInstanceConfig()) return false; - if (hasConfidentialInstanceConfig()) { - if (!getConfidentialInstanceConfig().equals(other.getConfidentialInstanceConfig())) - return false; - } - if (getBootDiskSizeGb() != other.getBootDiskSizeGb()) return false; - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .getDefaultInstance(); + } - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; - } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + MACHINE_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getMachineType().hashCode(); - hash = (37 * hash) + SERVICE_ACCOUNT_FIELD_NUMBER; - hash = (53 * hash) + getServiceAccount().hashCode(); - if (getServiceAccountScopesCount() > 0) { - hash = (37 * hash) + SERVICE_ACCOUNT_SCOPES_FIELD_NUMBER; - hash = (53 * hash) + getServiceAccountScopesList().hashCode(); - } - if (getTagsCount() > 0) { - hash = (37 * hash) + TAGS_FIELD_NUMBER; - hash = (53 * hash) + getTagsList().hashCode(); - } - hash = (37 * hash) + POOL_SIZE_FIELD_NUMBER; - hash = (53 * hash) + getPoolSize(); - hash = (37 * hash) + POOLED_INSTANCES_FIELD_NUMBER; - hash = (53 * hash) + getPooledInstances(); - hash = (37 * hash) + DISABLE_PUBLIC_IP_ADDRESSES_FIELD_NUMBER; - hash = - (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDisablePublicIpAddresses()); - hash = (37 * hash) + ENABLE_NESTED_VIRTUALIZATION_FIELD_NUMBER; - hash = - (53 * hash) + com.google.protobuf.Internal.hashBoolean(getEnableNestedVirtualization()); - if (hasShieldedInstanceConfig()) { - hash = (37 * hash) + SHIELDED_INSTANCE_CONFIG_FIELD_NUMBER; - hash = (53 * hash) + getShieldedInstanceConfig().hashCode(); - } - if (hasConfidentialInstanceConfig()) { - hash = (37 * hash) + CONFIDENTIAL_INSTANCE_CONFIG_FIELD_NUMBER; - hash = (53 * hash) + getConfidentialInstanceConfig().hashCode(); - } - hash = (37 * hash) + BOOT_DISK_SIZE_GB_FIELD_NUMBER; - hash = (53 * hash) + getBootDiskSizeGb(); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + build() { + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + buildPartial() { + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator result = + new com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator( + this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + private void buildPartial0( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.type_ = type_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.count_ = count_; + } + } - public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator) { + return mergeFrom( + (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator) + other); + } else { + super.mergeFrom(other); + return this; + } + } - public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + public Builder mergeFrom( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + other) { + if (other + == com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .getDefaultInstance()) return this; + if (!other.getType().isEmpty()) { + type_ = other.type_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.getCount() != 0) { + setCount(other.getCount()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( - byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + public final boolean isInitialized() { + return true; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + type_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 16: + { + count_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + private int bitField0_; - public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + private java.lang.Object type_ = ""; - public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } + /** + * + * + *
            +           * Optional. Type of accelerator resource to attach to the instance, for
            +           * example,
            +           * `"nvidia-tesla-p100"`.
            +           * 
            + * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The type. + */ + public java.lang.String getType() { + java.lang.Object ref = type_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + type_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } - public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - parseDelimitedFrom( - java.io.InputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +           * Optional. Type of accelerator resource to attach to the instance, for
            +           * example,
            +           * `"nvidia-tesla-p100"`.
            +           * 
            + * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for type. + */ + public com.google.protobuf.ByteString getTypeBytes() { + java.lang.Object ref = type_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + type_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + /** + * + * + *
            +           * Optional. Type of accelerator resource to attach to the instance, for
            +           * example,
            +           * `"nvidia-tesla-p100"`.
            +           * 
            + * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The type to set. + * @return This builder for chaining. + */ + public Builder setType(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + type_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +           * Optional. Type of accelerator resource to attach to the instance, for
            +           * example,
            +           * `"nvidia-tesla-p100"`.
            +           * 
            + * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearType() { + type_ = getDefaultInstance().getType(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } + /** + * + * + *
            +           * Optional. Type of accelerator resource to attach to the instance, for
            +           * example,
            +           * `"nvidia-tesla-p100"`.
            +           * 
            + * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for type to set. + * @return This builder for chaining. + */ + public Builder setTypeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + type_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + private int count_; - public static Builder newBuilder( - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + /** + * + * + *
            +           * Optional. Number of accelerator cards exposed to the instance.
            +           * 
            + * + * int32 count = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count. + */ + @java.lang.Override + public int getCount() { + return count_; + } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + /** + * + * + *
            +           * Optional. Number of accelerator cards exposed to the instance.
            +           * 
            + * + * int32 count = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The count to set. + * @return This builder for chaining. + */ + public Builder setCount(int value) { - @java.lang.Override - protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessage.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } + count_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - /** - * - * - *
            -       * A runtime using a Compute Engine instance.
            -       * 
            - * - * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance} - */ - public static final class Builder - extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstanceOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_descriptor; - } + /** + * + * + *
            +           * Optional. Number of accelerator cards exposed to the instance.
            +           * 
            + * + * int32 count = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearCount() { + bitField0_ = (bitField0_ & ~0x00000002); + count_ = 0; + onChanged(); + return this; + } - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.class, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Builder - .class); + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator) } - // Construct using - // com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator) + private static final com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator(); } - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + getDefaultInstance() { + return DEFAULT_INSTANCE; } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { - internalGetShieldedInstanceConfigFieldBuilder(); - internalGetConfidentialInstanceConfigFieldBuilder(); - } - } + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Accelerator parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - machineType_ = ""; - serviceAccount_ = ""; - serviceAccountScopes_ = com.google.protobuf.LazyStringArrayList.emptyList(); - tags_ = com.google.protobuf.LazyStringArrayList.emptyList(); - poolSize_ = 0; - pooledInstances_ = 0; - disablePublicIpAddresses_ = false; - enableNestedVirtualization_ = false; - shieldedInstanceConfig_ = null; - if (shieldedInstanceConfigBuilder_ != null) { - shieldedInstanceConfigBuilder_.dispose(); - shieldedInstanceConfigBuilder_ = null; - } - confidentialInstanceConfig_ = null; - if (confidentialInstanceConfigBuilder_ != null) { - confidentialInstanceConfigBuilder_.dispose(); - confidentialInstanceConfigBuilder_ = null; - } - bootDiskSizeGb_ = 0; - return this; + public static com.google.protobuf.Parser parser() { + return PARSER; } @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_descriptor; + public com.google.protobuf.Parser getParserForType() { + return PARSER; } @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator getDefaultInstanceForType() { - return com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .getDefaultInstance(); + return DEFAULT_INSTANCE; } + } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance build() { - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance result = - buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } + public interface BoostConfigOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig) + com.google.protobuf.MessageOrBuilder { - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance buildPartial() { - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance result = - new com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; - } + /** + * + * + *
            +         * Required. The ID to be used for the boost configuration.
            +         * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The id. + */ + java.lang.String getId(); - private void buildPartial0( - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.machineType_ = machineType_; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.serviceAccount_ = serviceAccount_; - } - if (((from_bitField0_ & 0x00000004) != 0)) { - serviceAccountScopes_.makeImmutable(); - result.serviceAccountScopes_ = serviceAccountScopes_; - } - if (((from_bitField0_ & 0x00000008) != 0)) { - tags_.makeImmutable(); - result.tags_ = tags_; - } - if (((from_bitField0_ & 0x00000010) != 0)) { - result.poolSize_ = poolSize_; - } - if (((from_bitField0_ & 0x00000020) != 0)) { - result.pooledInstances_ = pooledInstances_; - } - if (((from_bitField0_ & 0x00000040) != 0)) { - result.disablePublicIpAddresses_ = disablePublicIpAddresses_; - } - if (((from_bitField0_ & 0x00000080) != 0)) { - result.enableNestedVirtualization_ = enableNestedVirtualization_; - } - int to_bitField0_ = 0; - if (((from_bitField0_ & 0x00000100) != 0)) { - result.shieldedInstanceConfig_ = - shieldedInstanceConfigBuilder_ == null - ? shieldedInstanceConfig_ - : shieldedInstanceConfigBuilder_.build(); - to_bitField0_ |= 0x00000001; - } - if (((from_bitField0_ & 0x00000200) != 0)) { - result.confidentialInstanceConfig_ = - confidentialInstanceConfigBuilder_ == null - ? confidentialInstanceConfig_ - : confidentialInstanceConfigBuilder_.build(); - to_bitField0_ |= 0x00000002; - } - if (((from_bitField0_ & 0x00000400) != 0)) { - result.bootDiskSizeGb_ = bootDiskSizeGb_; - } - result.bitField0_ |= to_bitField0_; - } + /** + * + * + *
            +         * Required. The ID to be used for the boost configuration.
            +         * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for id. + */ + com.google.protobuf.ByteString getIdBytes(); - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other - instanceof com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) { - return mergeFrom( - (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) other); - } else { - super.mergeFrom(other); - return this; - } - } + /** + * + * + *
            +         * Optional. The type of machine that boosted VM instances will use—for
            +         * example, `e2-standard-4`. For more information about machine types
            +         * that Cloud Workstations supports, see the list of [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Defaults to `e2-standard-4`.
            +         * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The machineType. + */ + java.lang.String getMachineType(); - public Builder mergeFrom( - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance other) { - if (other - == com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .getDefaultInstance()) return this; - if (!other.getMachineType().isEmpty()) { - machineType_ = other.machineType_; - bitField0_ |= 0x00000001; - onChanged(); - } - if (!other.getServiceAccount().isEmpty()) { - serviceAccount_ = other.serviceAccount_; - bitField0_ |= 0x00000002; - onChanged(); - } - if (!other.serviceAccountScopes_.isEmpty()) { - if (serviceAccountScopes_.isEmpty()) { - serviceAccountScopes_ = other.serviceAccountScopes_; - bitField0_ |= 0x00000004; - } else { - ensureServiceAccountScopesIsMutable(); - serviceAccountScopes_.addAll(other.serviceAccountScopes_); - } - onChanged(); - } - if (!other.tags_.isEmpty()) { - if (tags_.isEmpty()) { - tags_ = other.tags_; - bitField0_ |= 0x00000008; - } else { - ensureTagsIsMutable(); - tags_.addAll(other.tags_); - } - onChanged(); - } - if (other.getPoolSize() != 0) { - setPoolSize(other.getPoolSize()); - } - if (other.getPooledInstances() != 0) { - setPooledInstances(other.getPooledInstances()); - } - if (other.getDisablePublicIpAddresses() != false) { - setDisablePublicIpAddresses(other.getDisablePublicIpAddresses()); - } - if (other.getEnableNestedVirtualization() != false) { - setEnableNestedVirtualization(other.getEnableNestedVirtualization()); - } - if (other.hasShieldedInstanceConfig()) { - mergeShieldedInstanceConfig(other.getShieldedInstanceConfig()); - } - if (other.hasConfidentialInstanceConfig()) { - mergeConfidentialInstanceConfig(other.getConfidentialInstanceConfig()); - } - if (other.getBootDiskSizeGb() != 0) { - setBootDiskSizeGb(other.getBootDiskSizeGb()); - } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; - } + /** + * + * + *
            +         * Optional. The type of machine that boosted VM instances will use—for
            +         * example, `e2-standard-4`. For more information about machine types
            +         * that Cloud Workstations supports, see the list of [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Defaults to `e2-standard-4`.
            +         * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for machineType. + */ + com.google.protobuf.ByteString getMachineTypeBytes(); - @java.lang.Override - public final boolean isInitialized() { - return true; - } - - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - machineType_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - serviceAccount_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 18 - case 26: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureServiceAccountScopesIsMutable(); - serviceAccountScopes_.add(s); - break; - } // case 26 - case 34: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureTagsIsMutable(); - tags_.add(s); - break; - } // case 34 - case 40: - { - poolSize_ = input.readInt32(); - bitField0_ |= 0x00000010; - break; - } // case 40 - case 48: - { - disablePublicIpAddresses_ = input.readBool(); - bitField0_ |= 0x00000040; - break; - } // case 48 - case 56: - { - enableNestedVirtualization_ = input.readBool(); - bitField0_ |= 0x00000080; - break; - } // case 56 - case 66: - { - input.readMessage( - internalGetShieldedInstanceConfigFieldBuilder().getBuilder(), - extensionRegistry); - bitField0_ |= 0x00000100; - break; - } // case 66 - case 72: - { - bootDiskSizeGb_ = input.readInt32(); - bitField0_ |= 0x00000400; - break; - } // case 72 - case 82: - { - input.readMessage( - internalGetConfidentialInstanceConfigFieldBuilder().getBuilder(), - extensionRegistry); - bitField0_ |= 0x00000200; - break; - } // case 82 - case 96: - { - pooledInstances_ = input.readInt32(); - bitField0_ |= 0x00000020; - break; - } // case 96 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; - } - - private int bitField0_; - - private java.lang.Object machineType_ = ""; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator> + getAcceleratorsList(); /** * * *
            -         * Optional. The type of machine to use for VM instances—for example,
            -         * `"e2-standard-4"`. For more information about machine types that
            -         * Cloud Workstations supports, see the list of
            -         * [available machine
            -         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
                      * 
            * - * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The machineType. + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public java.lang.String getMachineType() { - java.lang.Object ref = machineType_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - machineType_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + getAccelerators(int index); /** * * *
            -         * Optional. The type of machine to use for VM instances—for example,
            -         * `"e2-standard-4"`. For more information about machine types that
            -         * Cloud Workstations supports, see the list of
            -         * [available machine
            -         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
                      * 
            * - * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for machineType. + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public com.google.protobuf.ByteString getMachineTypeBytes() { - java.lang.Object ref = machineType_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - machineType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + int getAcceleratorsCount(); /** * * *
            -         * Optional. The type of machine to use for VM instances—for example,
            -         * `"e2-standard-4"`. For more information about machine types that
            -         * Cloud Workstations supports, see the list of
            -         * [available machine
            -         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
                      * 
            * - * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The machineType to set. - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setMachineType(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - machineType_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } + java.util.List< + ? extends + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + getAcceleratorsOrBuilderList(); /** * * *
            -         * Optional. The type of machine to use for VM instances—for example,
            -         * `"e2-standard-4"`. For more information about machine types that
            -         * Cloud Workstations supports, see the list of
            -         * [available machine
            -         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
                      * 
            * - * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder clearMachineType() { - machineType_ = getDefaultInstance().getMachineType(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; - } + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.AcceleratorOrBuilder + getAcceleratorsOrBuilder(int index); /** * * *
            -         * Optional. The type of machine to use for VM instances—for example,
            -         * `"e2-standard-4"`. For more information about machine types that
            -         * Cloud Workstations supports, see the list of
            -         * [available machine
            -         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
                      * 
            * - * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * int32 boot_disk_size_gb = 4 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The bytes for machineType to set. - * @return This builder for chaining. + * @return The bootDiskSizeGb. */ - public Builder setMachineTypeBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - machineType_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - - private java.lang.Object serviceAccount_ = ""; + int getBootDiskSizeGb(); /** * * *
            -         * Optional. The email address of the service account for Cloud
            -         * Workstations VMs created with this configuration. When specified, be
            -         * sure that the service account has `logginglogEntries.create` permission
            -         * on the project so it can write logs out to Cloud Logging. If using a
            -         * custom container image, the service account must have permissions to
            -         * pull the specified image.
            +         * Optional. Whether to enable nested virtualization on boosted Cloud
            +         * Workstations VMs running using this boost configuration.
                      *
            -         * If you as the administrator want to be able to `ssh` into the
            -         * underlying VM, you need to set this value to a service account
            -         * for which you have the `iam.serviceAccounts.actAs` permission.
            -         * Conversely, if you don't want anyone to be able to `ssh` into the
            -         * underlying VM, use a service account where no one has that
            -         * permission.
            +         * Defaults to false.
                      *
            -         * If not set, VMs run with a service account provided by the
            -         * Cloud Workstations service, and the image must be publicly
            -         * accessible.
            +         * Nested virtualization lets you run virtual machine (VM) instances
            +         * inside your workstation. Before enabling nested virtualization,
            +         * consider the following important considerations. Cloud Workstations
            +         * instances are subject to the [same restrictions as Compute Engine
            +         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +         *
            +         * * **Organization policy**: projects, folders, or
            +         * organizations may be restricted from creating nested VMs if the
            +         * **Disable VM nested virtualization** constraint is enforced in
            +         * the organization policy. For more information, see the
            +         * Compute Engine section,
            +         * [Checking whether nested virtualization is
            +         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +         * * **Performance**: nested VMs might experience a 10% or greater
            +         * decrease in performance for workloads that are CPU-bound and
            +         * possibly greater than a 10% decrease for workloads that are
            +         * input/output bound.
            +         * * **Machine Type**: nested virtualization can only be enabled on
            +         * boost configurations that specify a
            +         * [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig.machine_type]
            +         * in the N1 or N2 machine series.
                      * 
            * - * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The serviceAccount. + * @return The enableNestedVirtualization. */ - public java.lang.String getServiceAccount() { - java.lang.Object ref = serviceAccount_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - serviceAccount_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } + boolean getEnableNestedVirtualization(); /** * * *
            -         * Optional. The email address of the service account for Cloud
            -         * Workstations VMs created with this configuration. When specified, be
            -         * sure that the service account has `logginglogEntries.create` permission
            -         * on the project so it can write logs out to Cloud Logging. If using a
            -         * custom container image, the service account must have permissions to
            -         * pull the specified image.
            +         * Optional. The number of boost VMs that the system should keep idle so
            +         * that workstations can be boosted quickly. Defaults to `0`.
            +         * 
            * - * If you as the administrator want to be able to `ssh` into the - * underlying VM, you need to set this value to a service account - * for which you have the `iam.serviceAccounts.actAs` permission. - * Conversely, if you don't want anyone to be able to `ssh` into the - * underlying VM, use a service account where no one has that - * permission. + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; * - * If not set, VMs run with a service account provided by the - * Cloud Workstations service, and the image must be publicly - * accessible. + * @return The poolSize. + */ + int getPoolSize(); + } + + /** + * + * + *
            +       * A boost configuration is a set of resources that a workstation can use
            +       * to increase its performance. If you specify a boost configuration, upon
            +       * startup, workstation users can choose to use a VM provisioned under the
            +       * boost config by passing the boost config ID in the start request. If
            +       * the workstation user does not provide a boost config ID  in the start
            +       * request, the system will choose a VM from the pool provisioned under
            +       * the default config.
            +       * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig} + */ + public static final class BoostConfig extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig) + BoostConfigOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "BoostConfig"); + } + + // Use BoostConfig.newBuilder() to construct. + private BoostConfig(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private BoostConfig() { + id_ = ""; + machineType_ = ""; + accelerators_ = java.util.Collections.emptyList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_BoostConfig_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_BoostConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .class, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder.class); + } + + public static final int ID_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object id_ = ""; + + /** + * + * + *
            +         * Required. The ID to be used for the boost configuration.
                      * 
            * - * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; * - * @return The bytes for serviceAccount. + * @return The id. */ - public com.google.protobuf.ByteString getServiceAccountBytes() { - java.lang.Object ref = serviceAccount_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - serviceAccount_ = b; - return b; + @java.lang.Override + public java.lang.String getId() { + java.lang.Object ref = id_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; } else { - return (com.google.protobuf.ByteString) ref; + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + id_ = s; + return s; } } @@ -3541,2955 +3584,2823 @@ public com.google.protobuf.ByteString getServiceAccountBytes() { * * *
            -         * Optional. The email address of the service account for Cloud
            -         * Workstations VMs created with this configuration. When specified, be
            -         * sure that the service account has `logginglogEntries.create` permission
            -         * on the project so it can write logs out to Cloud Logging. If using a
            -         * custom container image, the service account must have permissions to
            -         * pull the specified image.
            -         *
            -         * If you as the administrator want to be able to `ssh` into the
            -         * underlying VM, you need to set this value to a service account
            -         * for which you have the `iam.serviceAccounts.actAs` permission.
            -         * Conversely, if you don't want anyone to be able to `ssh` into the
            -         * underlying VM, use a service account where no one has that
            -         * permission.
            -         *
            -         * If not set, VMs run with a service account provided by the
            -         * Cloud Workstations service, and the image must be publicly
            -         * accessible.
            +         * Required. The ID to be used for the boost configuration.
                      * 
            * - * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; * - * @param value The serviceAccount to set. - * @return This builder for chaining. + * @return The bytes for id. */ - public Builder setServiceAccount(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + @java.lang.Override + public com.google.protobuf.ByteString getIdBytes() { + java.lang.Object ref = id_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + id_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - serviceAccount_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; } + public static final int MACHINE_TYPE_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object machineType_ = ""; + /** * * *
            -         * Optional. The email address of the service account for Cloud
            -         * Workstations VMs created with this configuration. When specified, be
            -         * sure that the service account has `logginglogEntries.create` permission
            -         * on the project so it can write logs out to Cloud Logging. If using a
            -         * custom container image, the service account must have permissions to
            -         * pull the specified image.
            -         *
            -         * If you as the administrator want to be able to `ssh` into the
            -         * underlying VM, you need to set this value to a service account
            -         * for which you have the `iam.serviceAccounts.actAs` permission.
            -         * Conversely, if you don't want anyone to be able to `ssh` into the
            -         * underlying VM, use a service account where no one has that
            -         * permission.
            -         *
            -         * If not set, VMs run with a service account provided by the
            -         * Cloud Workstations service, and the image must be publicly
            -         * accessible.
            +         * Optional. The type of machine that boosted VM instances will use—for
            +         * example, `e2-standard-4`. For more information about machine types
            +         * that Cloud Workstations supports, see the list of [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Defaults to `e2-standard-4`.
                      * 
            * - * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return This builder for chaining. + * @return The machineType. */ - public Builder clearServiceAccount() { - serviceAccount_ = getDefaultInstance().getServiceAccount(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - return this; + @java.lang.Override + public java.lang.String getMachineType() { + java.lang.Object ref = machineType_; + 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(); + machineType_ = s; + return s; + } } /** * * *
            -         * Optional. The email address of the service account for Cloud
            -         * Workstations VMs created with this configuration. When specified, be
            -         * sure that the service account has `logginglogEntries.create` permission
            -         * on the project so it can write logs out to Cloud Logging. If using a
            -         * custom container image, the service account must have permissions to
            -         * pull the specified image.
            -         *
            -         * If you as the administrator want to be able to `ssh` into the
            -         * underlying VM, you need to set this value to a service account
            -         * for which you have the `iam.serviceAccounts.actAs` permission.
            -         * Conversely, if you don't want anyone to be able to `ssh` into the
            -         * underlying VM, use a service account where no one has that
            -         * permission.
            -         *
            -         * If not set, VMs run with a service account provided by the
            -         * Cloud Workstations service, and the image must be publicly
            -         * accessible.
            +         * Optional. The type of machine that boosted VM instances will use—for
            +         * example, `e2-standard-4`. For more information about machine types
            +         * that Cloud Workstations supports, see the list of [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Defaults to `e2-standard-4`.
                      * 
            * - * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The bytes for serviceAccount to set. - * @return This builder for chaining. + * @return The bytes for machineType. */ - public Builder setServiceAccountBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + @java.lang.Override + public com.google.protobuf.ByteString getMachineTypeBytes() { + java.lang.Object ref = machineType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + machineType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - checkByteStringIsUtf8(value); - serviceAccount_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; } - private com.google.protobuf.LazyStringArrayList serviceAccountScopes_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + public static final int ACCELERATORS_FIELD_NUMBER = 3; - private void ensureServiceAccountScopesIsMutable() { - if (!serviceAccountScopes_.isModifiable()) { - serviceAccountScopes_ = - new com.google.protobuf.LazyStringArrayList(serviceAccountScopes_); - } - bitField0_ |= 0x00000004; - } + @SuppressWarnings("serial") + private java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator> + accelerators_; /** * * *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
                      * 
            * * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return A list containing the serviceAccountScopes. */ - public com.google.protobuf.ProtocolStringList getServiceAccountScopesList() { - serviceAccountScopes_.makeImmutable(); - return serviceAccountScopes_; + @java.lang.Override + public java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator> + getAcceleratorsList() { + return accelerators_; } /** * * *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
                      * 
            * * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The count of serviceAccountScopes. */ - public int getServiceAccountScopesCount() { - return serviceAccountScopes_.size(); + @java.lang.Override + public java.util.List< + ? extends + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + getAcceleratorsOrBuilderList() { + return accelerators_; } /** * * *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
                      * 
            * * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param index The index of the element to return. - * @return The serviceAccountScopes at the given index. */ - public java.lang.String getServiceAccountScopes(int index) { - return serviceAccountScopes_.get(index); + @java.lang.Override + public int getAcceleratorsCount() { + return accelerators_.size(); } /** * * *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
                      * 
            * * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param index The index of the value to return. - * @return The bytes of the serviceAccountScopes at the given index. */ - public com.google.protobuf.ByteString getServiceAccountScopesBytes(int index) { - return serviceAccountScopes_.getByteString(index); + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + getAccelerators(int index) { + return accelerators_.get(index); } /** * * *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
                      * 
            * * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param index The index to set the value at. - * @param value The serviceAccountScopes to set. - * @return This builder for chaining. */ - public Builder setServiceAccountScopes(int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureServiceAccountScopesIsMutable(); - serviceAccountScopes_.set(index, value); - bitField0_ |= 0x00000004; - onChanged(); - return this; + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder + getAcceleratorsOrBuilder(int index) { + return accelerators_.get(index); } + public static final int BOOT_DISK_SIZE_GB_FIELD_NUMBER = 4; + private int bootDiskSizeGb_ = 0; + /** * * *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            +         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
                      * 
            * - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * int32 boot_disk_size_gb = 4 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The serviceAccountScopes to add. - * @return This builder for chaining. + * @return The bootDiskSizeGb. */ - public Builder addServiceAccountScopes(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureServiceAccountScopesIsMutable(); - serviceAccountScopes_.add(value); - bitField0_ |= 0x00000004; - onChanged(); - return this; + @java.lang.Override + public int getBootDiskSizeGb() { + return bootDiskSizeGb_; } + public static final int ENABLE_NESTED_VIRTUALIZATION_FIELD_NUMBER = 7; + private boolean enableNestedVirtualization_ = false; + /** * * *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            -         * 
            + * Optional. Whether to enable nested virtualization on boosted Cloud + * Workstations VMs running using this boost configuration. * - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param values The serviceAccountScopes to add. - * @return This builder for chaining. - */ - public Builder addAllServiceAccountScopes(java.lang.Iterable values) { - ensureServiceAccountScopesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, serviceAccountScopes_); - bitField0_ |= 0x00000004; - onChanged(); - return this; - } - - /** + * Defaults to false. * + * Nested virtualization lets you run virtual machine (VM) instances + * inside your workstation. Before enabling nested virtualization, + * consider the following important considerations. Cloud Workstations + * instances are subject to the [same restrictions as Compute Engine + * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions): * - *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            +         * * **Organization policy**: projects, folders, or
            +         * organizations may be restricted from creating nested VMs if the
            +         * **Disable VM nested virtualization** constraint is enforced in
            +         * the organization policy. For more information, see the
            +         * Compute Engine section,
            +         * [Checking whether nested virtualization is
            +         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +         * * **Performance**: nested VMs might experience a 10% or greater
            +         * decrease in performance for workloads that are CPU-bound and
            +         * possibly greater than a 10% decrease for workloads that are
            +         * input/output bound.
            +         * * **Machine Type**: nested virtualization can only be enabled on
            +         * boost configurations that specify a
            +         * [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig.machine_type]
            +         * in the N1 or N2 machine series.
                      * 
            * - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return This builder for chaining. + * @return The enableNestedVirtualization. */ - public Builder clearServiceAccountScopes() { - serviceAccountScopes_ = com.google.protobuf.LazyStringArrayList.emptyList(); - bitField0_ = (bitField0_ & ~0x00000004); - ; - onChanged(); - return this; + @java.lang.Override + public boolean getEnableNestedVirtualization() { + return enableNestedVirtualization_; } + public static final int POOL_SIZE_FIELD_NUMBER = 5; + private int poolSize_ = 0; + /** * * *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            +         * Optional. The number of boost VMs that the system should keep idle so
            +         * that workstations can be boosted quickly. Defaults to `0`.
                      * 
            * - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The bytes of the serviceAccountScopes to add. - * @return This builder for chaining. + * @return The poolSize. */ - public Builder addServiceAccountScopesBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - ensureServiceAccountScopesIsMutable(); - serviceAccountScopes_.add(value); - bitField0_ |= 0x00000004; - onChanged(); - return this; + @java.lang.Override + public int getPoolSize() { + return poolSize_; } - private com.google.protobuf.LazyStringArrayList tags_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + private byte memoizedIsInitialized = -1; - private void ensureTagsIsMutable() { - if (!tags_.isModifiable()) { - tags_ = new com.google.protobuf.LazyStringArrayList(tags_); - } - bitField0_ |= 0x00000008; - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - /** - * - * - *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -         * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return A list containing the tags. - */ - public com.google.protobuf.ProtocolStringList getTagsList() { - tags_.makeImmutable(); - return tags_; + memoizedIsInitialized = 1; + return true; } - /** - * - * - *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -         * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The count of tags. - */ - public int getTagsCount() { - return tags_.size(); + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(id_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, id_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(machineType_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, machineType_); + } + for (int i = 0; i < accelerators_.size(); i++) { + output.writeMessage(3, accelerators_.get(i)); + } + if (bootDiskSizeGb_ != 0) { + output.writeInt32(4, bootDiskSizeGb_); + } + if (poolSize_ != 0) { + output.writeInt32(5, poolSize_); + } + if (enableNestedVirtualization_ != false) { + output.writeBool(7, enableNestedVirtualization_); + } + getUnknownFields().writeTo(output); } - /** - * - * - *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -         * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the element to return. - * @return The tags at the given index. - */ - public java.lang.String getTags(int index) { - return tags_.get(index); + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(id_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, id_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(machineType_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, machineType_); + } + for (int i = 0; i < accelerators_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(3, accelerators_.get(i)); + } + if (bootDiskSizeGb_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(4, bootDiskSizeGb_); + } + if (poolSize_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(5, poolSize_); + } + if (enableNestedVirtualization_ != false) { + size += + com.google.protobuf.CodedOutputStream.computeBoolSize( + 7, enableNestedVirtualization_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - /** - * - * - *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -         * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the value to return. - * @return The bytes of the tags at the given index. - */ - public com.google.protobuf.ByteString getTagsBytes(int index) { - return tags_.getByteString(index); + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig other = + (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig) obj; + + if (!getId().equals(other.getId())) return false; + if (!getMachineType().equals(other.getMachineType())) return false; + if (!getAcceleratorsList().equals(other.getAcceleratorsList())) return false; + if (getBootDiskSizeGb() != other.getBootDiskSizeGb()) return false; + if (getEnableNestedVirtualization() != other.getEnableNestedVirtualization()) + return false; + if (getPoolSize() != other.getPoolSize()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; } - /** - * - * - *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -         * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index to set the value at. - * @param value The tags to set. - * @return This builder for chaining. - */ - public Builder setTags(int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; } - ensureTagsIsMutable(); - tags_.set(index, value); - bitField0_ |= 0x00000008; - onChanged(); - return this; + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + ID_FIELD_NUMBER; + hash = (53 * hash) + getId().hashCode(); + hash = (37 * hash) + MACHINE_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getMachineType().hashCode(); + if (getAcceleratorsCount() > 0) { + hash = (37 * hash) + ACCELERATORS_FIELD_NUMBER; + hash = (53 * hash) + getAcceleratorsList().hashCode(); + } + hash = (37 * hash) + BOOT_DISK_SIZE_GB_FIELD_NUMBER; + hash = (53 * hash) + getBootDiskSizeGb(); + hash = (37 * hash) + ENABLE_NESTED_VIRTUALIZATION_FIELD_NUMBER; + hash = + (53 * hash) + + com.google.protobuf.Internal.hashBoolean(getEnableNestedVirtualization()); + hash = (37 * hash) + POOL_SIZE_FIELD_NUMBER; + hash = (53 * hash) + getPoolSize(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - /** - * - * - *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -         * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The tags to add. - * @return This builder for chaining. - */ - public Builder addTags(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureTagsIsMutable(); - tags_.add(value); - bitField0_ |= 0x00000008; - onChanged(); - return this; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - /** - * - * - *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -         * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param values The tags to add. - * @return This builder for chaining. - */ - public Builder addAllTags(java.lang.Iterable values) { - ensureTagsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, tags_); - bitField0_ |= 0x00000008; - onChanged(); - return this; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - /** - * - * - *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -         * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearTags() { - tags_ = com.google.protobuf.LazyStringArrayList.emptyList(); - bitField0_ = (bitField0_ & ~0x00000008); - ; - onChanged(); - return this; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - /** - * - * - *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -         * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes of the tags to add. - * @return This builder for chaining. - */ - public Builder addTagsBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - ensureTagsIsMutable(); - tags_.add(value); - bitField0_ |= 0x00000008; - onChanged(); - return this; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - private int poolSize_; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - /** - * - * - *
            -         * Optional. The number of VMs that the system should keep idle so that
            -         * new workstations can be started quickly for new users. Defaults to `0`
            -         * in the API.
            -         * 
            - * - * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The poolSize. - */ - @java.lang.Override - public int getPoolSize() { - return poolSize_; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - /** - * - * - *
            -         * Optional. The number of VMs that the system should keep idle so that
            -         * new workstations can be started quickly for new users. Defaults to `0`
            -         * in the API.
            -         * 
            - * - * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The poolSize to set. - * @return This builder for chaining. - */ - public Builder setPoolSize(int value) { + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - poolSize_ = value; - bitField0_ |= 0x00000010; - onChanged(); - return this; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - /** - * - * - *
            -         * Optional. The number of VMs that the system should keep idle so that
            -         * new workstations can be started quickly for new users. Defaults to `0`
            -         * in the API.
            -         * 
            - * - * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearPoolSize() { - bitField0_ = (bitField0_ & ~0x00000010); - poolSize_ = 0; - onChanged(); - return this; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); } - private int pooledInstances_; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig + 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.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -         * Output only. Number of instances currently available in the pool for
            -         * faster workstation startup.
            -         * 
            - * - * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The pooledInstances. - */ @java.lang.Override - public int getPooledInstances() { - return pooledInstances_; + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + 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; } /** * * *
            -         * Output only. Number of instances currently available in the pool for
            -         * faster workstation startup.
            +         * A boost configuration is a set of resources that a workstation can use
            +         * to increase its performance. If you specify a boost configuration, upon
            +         * startup, workstation users can choose to use a VM provisioned under the
            +         * boost config by passing the boost config ID in the start request. If
            +         * the workstation user does not provide a boost config ID  in the start
            +         * request, the system will choose a VM from the pool provisioned under
            +         * the default config.
                      * 
            * - * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The pooledInstances to set. - * @return This builder for chaining. + * Protobuf type {@code + * google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig} */ - public Builder setPooledInstances(int value) { + public static final class Builder + extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig) + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_BoostConfig_descriptor; + } - pooledInstances_ = value; - bitField0_ |= 0x00000020; - onChanged(); - return this; - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_BoostConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .class, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder.class); + } - /** - * - * - *
            -         * Output only. Number of instances currently available in the pool for
            -         * faster workstation startup.
            -         * 
            - * - * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. - */ - public Builder clearPooledInstances() { - bitField0_ = (bitField0_ & ~0x00000020); - pooledInstances_ = 0; - onChanged(); - return this; - } + // Construct using + // com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig.newBuilder() + private Builder() {} - private boolean disablePublicIpAddresses_; + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } - /** - * - * - *
            -         * Optional. When set to true, disables public IP addresses for VMs. If
            -         * you disable public IP addresses, you must set up Private Google Access
            -         * or Cloud NAT on your network. If you use Private Google Access and you
            -         * use `private.googleapis.com` or `restricted.googleapis.com` for
            -         * Container Registry and Artifact Registry, make sure that you set
            -         * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            -         * Defaults to false (VMs have public IP addresses).
            -         * 
            - * - * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The disablePublicIpAddresses. - */ - @java.lang.Override - public boolean getDisablePublicIpAddresses() { - return disablePublicIpAddresses_; - } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + id_ = ""; + machineType_ = ""; + if (acceleratorsBuilder_ == null) { + accelerators_ = java.util.Collections.emptyList(); + } else { + accelerators_ = null; + acceleratorsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000004); + bootDiskSizeGb_ = 0; + enableNestedVirtualization_ = false; + poolSize_ = 0; + return this; + } - /** - * - * - *
            -         * Optional. When set to true, disables public IP addresses for VMs. If
            -         * you disable public IP addresses, you must set up Private Google Access
            -         * or Cloud NAT on your network. If you use Private Google Access and you
            -         * use `private.googleapis.com` or `restricted.googleapis.com` for
            -         * Container Registry and Artifact Registry, make sure that you set
            -         * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            -         * Defaults to false (VMs have public IP addresses).
            -         * 
            - * - * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param value The disablePublicIpAddresses to set. - * @return This builder for chaining. - */ - public Builder setDisablePublicIpAddresses(boolean value) { + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_BoostConfig_descriptor; + } - disablePublicIpAddresses_ = value; - bitField0_ |= 0x00000040; - onChanged(); - return this; - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .getDefaultInstance(); + } - /** - * - * - *
            -         * Optional. When set to true, disables public IP addresses for VMs. If
            -         * you disable public IP addresses, you must set up Private Google Access
            -         * or Cloud NAT on your network. If you use Private Google Access and you
            -         * use `private.googleapis.com` or `restricted.googleapis.com` for
            -         * Container Registry and Artifact Registry, make sure that you set
            -         * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            -         * Defaults to false (VMs have public IP addresses).
            -         * 
            - * - * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return This builder for chaining. - */ - public Builder clearDisablePublicIpAddresses() { - bitField0_ = (bitField0_ & ~0x00000040); - disablePublicIpAddresses_ = false; - onChanged(); - return this; - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + build() { + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - private boolean enableNestedVirtualization_; + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + buildPartial() { + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig result = + new com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig( + this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - /** - * - * - *
            -         * Optional. Whether to enable nested virtualization on Cloud Workstations
            -         * VMs created under this workstation configuration.
            -         *
            -         * Nested virtualization lets you run virtual machine (VM) instances
            -         * inside your workstation. Before enabling nested virtualization,
            -         * consider the following important considerations. Cloud Workstations
            -         * instances are subject to the [same restrictions as Compute Engine
            -         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            -         *
            -         * * **Organization policy**: projects, folders, or
            -         * organizations may be restricted from creating nested VMs if the
            -         * **Disable VM nested virtualization** constraint is enforced in
            -         * the organization policy. For more information, see the
            -         * Compute Engine section,
            -         * [Checking whether nested virtualization is
            -         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            -         * * **Performance**: nested VMs might experience a 10% or greater
            -         * decrease in performance for workloads that are CPU-bound and
            -         * possibly greater than a 10% decrease for workloads that are
            -         * input/output bound.
            -         * * **Machine Type**: nested virtualization can only be enabled on
            -         * workstation configurations that specify a
            -         * [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.machine_type]
            -         * in the N1 or N2 machine series.
            -         * * **GPUs**: nested virtualization may not be enabled on workstation
            -         * configurations with accelerators.
            -         * * **Operating System**: Because
            -         * [Container-Optimized
            -         * OS](https://cloud.google.com/compute/docs/images/os-details#container-optimized_os_cos)
            -         * does not support nested virtualization, when nested virtualization is
            -         * enabled, the underlying Compute Engine VM instances boot from an
            -         * [Ubuntu
            -         * LTS](https://cloud.google.com/compute/docs/images/os-details#ubuntu_lts)
            -         * image.
            -         * 
            - * - * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The enableNestedVirtualization. - */ - @java.lang.Override - public boolean getEnableNestedVirtualization() { - return enableNestedVirtualization_; - } + private void buildPartialRepeatedFields( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + result) { + if (acceleratorsBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0)) { + accelerators_ = java.util.Collections.unmodifiableList(accelerators_); + bitField0_ = (bitField0_ & ~0x00000004); + } + result.accelerators_ = accelerators_; + } else { + result.accelerators_ = acceleratorsBuilder_.build(); + } + } - /** - * - * - *
            -         * Optional. Whether to enable nested virtualization on Cloud Workstations
            -         * VMs created under this workstation configuration.
            -         *
            -         * Nested virtualization lets you run virtual machine (VM) instances
            -         * inside your workstation. Before enabling nested virtualization,
            -         * consider the following important considerations. Cloud Workstations
            -         * instances are subject to the [same restrictions as Compute Engine
            -         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            -         *
            -         * * **Organization policy**: projects, folders, or
            -         * organizations may be restricted from creating nested VMs if the
            -         * **Disable VM nested virtualization** constraint is enforced in
            -         * the organization policy. For more information, see the
            -         * Compute Engine section,
            -         * [Checking whether nested virtualization is
            -         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            -         * * **Performance**: nested VMs might experience a 10% or greater
            -         * decrease in performance for workloads that are CPU-bound and
            -         * possibly greater than a 10% decrease for workloads that are
            -         * input/output bound.
            -         * * **Machine Type**: nested virtualization can only be enabled on
            -         * workstation configurations that specify a
            -         * [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.machine_type]
            -         * in the N1 or N2 machine series.
            -         * * **GPUs**: nested virtualization may not be enabled on workstation
            -         * configurations with accelerators.
            -         * * **Operating System**: Because
            -         * [Container-Optimized
            -         * OS](https://cloud.google.com/compute/docs/images/os-details#container-optimized_os_cos)
            -         * does not support nested virtualization, when nested virtualization is
            -         * enabled, the underlying Compute Engine VM instances boot from an
            -         * [Ubuntu
            -         * LTS](https://cloud.google.com/compute/docs/images/os-details#ubuntu_lts)
            -         * image.
            -         * 
            - * - * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param value The enableNestedVirtualization to set. - * @return This builder for chaining. - */ - public Builder setEnableNestedVirtualization(boolean value) { + private void buildPartial0( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.id_ = id_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.machineType_ = machineType_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.bootDiskSizeGb_ = bootDiskSizeGb_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.enableNestedVirtualization_ = enableNestedVirtualization_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.poolSize_ = poolSize_; + } + } - enableNestedVirtualization_ = value; - bitField0_ |= 0x00000080; - onChanged(); - return this; - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig) { + return mergeFrom( + (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig) + other); + } else { + super.mergeFrom(other); + return this; + } + } - /** - * - * - *
            -         * Optional. Whether to enable nested virtualization on Cloud Workstations
            -         * VMs created under this workstation configuration.
            -         *
            -         * Nested virtualization lets you run virtual machine (VM) instances
            -         * inside your workstation. Before enabling nested virtualization,
            -         * consider the following important considerations. Cloud Workstations
            -         * instances are subject to the [same restrictions as Compute Engine
            -         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            -         *
            -         * * **Organization policy**: projects, folders, or
            -         * organizations may be restricted from creating nested VMs if the
            -         * **Disable VM nested virtualization** constraint is enforced in
            -         * the organization policy. For more information, see the
            -         * Compute Engine section,
            -         * [Checking whether nested virtualization is
            -         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            -         * * **Performance**: nested VMs might experience a 10% or greater
            -         * decrease in performance for workloads that are CPU-bound and
            -         * possibly greater than a 10% decrease for workloads that are
            -         * input/output bound.
            -         * * **Machine Type**: nested virtualization can only be enabled on
            -         * workstation configurations that specify a
            -         * [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.machine_type]
            -         * in the N1 or N2 machine series.
            -         * * **GPUs**: nested virtualization may not be enabled on workstation
            -         * configurations with accelerators.
            -         * * **Operating System**: Because
            -         * [Container-Optimized
            -         * OS](https://cloud.google.com/compute/docs/images/os-details#container-optimized_os_cos)
            -         * does not support nested virtualization, when nested virtualization is
            -         * enabled, the underlying Compute Engine VM instances boot from an
            -         * [Ubuntu
            -         * LTS](https://cloud.google.com/compute/docs/images/os-details#ubuntu_lts)
            -         * image.
            -         * 
            - * - * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return This builder for chaining. - */ - public Builder clearEnableNestedVirtualization() { - bitField0_ = (bitField0_ & ~0x00000080); - enableNestedVirtualization_ = false; - onChanged(); - return this; - } + public Builder mergeFrom( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + other) { + if (other + == com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .getDefaultInstance()) return this; + if (!other.getId().isEmpty()) { + id_ = other.id_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getMachineType().isEmpty()) { + machineType_ = other.machineType_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (acceleratorsBuilder_ == null) { + if (!other.accelerators_.isEmpty()) { + if (accelerators_.isEmpty()) { + accelerators_ = other.accelerators_; + bitField0_ = (bitField0_ & ~0x00000004); + } else { + ensureAcceleratorsIsMutable(); + accelerators_.addAll(other.accelerators_); + } + onChanged(); + } + } else { + if (!other.accelerators_.isEmpty()) { + if (acceleratorsBuilder_.isEmpty()) { + acceleratorsBuilder_.dispose(); + acceleratorsBuilder_ = null; + accelerators_ = other.accelerators_; + bitField0_ = (bitField0_ & ~0x00000004); + acceleratorsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetAcceleratorsFieldBuilder() + : null; + } else { + acceleratorsBuilder_.addAllMessages(other.accelerators_); + } + } + } + if (other.getBootDiskSizeGb() != 0) { + setBootDiskSizeGb(other.getBootDiskSizeGb()); + } + if (other.getEnableNestedVirtualization() != false) { + setEnableNestedVirtualization(other.getEnableNestedVirtualization()); + } + if (other.getPoolSize() != 0) { + setPoolSize(other.getPoolSize()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - private com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig - shieldedInstanceConfig_; - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfigOrBuilder> - shieldedInstanceConfigBuilder_; + @java.lang.Override + public final boolean isInitialized() { + return true; + } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the shieldedInstanceConfig field is set. - */ - public boolean hasShieldedInstanceConfig() { - return ((bitField0_ & 0x00000100) != 0); - } + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + id_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + machineType_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator + m = + input.readMessage( + com.google.cloud.workstations.v1.WorkstationConfig.Host + .GceInstance.Accelerator.parser(), + extensionRegistry); + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.add(m); + } else { + acceleratorsBuilder_.addMessage(m); + } + break; + } // case 26 + case 32: + { + bootDiskSizeGb_ = input.readInt32(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 40: + { + poolSize_ = input.readInt32(); + bitField0_ |= 0x00000020; + break; + } // case 40 + case 56: + { + enableNestedVirtualization_ = input.readBool(); + bitField0_ |= 0x00000010; + break; + } // case 56 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The shieldedInstanceConfig. - */ - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig - getShieldedInstanceConfig() { - if (shieldedInstanceConfigBuilder_ == null) { - return shieldedInstanceConfig_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.getDefaultInstance() - : shieldedInstanceConfig_; - } else { - return shieldedInstanceConfigBuilder_.getMessage(); + private int bitField0_; + + private java.lang.Object id_ = ""; + + /** + * + * + *
            +           * Required. The ID to be used for the boost configuration.
            +           * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The id. + */ + public java.lang.String getId() { + java.lang.Object ref = id_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + id_ = s; + return s; + } else { + return (java.lang.String) ref; + } } - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setShieldedInstanceConfig( - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig - value) { - if (shieldedInstanceConfigBuilder_ == null) { + /** + * + * + *
            +           * Required. The ID to be used for the boost configuration.
            +           * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for id. + */ + public com.google.protobuf.ByteString getIdBytes() { + java.lang.Object ref = id_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + id_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +           * Required. The ID to be used for the boost configuration.
            +           * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The id to set. + * @return This builder for chaining. + */ + public Builder setId(java.lang.String value) { if (value == null) { throw new NullPointerException(); } - shieldedInstanceConfig_ = value; - } else { - shieldedInstanceConfigBuilder_.setMessage(value); + id_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; } - bitField0_ |= 0x00000100; - onChanged(); - return this; - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setShieldedInstanceConfig( - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.Builder - builderForValue) { - if (shieldedInstanceConfigBuilder_ == null) { - shieldedInstanceConfig_ = builderForValue.build(); - } else { - shieldedInstanceConfigBuilder_.setMessage(builderForValue.build()); + /** + * + * + *
            +           * Required. The ID to be used for the boost configuration.
            +           * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearId() { + id_ = getDefaultInstance().getId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; } - bitField0_ |= 0x00000100; - onChanged(); - return this; - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder mergeShieldedInstanceConfig( - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig - value) { - if (shieldedInstanceConfigBuilder_ == null) { - if (((bitField0_ & 0x00000100) != 0) - && shieldedInstanceConfig_ != null - && shieldedInstanceConfig_ - != com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.getDefaultInstance()) { - getShieldedInstanceConfigBuilder().mergeFrom(value); - } else { - shieldedInstanceConfig_ = value; + /** + * + * + *
            +           * Required. The ID to be used for the boost configuration.
            +           * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The bytes for id to set. + * @return This builder for chaining. + */ + public Builder setIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - } else { - shieldedInstanceConfigBuilder_.mergeFrom(value); - } - if (shieldedInstanceConfig_ != null) { - bitField0_ |= 0x00000100; + checkByteStringIsUtf8(value); + id_ = value; + bitField0_ |= 0x00000001; onChanged(); + return this; } - return this; - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder clearShieldedInstanceConfig() { - bitField0_ = (bitField0_ & ~0x00000100); - shieldedInstanceConfig_ = null; - if (shieldedInstanceConfigBuilder_ != null) { - shieldedInstanceConfigBuilder_.dispose(); - shieldedInstanceConfigBuilder_ = null; + private java.lang.Object machineType_ = ""; + + /** + * + * + *
            +           * Optional. The type of machine that boosted VM instances will use—for
            +           * example, `e2-standard-4`. For more information about machine types
            +           * that Cloud Workstations supports, see the list of [available machine
            +           * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +           * Defaults to `e2-standard-4`.
            +           * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The machineType. + */ + public java.lang.String getMachineType() { + java.lang.Object ref = machineType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + machineType_ = s; + return s; + } else { + return (java.lang.String) ref; + } } - onChanged(); - return this; - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.Builder - getShieldedInstanceConfigBuilder() { - bitField0_ |= 0x00000100; - onChanged(); - return internalGetShieldedInstanceConfigFieldBuilder().getBuilder(); - } + /** + * + * + *
            +           * Optional. The type of machine that boosted VM instances will use—for
            +           * example, `e2-standard-4`. For more information about machine types
            +           * that Cloud Workstations supports, see the list of [available machine
            +           * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +           * Defaults to `e2-standard-4`.
            +           * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for machineType. + */ + public com.google.protobuf.ByteString getMachineTypeBytes() { + java.lang.Object ref = machineType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + machineType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfigOrBuilder - getShieldedInstanceConfigOrBuilder() { - if (shieldedInstanceConfigBuilder_ != null) { - return shieldedInstanceConfigBuilder_.getMessageOrBuilder(); - } else { - return shieldedInstanceConfig_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.getDefaultInstance() - : shieldedInstanceConfig_; + /** + * + * + *
            +           * Optional. The type of machine that boosted VM instances will use—for
            +           * example, `e2-standard-4`. For more information about machine types
            +           * that Cloud Workstations supports, see the list of [available machine
            +           * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +           * Defaults to `e2-standard-4`.
            +           * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The machineType to set. + * @return This builder for chaining. + */ + public Builder setMachineType(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + machineType_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; } - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfigOrBuilder> - internalGetShieldedInstanceConfigFieldBuilder() { - if (shieldedInstanceConfigBuilder_ == null) { - shieldedInstanceConfigBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfigOrBuilder>( - getShieldedInstanceConfig(), getParentForChildren(), isClean()); - shieldedInstanceConfig_ = null; + /** + * + * + *
            +           * Optional. The type of machine that boosted VM instances will use—for
            +           * example, `e2-standard-4`. For more information about machine types
            +           * that Cloud Workstations supports, see the list of [available machine
            +           * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +           * Defaults to `e2-standard-4`.
            +           * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearMachineType() { + machineType_ = getDefaultInstance().getMachineType(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; } - return shieldedInstanceConfigBuilder_; - } - private com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig - confidentialInstanceConfig_; - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfigOrBuilder> - confidentialInstanceConfigBuilder_; + /** + * + * + *
            +           * Optional. The type of machine that boosted VM instances will use—for
            +           * example, `e2-standard-4`. For more information about machine types
            +           * that Cloud Workstations supports, see the list of [available machine
            +           * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +           * Defaults to `e2-standard-4`.
            +           * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for machineType to set. + * @return This builder for chaining. + */ + public Builder setMachineTypeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + machineType_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the confidentialInstanceConfig field is set. - */ - public boolean hasConfidentialInstanceConfig() { - return ((bitField0_ & 0x00000200) != 0); - } + private java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator> + accelerators_ = java.util.Collections.emptyList(); - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The confidentialInstanceConfig. - */ - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig - getConfidentialInstanceConfig() { - if (confidentialInstanceConfigBuilder_ == null) { - return confidentialInstanceConfig_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.getDefaultInstance() - : confidentialInstanceConfig_; - } else { - return confidentialInstanceConfigBuilder_.getMessage(); + private void ensureAcceleratorsIsMutable() { + if (!((bitField0_ & 0x00000004) != 0)) { + accelerators_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator>(accelerators_); + bitField0_ |= 0x00000004; + } } - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setConfidentialInstanceConfig( - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig - value) { - if (confidentialInstanceConfigBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + acceleratorsBuilder_; + + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator> + getAcceleratorsList() { + if (acceleratorsBuilder_ == null) { + return java.util.Collections.unmodifiableList(accelerators_); + } else { + return acceleratorsBuilder_.getMessageList(); } - confidentialInstanceConfig_ = value; - } else { - confidentialInstanceConfigBuilder_.setMessage(value); } - bitField0_ |= 0x00000200; - onChanged(); - return this; - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setConfidentialInstanceConfig( - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.Builder - builderForValue) { - if (confidentialInstanceConfigBuilder_ == null) { - confidentialInstanceConfig_ = builderForValue.build(); - } else { - confidentialInstanceConfigBuilder_.setMessage(builderForValue.build()); + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public int getAcceleratorsCount() { + if (acceleratorsBuilder_ == null) { + return accelerators_.size(); + } else { + return acceleratorsBuilder_.getCount(); + } } - bitField0_ |= 0x00000200; - onChanged(); - return this; - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder mergeConfidentialInstanceConfig( - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig - value) { - if (confidentialInstanceConfigBuilder_ == null) { - if (((bitField0_ & 0x00000200) != 0) - && confidentialInstanceConfig_ != null - && confidentialInstanceConfig_ - != com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.getDefaultInstance()) { - getConfidentialInstanceConfigBuilder().mergeFrom(value); + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + getAccelerators(int index) { + if (acceleratorsBuilder_ == null) { + return accelerators_.get(index); } else { - confidentialInstanceConfig_ = value; + return acceleratorsBuilder_.getMessage(index); } - } else { - confidentialInstanceConfigBuilder_.mergeFrom(value); - } - if (confidentialInstanceConfig_ != null) { - bitField0_ |= 0x00000200; - onChanged(); } - return this; - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder clearConfidentialInstanceConfig() { - bitField0_ = (bitField0_ & ~0x00000200); - confidentialInstanceConfig_ = null; - if (confidentialInstanceConfigBuilder_ != null) { - confidentialInstanceConfigBuilder_.dispose(); - confidentialInstanceConfigBuilder_ = null; + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setAccelerators( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + value) { + if (acceleratorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAcceleratorsIsMutable(); + accelerators_.set(index, value); + onChanged(); + } else { + acceleratorsBuilder_.setMessage(index, value); + } + return this; } - onChanged(); - return this; - } - - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.Builder - getConfidentialInstanceConfigBuilder() { - bitField0_ |= 0x00000200; - onChanged(); - return internalGetConfidentialInstanceConfigFieldBuilder().getBuilder(); - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfigOrBuilder - getConfidentialInstanceConfigOrBuilder() { - if (confidentialInstanceConfigBuilder_ != null) { - return confidentialInstanceConfigBuilder_.getMessageOrBuilder(); - } else { - return confidentialInstanceConfig_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.getDefaultInstance() - : confidentialInstanceConfig_; + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setAccelerators( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + builderForValue) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.set(index, builderForValue.build()); + onChanged(); + } else { + acceleratorsBuilder_.setMessage(index, builderForValue.build()); + } + return this; } - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfigOrBuilder> - internalGetConfidentialInstanceConfigFieldBuilder() { - if (confidentialInstanceConfigBuilder_ == null) { - confidentialInstanceConfigBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfigOrBuilder>( - getConfidentialInstanceConfig(), getParentForChildren(), isClean()); - confidentialInstanceConfig_ = null; + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + value) { + if (acceleratorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAcceleratorsIsMutable(); + accelerators_.add(value); + onChanged(); + } else { + acceleratorsBuilder_.addMessage(value); + } + return this; } - return confidentialInstanceConfigBuilder_; - } - private int bootDiskSizeGb_; + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + value) { + if (acceleratorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAcceleratorsIsMutable(); + accelerators_.add(index, value); + onChanged(); + } else { + acceleratorsBuilder_.addMessage(index, value); + } + return this; + } - /** - * - * - *
            -         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            -         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            -         * 
            - * - * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bootDiskSizeGb. - */ - @java.lang.Override - public int getBootDiskSizeGb() { - return bootDiskSizeGb_; - } - - /** - * - * - *
            -         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            -         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            -         * 
            - * - * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bootDiskSizeGb to set. - * @return This builder for chaining. - */ - public Builder setBootDiskSizeGb(int value) { + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + builderForValue) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.add(builderForValue.build()); + onChanged(); + } else { + acceleratorsBuilder_.addMessage(builderForValue.build()); + } + return this; + } - bootDiskSizeGb_ = value; - bitField0_ |= 0x00000400; - onChanged(); - return this; - } + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + builderForValue) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.add(index, builderForValue.build()); + onChanged(); + } else { + acceleratorsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } - /** - * - * - *
            -         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            -         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            -         * 
            - * - * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearBootDiskSizeGb() { - bitField0_ = (bitField0_ & ~0x00000400); - bootDiskSizeGb_ = 0; - onChanged(); - return this; - } + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllAccelerators( + java.lang.Iterable< + ? extends + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator> + values) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, accelerators_); + onChanged(); + } else { + acceleratorsBuilder_.addAllMessages(values); + } + return this; + } - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) - } + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearAccelerators() { + if (acceleratorsBuilder_ == null) { + accelerators_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + } else { + acceleratorsBuilder_.clear(); + } + return this; + } - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) - private static final com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - DEFAULT_INSTANCE; + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeAccelerators(int index) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.remove(index); + onChanged(); + } else { + acceleratorsBuilder_.remove(index); + } + return this; + } - static { - DEFAULT_INSTANCE = - new com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance(); - } + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + getAcceleratorsBuilder(int index) { + return internalGetAcceleratorsFieldBuilder().getBuilder(index); + } - public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - getDefaultInstance() { - return DEFAULT_INSTANCE; - } + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder + getAcceleratorsOrBuilder(int index) { + if (acceleratorsBuilder_ == null) { + return accelerators_.get(index); + } else { + return acceleratorsBuilder_.getMessageOrBuilder(index); + } + } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public GceInstance parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + ? extends + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + getAcceleratorsOrBuilderList() { + if (acceleratorsBuilder_ != null) { + return acceleratorsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(accelerators_); } - }; + } - public static com.google.protobuf.Parser parser() { - return PARSER; - } + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + addAcceleratorsBuilder() { + return internalGetAcceleratorsFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .getDefaultInstance()); + } - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + addAcceleratorsBuilder(int index) { + return internalGetAcceleratorsFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .getDefaultInstance()); + } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder> + getAcceleratorsBuilderList() { + return internalGetAcceleratorsFieldBuilder().getBuilderList(); + } - private int configCase_ = 0; + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + internalGetAcceleratorsFieldBuilder() { + if (acceleratorsBuilder_ == null) { + acceleratorsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder>( + accelerators_, + ((bitField0_ & 0x00000004) != 0), + getParentForChildren(), + isClean()); + accelerators_ = null; + } + return acceleratorsBuilder_; + } - @SuppressWarnings("serial") - private java.lang.Object config_; + private int bootDiskSizeGb_; - public enum ConfigCase - implements - com.google.protobuf.Internal.EnumLite, - com.google.protobuf.AbstractMessage.InternalOneOfEnum { - GCE_INSTANCE(1), - CONFIG_NOT_SET(0); - private final int value; + /** + * + * + *
            +           * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +           * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +           * 
            + * + * int32 boot_disk_size_gb = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bootDiskSizeGb. + */ + @java.lang.Override + public int getBootDiskSizeGb() { + return bootDiskSizeGb_; + } - private ConfigCase(int value) { - this.value = value; - } + /** + * + * + *
            +           * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +           * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +           * 
            + * + * int32 boot_disk_size_gb = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bootDiskSizeGb to set. + * @return This builder for chaining. + */ + public Builder setBootDiskSizeGb(int value) { - /** - * @param value The number of the enum to look for. - * @return The enum associated with the given number. - * @deprecated Use {@link #forNumber(int)} instead. - */ - @java.lang.Deprecated - public static ConfigCase valueOf(int value) { - return forNumber(value); - } + bootDiskSizeGb_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } - public static ConfigCase forNumber(int value) { - switch (value) { - case 1: - return GCE_INSTANCE; - case 0: - return CONFIG_NOT_SET; - default: - return null; - } - } + /** + * + * + *
            +           * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +           * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +           * 
            + * + * int32 boot_disk_size_gb = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearBootDiskSizeGb() { + bitField0_ = (bitField0_ & ~0x00000008); + bootDiskSizeGb_ = 0; + onChanged(); + return this; + } - public int getNumber() { - return this.value; - } - }; + private boolean enableNestedVirtualization_; - public ConfigCase getConfigCase() { - return ConfigCase.forNumber(configCase_); - } + /** + * + * + *
            +           * Optional. Whether to enable nested virtualization on boosted Cloud
            +           * Workstations VMs running using this boost configuration.
            +           *
            +           * Defaults to false.
            +           *
            +           * Nested virtualization lets you run virtual machine (VM) instances
            +           * inside your workstation. Before enabling nested virtualization,
            +           * consider the following important considerations. Cloud Workstations
            +           * instances are subject to the [same restrictions as Compute Engine
            +           * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +           *
            +           * * **Organization policy**: projects, folders, or
            +           * organizations may be restricted from creating nested VMs if the
            +           * **Disable VM nested virtualization** constraint is enforced in
            +           * the organization policy. For more information, see the
            +           * Compute Engine section,
            +           * [Checking whether nested virtualization is
            +           * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +           * * **Performance**: nested VMs might experience a 10% or greater
            +           * decrease in performance for workloads that are CPU-bound and
            +           * possibly greater than a 10% decrease for workloads that are
            +           * input/output bound.
            +           * * **Machine Type**: nested virtualization can only be enabled on
            +           * boost configurations that specify a
            +           * [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig.machine_type]
            +           * in the N1 or N2 machine series.
            +           * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enableNestedVirtualization. + */ + @java.lang.Override + public boolean getEnableNestedVirtualization() { + return enableNestedVirtualization_; + } - public static final int GCE_INSTANCE_FIELD_NUMBER = 1; + /** + * + * + *
            +           * Optional. Whether to enable nested virtualization on boosted Cloud
            +           * Workstations VMs running using this boost configuration.
            +           *
            +           * Defaults to false.
            +           *
            +           * Nested virtualization lets you run virtual machine (VM) instances
            +           * inside your workstation. Before enabling nested virtualization,
            +           * consider the following important considerations. Cloud Workstations
            +           * instances are subject to the [same restrictions as Compute Engine
            +           * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +           *
            +           * * **Organization policy**: projects, folders, or
            +           * organizations may be restricted from creating nested VMs if the
            +           * **Disable VM nested virtualization** constraint is enforced in
            +           * the organization policy. For more information, see the
            +           * Compute Engine section,
            +           * [Checking whether nested virtualization is
            +           * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +           * * **Performance**: nested VMs might experience a 10% or greater
            +           * decrease in performance for workloads that are CPU-bound and
            +           * possibly greater than a 10% decrease for workloads that are
            +           * input/output bound.
            +           * * **Machine Type**: nested virtualization can only be enabled on
            +           * boost configurations that specify a
            +           * [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig.machine_type]
            +           * in the N1 or N2 machine series.
            +           * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The enableNestedVirtualization to set. + * @return This builder for chaining. + */ + public Builder setEnableNestedVirtualization(boolean value) { - /** - * - * - *
            -     * Specifies a Compute Engine instance as the host.
            -     * 
            - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; - * - * - * @return Whether the gceInstance field is set. - */ - @java.lang.Override - public boolean hasGceInstance() { - return configCase_ == 1; - } + enableNestedVirtualization_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } - /** - * - * - *
            -     * Specifies a Compute Engine instance as the host.
            -     * 
            - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; - * - * - * @return The gceInstance. - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance getGceInstance() { - if (configCase_ == 1) { - return (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) config_; - } - return com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .getDefaultInstance(); - } + /** + * + * + *
            +           * Optional. Whether to enable nested virtualization on boosted Cloud
            +           * Workstations VMs running using this boost configuration.
            +           *
            +           * Defaults to false.
            +           *
            +           * Nested virtualization lets you run virtual machine (VM) instances
            +           * inside your workstation. Before enabling nested virtualization,
            +           * consider the following important considerations. Cloud Workstations
            +           * instances are subject to the [same restrictions as Compute Engine
            +           * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +           *
            +           * * **Organization policy**: projects, folders, or
            +           * organizations may be restricted from creating nested VMs if the
            +           * **Disable VM nested virtualization** constraint is enforced in
            +           * the organization policy. For more information, see the
            +           * Compute Engine section,
            +           * [Checking whether nested virtualization is
            +           * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +           * * **Performance**: nested VMs might experience a 10% or greater
            +           * decrease in performance for workloads that are CPU-bound and
            +           * possibly greater than a 10% decrease for workloads that are
            +           * input/output bound.
            +           * * **Machine Type**: nested virtualization can only be enabled on
            +           * boost configurations that specify a
            +           * [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig.machine_type]
            +           * in the N1 or N2 machine series.
            +           * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearEnableNestedVirtualization() { + bitField0_ = (bitField0_ & ~0x00000010); + enableNestedVirtualization_ = false; + onChanged(); + return this; + } - /** - * - * - *
            -     * Specifies a Compute Engine instance as the host.
            -     * 
            - * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstanceOrBuilder - getGceInstanceOrBuilder() { - if (configCase_ == 1) { - return (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) config_; - } - return com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .getDefaultInstance(); - } + private int poolSize_; - private byte memoizedIsInitialized = -1; + /** + * + * + *
            +           * Optional. The number of boost VMs that the system should keep idle so
            +           * that workstations can be boosted quickly. Defaults to `0`.
            +           * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The poolSize. + */ + @java.lang.Override + public int getPoolSize() { + return poolSize_; + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + /** + * + * + *
            +           * Optional. The number of boost VMs that the system should keep idle so
            +           * that workstations can be boosted quickly. Defaults to `0`.
            +           * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The poolSize to set. + * @return This builder for chaining. + */ + public Builder setPoolSize(int value) { - memoizedIsInitialized = 1; - return true; - } + poolSize_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (configCase_ == 1) { - output.writeMessage( - 1, (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) config_); - } - getUnknownFields().writeTo(output); - } + /** + * + * + *
            +           * Optional. The number of boost VMs that the system should keep idle so
            +           * that workstations can be boosted quickly. Defaults to `0`.
            +           * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearPoolSize() { + bitField0_ = (bitField0_ & ~0x00000020); + poolSize_ = 0; + onChanged(); + return this; + } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig) + } - size = 0; - if (configCase_ == 1) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 1, (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) config_); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig) + private static final com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig + DEFAULT_INSTANCE; - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof com.google.cloud.workstations.v1.WorkstationConfig.Host)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1.WorkstationConfig.Host other = - (com.google.cloud.workstations.v1.WorkstationConfig.Host) obj; + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig(); + } - if (!getConfigCase().equals(other.getConfigCase())) return false; - switch (configCase_) { - case 1: - if (!getGceInstance().equals(other.getGceInstance())) return false; - break; - case 0: - default: - } - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig + getDefaultInstance() { + return DEFAULT_INSTANCE; + } - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; - } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - switch (configCase_) { - case 1: - hash = (37 * hash) + GCE_INSTANCE_FIELD_NUMBER; - hash = (53 * hash) + getGceInstance().hashCode(); - break; - case 0: - default: - } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Host parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Host parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Host parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Host 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.cloud.workstations.v1.WorkstationConfig.Host parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Host parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Host parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Host 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.cloud.workstations.v1.WorkstationConfig.Host parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Host 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.cloud.workstations.v1.WorkstationConfig.Host parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Host 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.cloud.workstations.v1.WorkstationConfig.Host 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; - } - - /** - * - * - *
            -     * Runtime host for a workstation.
            -     * 
            - * - * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.Host} - */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.Host) - com.google.cloud.workstations.v1.WorkstationConfig.HostOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.WorkstationConfig.Host.class, - com.google.cloud.workstations.v1.WorkstationConfig.Host.Builder.class); - } + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public BoostConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; - // Construct using com.google.cloud.workstations.v1.WorkstationConfig.Host.newBuilder() - private Builder() {} + public static com.google.protobuf.Parser parser() { + return PARSER; + } - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - } + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - if (gceInstanceBuilder_ != null) { - gceInstanceBuilder_.clear(); + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } - configCase_ = 0; - config_ = null; - return this; } - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_descriptor; - } + private int bitField0_; + public static final int MACHINE_TYPE_FIELD_NUMBER = 1; - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host getDefaultInstanceForType() { - return com.google.cloud.workstations.v1.WorkstationConfig.Host.getDefaultInstance(); - } + @SuppressWarnings("serial") + private volatile java.lang.Object machineType_ = ""; + /** + * + * + *
            +       * Optional. The type of machine to use for VM instances—for example,
            +       * `"e2-standard-4"`. For more information about machine types that
            +       * Cloud Workstations supports, see the list of
            +       * [available machine
            +       * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +       * 
            + * + * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The machineType. + */ @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host build() { - com.google.cloud.workstations.v1.WorkstationConfig.Host result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + public java.lang.String getMachineType() { + java.lang.Object ref = machineType_; + 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(); + machineType_ = s; + return s; } - return result; } + /** + * + * + *
            +       * Optional. The type of machine to use for VM instances—for example,
            +       * `"e2-standard-4"`. For more information about machine types that
            +       * Cloud Workstations supports, see the list of
            +       * [available machine
            +       * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +       * 
            + * + * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for machineType. + */ @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host buildPartial() { - com.google.cloud.workstations.v1.WorkstationConfig.Host result = - new com.google.cloud.workstations.v1.WorkstationConfig.Host(this); - if (bitField0_ != 0) { - buildPartial0(result); + public com.google.protobuf.ByteString getMachineTypeBytes() { + java.lang.Object ref = machineType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + machineType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - buildPartialOneofs(result); - onBuilt(); - return result; } - private void buildPartial0(com.google.cloud.workstations.v1.WorkstationConfig.Host result) { - int from_bitField0_ = bitField0_; - } + public static final int SERVICE_ACCOUNT_FIELD_NUMBER = 2; - private void buildPartialOneofs( - com.google.cloud.workstations.v1.WorkstationConfig.Host result) { - result.configCase_ = configCase_; - result.config_ = this.config_; - if (configCase_ == 1 && gceInstanceBuilder_ != null) { - result.config_ = gceInstanceBuilder_.build(); - } - } - - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.cloud.workstations.v1.WorkstationConfig.Host) { - return mergeFrom((com.google.cloud.workstations.v1.WorkstationConfig.Host) other); - } else { - super.mergeFrom(other); - return this; - } - } - - public Builder mergeFrom(com.google.cloud.workstations.v1.WorkstationConfig.Host other) { - if (other == com.google.cloud.workstations.v1.WorkstationConfig.Host.getDefaultInstance()) - return this; - switch (other.getConfigCase()) { - case GCE_INSTANCE: - { - mergeGceInstance(other.getGceInstance()); - break; - } - case CONFIG_NOT_SET: - { - break; - } - } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; - } - - @java.lang.Override - public final boolean isInitialized() { - return true; - } - - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - input.readMessage( - internalGetGceInstanceFieldBuilder().getBuilder(), extensionRegistry); - configCase_ = 1; - break; - } // case 10 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; - } - - private int configCase_ = 0; - private java.lang.Object config_; - - public ConfigCase getConfigCase() { - return ConfigCase.forNumber(configCase_); - } - - public Builder clearConfig() { - configCase_ = 0; - config_ = null; - onChanged(); - return this; - } - - private int bitField0_; - - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstanceOrBuilder> - gceInstanceBuilder_; + @SuppressWarnings("serial") + private volatile java.lang.Object serviceAccount_ = ""; /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. The email address of the service account for Cloud
            +       * Workstations VMs created with this configuration. When specified, be
            +       * sure that the service account has `logging.logEntries.create` and
            +       * `monitoring.timeSeries.create` permissions on the project so it can
            +       * write logs out to Cloud Logging. If using a custom container image, the
            +       * service account must have [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image.
            +       *
            +       * If you as the administrator want to be able to `ssh` into the
            +       * underlying VM, you need to set this value to a service account
            +       * for which you have the `iam.serviceAccounts.actAs` permission.
            +       * Conversely, if you don't want anyone to be able to `ssh` into the
            +       * underlying VM, use a service account where no one has that
            +       * permission.
            +       *
            +       * If not set, VMs run with a service account provided by the
            +       * Cloud Workstations service, and the image must be publicly
            +       * accessible.
                    * 
            * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; - * + * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return Whether the gceInstance field is set. + * @return The serviceAccount. */ @java.lang.Override - public boolean hasGceInstance() { - return configCase_ == 1; + public java.lang.String getServiceAccount() { + java.lang.Object ref = serviceAccount_; + 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(); + serviceAccount_ = s; + return s; + } } /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. The email address of the service account for Cloud
            +       * Workstations VMs created with this configuration. When specified, be
            +       * sure that the service account has `logging.logEntries.create` and
            +       * `monitoring.timeSeries.create` permissions on the project so it can
            +       * write logs out to Cloud Logging. If using a custom container image, the
            +       * service account must have [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image.
            +       *
            +       * If you as the administrator want to be able to `ssh` into the
            +       * underlying VM, you need to set this value to a service account
            +       * for which you have the `iam.serviceAccounts.actAs` permission.
            +       * Conversely, if you don't want anyone to be able to `ssh` into the
            +       * underlying VM, use a service account where no one has that
            +       * permission.
            +       *
            +       * If not set, VMs run with a service account provided by the
            +       * Cloud Workstations service, and the image must be publicly
            +       * accessible.
                    * 
            * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; - * + * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The gceInstance. + * @return The bytes for serviceAccount. */ @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance getGceInstance() { - if (gceInstanceBuilder_ == null) { - if (configCase_ == 1) { - return (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) config_; - } - return com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .getDefaultInstance(); + public com.google.protobuf.ByteString getServiceAccountBytes() { + java.lang.Object ref = serviceAccount_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + serviceAccount_ = b; + return b; } else { - if (configCase_ == 1) { - return gceInstanceBuilder_.getMessage(); - } - return com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .getDefaultInstance(); + return (com.google.protobuf.ByteString) ref; } } + public static final int SERVICE_ACCOUNT_SCOPES_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList serviceAccountScopes_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. Scopes to grant to the
            +       * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
                    * 
            * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return A list containing the serviceAccountScopes. */ - public Builder setGceInstance( - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance value) { - if (gceInstanceBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - config_ = value; - onChanged(); - } else { - gceInstanceBuilder_.setMessage(value); - } - configCase_ = 1; - return this; + public com.google.protobuf.ProtocolStringList getServiceAccountScopesList() { + return serviceAccountScopes_; } /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. Scopes to grant to the
            +       * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
                    * 
            * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The count of serviceAccountScopes. */ - public Builder setGceInstance( - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Builder - builderForValue) { - if (gceInstanceBuilder_ == null) { - config_ = builderForValue.build(); - onChanged(); - } else { - gceInstanceBuilder_.setMessage(builderForValue.build()); - } - configCase_ = 1; - return this; + public int getServiceAccountScopesCount() { + return serviceAccountScopes_.size(); } /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. Scopes to grant to the
            +       * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
                    * 
            * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @param index The index of the element to return. + * @return The serviceAccountScopes at the given index. */ - public Builder mergeGceInstance( - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance value) { - if (gceInstanceBuilder_ == null) { - if (configCase_ == 1 - && config_ - != com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .getDefaultInstance()) { - config_ = - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.newBuilder( - (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) - config_) - .mergeFrom(value) - .buildPartial(); - } else { - config_ = value; - } - onChanged(); - } else { - if (configCase_ == 1) { - gceInstanceBuilder_.mergeFrom(value); - } else { - gceInstanceBuilder_.setMessage(value); - } - } - configCase_ = 1; - return this; + public java.lang.String getServiceAccountScopes(int index) { + return serviceAccountScopes_.get(index); } /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. Scopes to grant to the
            +       * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
                    * 
            * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @param index The index of the value to return. + * @return The bytes of the serviceAccountScopes at the given index. */ - public Builder clearGceInstance() { - if (gceInstanceBuilder_ == null) { - if (configCase_ == 1) { - configCase_ = 0; - config_ = null; - onChanged(); - } - } else { - if (configCase_ == 1) { - configCase_ = 0; - config_ = null; - } - gceInstanceBuilder_.clear(); - } - return this; + public com.google.protobuf.ByteString getServiceAccountScopesBytes(int index) { + return serviceAccountScopes_.getByteString(index); } + public static final int TAGS_FIELD_NUMBER = 4; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList tags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. Network tags to add to the Compute Engine VMs backing the
            +       * workstations. This option applies
            +       * [network
            +       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +       * created with this configuration. These network tags enable the creation
            +       * of [firewall
            +       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
                    * 
            * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; - * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the tags. */ - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Builder - getGceInstanceBuilder() { - return internalGetGceInstanceFieldBuilder().getBuilder(); + public com.google.protobuf.ProtocolStringList getTagsList() { + return tags_; } /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. Network tags to add to the Compute Engine VMs backing the
            +       * workstations. This option applies
            +       * [network
            +       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +       * created with this configuration. These network tags enable the creation
            +       * of [firewall
            +       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
                    * 
            * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; - * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of tags. */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstanceOrBuilder - getGceInstanceOrBuilder() { - if ((configCase_ == 1) && (gceInstanceBuilder_ != null)) { - return gceInstanceBuilder_.getMessageOrBuilder(); - } else { - if (configCase_ == 1) { - return (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) config_; - } - return com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .getDefaultInstance(); - } + public int getTagsCount() { + return tags_.size(); } /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. Network tags to add to the Compute Engine VMs backing the
            +       * workstations. This option applies
            +       * [network
            +       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +       * created with this configuration. These network tags enable the creation
            +       * of [firewall
            +       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
                    * 
            * - * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; - * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The tags at the given index. */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstanceOrBuilder> - internalGetGceInstanceFieldBuilder() { - if (gceInstanceBuilder_ == null) { - if (!(configCase_ == 1)) { - config_ = - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance - .getDefaultInstance(); - } - gceInstanceBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstanceOrBuilder>( - (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) config_, - getParentForChildren(), - isClean()); - config_ = null; - } - configCase_ = 1; - onChanged(); - return gceInstanceBuilder_; + public java.lang.String getTags(int index) { + return tags_.get(index); } - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.Host) - } - - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.Host) - private static final com.google.cloud.workstations.v1.WorkstationConfig.Host DEFAULT_INSTANCE; - - static { - DEFAULT_INSTANCE = new com.google.cloud.workstations.v1.WorkstationConfig.Host(); - } + /** + * + * + *
            +       * Optional. Network tags to add to the Compute Engine VMs backing the
            +       * workstations. This option applies
            +       * [network
            +       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +       * created with this configuration. These network tags enable the creation
            +       * of [firewall
            +       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +       * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the tags at the given index. + */ + public com.google.protobuf.ByteString getTagsBytes(int index) { + return tags_.getByteString(index); + } - public static com.google.cloud.workstations.v1.WorkstationConfig.Host getDefaultInstance() { - return DEFAULT_INSTANCE; - } + public static final int POOL_SIZE_FIELD_NUMBER = 5; + private int poolSize_ = 0; - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public Host parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); - } - }; + /** + * + * + *
            +       * Optional. The number of VMs that the system should keep idle so that
            +       * new workstations can be started quickly for new users. Defaults to `0`
            +       * in the API.
            +       * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The poolSize. + */ + @java.lang.Override + public int getPoolSize() { + return poolSize_; + } - public static com.google.protobuf.Parser parser() { - return PARSER; - } + public static final int POOLED_INSTANCES_FIELD_NUMBER = 12; + private int pooledInstances_ = 0; - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + /** + * + * + *
            +       * Output only. Number of instances currently available in the pool for
            +       * faster workstation startup.
            +       * 
            + * + * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The pooledInstances. + */ + @java.lang.Override + public int getPooledInstances() { + return pooledInstances_; + } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + public static final int DISABLE_PUBLIC_IP_ADDRESSES_FIELD_NUMBER = 6; + private boolean disablePublicIpAddresses_ = false; - public interface PersistentDirectoryOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) - com.google.protobuf.MessageOrBuilder { + /** + * + * + *
            +       * Optional. When set to true, disables public IP addresses for VMs. If
            +       * you disable public IP addresses, you must set up Private Google Access
            +       * or Cloud NAT on your network. If you use Private Google Access and you
            +       * use `private.googleapis.com` or `restricted.googleapis.com` for
            +       * Container Registry and Artifact Registry, make sure that you set
            +       * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            +       * Defaults to false (VMs have public IP addresses).
            +       * 
            + * + * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The disablePublicIpAddresses. + */ + @java.lang.Override + public boolean getDisablePublicIpAddresses() { + return disablePublicIpAddresses_; + } - /** - * - * - *
            -     * A PersistentDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - * - * @return Whether the gcePd field is set. - */ - boolean hasGcePd(); - - /** - * - * - *
            -     * A PersistentDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - * - * @return The gcePd. - */ - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk - getGcePd(); - - /** - * - * - *
            -     * A PersistentDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDiskOrBuilder - getGcePdOrBuilder(); - - /** - * - * - *
            -     * Optional. Location of this directory in the running workstation.
            -     * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The mountPath. - */ - java.lang.String getMountPath(); - - /** - * - * - *
            -     * Optional. Location of this directory in the running workstation.
            -     * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for mountPath. - */ - com.google.protobuf.ByteString getMountPathBytes(); - - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.DirectoryTypeCase - getDirectoryTypeCase(); - } - - /** - * - * - *
            -   * A directory to persist across workstation sessions.
            -   * 
            - * - * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory} - */ - public static final class PersistentDirectory extends com.google.protobuf.GeneratedMessage - implements - // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) - PersistentDirectoryOrBuilder { - private static final long serialVersionUID = 0L; - - static { - com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( - com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, - /* major= */ 4, - /* minor= */ 33, - /* patch= */ 2, - /* suffix= */ "", - "PersistentDirectory"); - } - - // Use PersistentDirectory.newBuilder() to construct. - private PersistentDirectory(com.google.protobuf.GeneratedMessage.Builder builder) { - super(builder); - } - - private PersistentDirectory() { - mountPath_ = ""; - } - - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.class, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder.class); - } - - public interface GceRegionalPersistentDiskOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) - com.google.protobuf.MessageOrBuilder { + public static final int ENABLE_NESTED_VIRTUALIZATION_FIELD_NUMBER = 7; + private boolean enableNestedVirtualization_ = false; /** * * *
            -       * Optional. The GB capacity of a persistent home directory for each
            -       * workstation created with this configuration. Must be empty if
            -       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -       * is set.
            +       * Optional. Whether to enable nested virtualization on Cloud Workstations
            +       * VMs created using this workstation configuration.
                    *
            -       * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            -       * Defaults to `200`. If less than `200` GB, the
            -       * [disk_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            -       * must be
            -       * `"pd-balanced"` or `"pd-ssd"`.
            +       * Defaults to false.
            +       *
            +       * Nested virtualization lets you run virtual machine (VM) instances
            +       * inside your workstation. Before enabling nested virtualization,
            +       * consider the following important considerations. Cloud Workstations
            +       * instances are subject to the [same restrictions as Compute Engine
            +       * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +       *
            +       * * **Organization policy**: projects, folders, or
            +       * organizations may be restricted from creating nested VMs if the
            +       * **Disable VM nested virtualization** constraint is enforced in
            +       * the organization policy. For more information, see the
            +       * Compute Engine section,
            +       * [Checking whether nested virtualization is
            +       * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +       * * **Performance**: nested VMs might experience a 10% or greater
            +       * decrease in performance for workloads that are CPU-bound and
            +       * possibly greater than a 10% decrease for workloads that are
            +       * input/output bound.
            +       * * **Machine Type**: nested virtualization can only be enabled on
            +       * workstation configurations that specify a
            +       * [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.machine_type]
            +       * in the N1 or N2 machine series.
                    * 
            * - * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The sizeGb. + * @return The enableNestedVirtualization. */ - int getSizeGb(); + @java.lang.Override + public boolean getEnableNestedVirtualization() { + return enableNestedVirtualization_; + } + + public static final int SHIELDED_INSTANCE_CONFIG_FIELD_NUMBER = 8; + private com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig + shieldedInstanceConfig_; /** * * *
            -       * Optional. Type of file system that the disk should be formatted with.
            -       * The workstation image must support this file system type. Must be empty
            -       * if
            -       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -       * is set. Defaults to `"ext4"`.
            +       * Optional. A set of Compute Engine Shielded instance options.
                    * 
            * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The fsType. + * @return Whether the shieldedInstanceConfig field is set. */ - java.lang.String getFsType(); + @java.lang.Override + public boolean hasShieldedInstanceConfig() { + return ((bitField0_ & 0x00000001) != 0); + } /** * * *
            -       * Optional. Type of file system that the disk should be formatted with.
            -       * The workstation image must support this file system type. Must be empty
            -       * if
            -       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -       * is set. Defaults to `"ext4"`.
            +       * Optional. A set of Compute Engine Shielded instance options.
                    * 
            * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The bytes for fsType. + * @return The shieldedInstanceConfig. */ - com.google.protobuf.ByteString getFsTypeBytes(); + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig + getShieldedInstanceConfig() { + return shieldedInstanceConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.getDefaultInstance() + : shieldedInstanceConfig_; + } /** * * *
            -       * Optional. The [type of the persistent
            -       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -       * home directory. Defaults to `"pd-standard"`.
            +       * Optional. A set of Compute Engine Shielded instance options.
                    * 
            * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The diskType. + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * */ - java.lang.String getDiskType(); + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfigOrBuilder + getShieldedInstanceConfigOrBuilder() { + return shieldedInstanceConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.getDefaultInstance() + : shieldedInstanceConfig_; + } + + public static final int CONFIDENTIAL_INSTANCE_CONFIG_FIELD_NUMBER = 10; + private com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig + confidentialInstanceConfig_; /** * * *
            -       * Optional. The [type of the persistent
            -       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -       * home directory. Defaults to `"pd-standard"`.
            +       * Optional. A set of Compute Engine Confidential VM instance options.
                    * 
            * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The bytes for diskType. + * @return Whether the confidentialInstanceConfig field is set. */ - com.google.protobuf.ByteString getDiskTypeBytes(); + @java.lang.Override + public boolean hasConfidentialInstanceConfig() { + return ((bitField0_ & 0x00000002) != 0); + } /** * * *
            -       * Optional. Name of the snapshot to use as the source for the disk. If
            -       * set,
            -       * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -       * and
            -       * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -       * must be empty.
            +       * Optional. A set of Compute Engine Confidential VM instance options.
                    * 
            * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The sourceSnapshot. + * @return The confidentialInstanceConfig. */ - java.lang.String getSourceSnapshot(); - - /** - * + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig + getConfidentialInstanceConfig() { + return confidentialInstanceConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.getDefaultInstance() + : confidentialInstanceConfig_; + } + + /** + * * *
            -       * Optional. Name of the snapshot to use as the source for the disk. If
            -       * set,
            -       * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -       * and
            -       * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -       * must be empty.
            +       * Optional. A set of Compute Engine Confidential VM instance options.
                    * 
            * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfigOrBuilder + getConfidentialInstanceConfigOrBuilder() { + return confidentialInstanceConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.getDefaultInstance() + : confidentialInstanceConfig_; + } + + public static final int BOOT_DISK_SIZE_GB_FIELD_NUMBER = 9; + private int bootDiskSizeGb_ = 0; + + /** * - * @return The bytes for sourceSnapshot. + * + *
            +       * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +       * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +       * 
            + * + * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bootDiskSizeGb. */ - com.google.protobuf.ByteString getSourceSnapshotBytes(); + @java.lang.Override + public int getBootDiskSizeGb() { + return bootDiskSizeGb_; + } + + public static final int ACCELERATORS_FIELD_NUMBER = 11; + + @SuppressWarnings("serial") + private java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator> + accelerators_; /** * * *
            -       * Optional. Whether the persistent disk should be deleted when the
            -       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -       * Defaults to `DELETE`.
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
                    * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The enum numeric value on the wire for reclaimPolicy. */ - int getReclaimPolicyValue(); + @java.lang.Override + public java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator> + getAcceleratorsList() { + return accelerators_; + } /** * * *
            -       * Optional. Whether the persistent disk should be deleted when the
            -       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -       * Defaults to `DELETE`.
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
                    * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; * + */ + @java.lang.Override + public java.util.List< + ? extends + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + getAcceleratorsOrBuilderList() { + return accelerators_; + } + + /** * - * @return The reclaimPolicy. + * + *
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * */ - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy - getReclaimPolicy(); - } + @java.lang.Override + public int getAcceleratorsCount() { + return accelerators_.size(); + } - /** - * - * - *
            -     * A PersistentDirectory backed by a Compute Engine regional persistent
            -     * disk. The
            -     * [persistent_directories][google.cloud.workstations.v1.WorkstationConfig.persistent_directories]
            -     * field is repeated, but it may contain only one entry. It creates a
            -     * [persistent
            -     * disk](https://cloud.google.com/compute/docs/disks/persistent-disks) that
            -     * mounts to the workstation VM at `/home` when the session starts and
            -     * detaches when the session ends. If this field is empty, workstations
            -     * created with this configuration do not have a persistent home
            -     * directory.
            -     * 
            - * - * Protobuf type {@code - * google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk} - */ - public static final class GceRegionalPersistentDisk extends com.google.protobuf.GeneratedMessage - implements - // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) - GceRegionalPersistentDiskOrBuilder { - private static final long serialVersionUID = 0L; + /** + * + * + *
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + getAccelerators(int index) { + return accelerators_.get(index); + } - static { - com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( - com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, - /* major= */ 4, - /* minor= */ 33, - /* patch= */ 2, - /* suffix= */ "", - "GceRegionalPersistentDisk"); + /** + * + * + *
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder + getAcceleratorsOrBuilder(int index) { + return accelerators_.get(index); } - // Use GceRegionalPersistentDisk.newBuilder() to construct. - private GceRegionalPersistentDisk(com.google.protobuf.GeneratedMessage.Builder builder) { - super(builder); + public static final int BOOST_CONFIGS_FIELD_NUMBER = 25; + + @SuppressWarnings("serial") + private java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig> + boostConfigs_; + + /** + * + * + *
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig> + getBoostConfigsList() { + return boostConfigs_; } - private GceRegionalPersistentDisk() { - fsType_ = ""; - diskType_ = ""; - sourceSnapshot_ = ""; - reclaimPolicy_ = 0; + /** + * + * + *
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder> + getBoostConfigsOrBuilderList() { + return boostConfigs_; } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor; + /** + * + * + *
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getBoostConfigsCount() { + return boostConfigs_.size(); } + /** + * + * + *
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.class, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.Builder.class); + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + getBoostConfigs(int index) { + return boostConfigs_.get(index); } /** * * *
            -       * Value representing what should happen to the disk after the workstation
            -       * is deleted.
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
                    * 
            * - * Protobuf enum {@code - * google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy} + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public enum ReclaimPolicy implements com.google.protobuf.ProtocolMessageEnum { - /** - * - * - *
            -         * Do not use.
            -         * 
            - * - * RECLAIM_POLICY_UNSPECIFIED = 0; - */ - RECLAIM_POLICY_UNSPECIFIED(0), - /** - * - * - *
            -         * Delete the persistent disk when deleting the workstation.
            -         * 
            - * - * DELETE = 1; - */ - DELETE(1), - /** - * - * - *
            -         * Keep the persistent disk when deleting the workstation.
            -         * An administrator must manually delete the disk.
            -         * 
            - * - * RETAIN = 2; - */ - RETAIN(2), - UNRECOGNIZED(-1), - ; + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder + getBoostConfigsOrBuilder(int index) { + return boostConfigs_.get(index); + } - static { - com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( - com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, - /* major= */ 4, - /* minor= */ 33, - /* patch= */ 2, - /* suffix= */ "", - "ReclaimPolicy"); - } + public static final int DISABLE_SSH_FIELD_NUMBER = 13; + private boolean disableSsh_ = false; - /** - * - * - *
            -         * Do not use.
            -         * 
            - * - * RECLAIM_POLICY_UNSPECIFIED = 0; - */ - public static final int RECLAIM_POLICY_UNSPECIFIED_VALUE = 0; - - /** - * - * - *
            -         * Delete the persistent disk when deleting the workstation.
            -         * 
            - * - * DELETE = 1; - */ - public static final int DELETE_VALUE = 1; - - /** - * - * - *
            -         * Keep the persistent disk when deleting the workstation.
            -         * An administrator must manually delete the disk.
            -         * 
            - * - * RETAIN = 2; - */ - public static final int RETAIN_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 ReclaimPolicy 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 ReclaimPolicy forNumber(int value) { - switch (value) { - case 0: - return RECLAIM_POLICY_UNSPECIFIED; - case 1: - return DELETE; - case 2: - return RETAIN; - default: - return null; - } - } - - public static com.google.protobuf.Internal.EnumLiteMap - internalGetValueMap() { - return internalValueMap; - } - - private static final com.google.protobuf.Internal.EnumLiteMap - internalValueMap = - new com.google.protobuf.Internal.EnumLiteMap() { - public ReclaimPolicy findValueByNumber(int number) { - return ReclaimPolicy.forNumber(number); - } - }; - - public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { - if (this == UNRECOGNIZED) { - throw new java.lang.IllegalStateException( - "Can't get the descriptor of an unrecognized enum value."); - } - return getDescriptor().getValues().get(ordinal()); - } + /** + * + * + *
            +       * Optional. Whether to disable SSH access to the VM.
            +       * 
            + * + * bool disable_ssh = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The disableSsh. + */ + @java.lang.Override + public boolean getDisableSsh() { + return disableSsh_; + } - public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { - return getDescriptor(); - } + public static final int VM_TAGS_FIELD_NUMBER = 14; - public static com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDescriptor() - .getEnumTypes() - .get(0); - } + private static final class VmTagsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_VmTagsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } - private static final ReclaimPolicy[] VALUES = values(); + @SuppressWarnings("serial") + private com.google.protobuf.MapField vmTags_; - public static ReclaimPolicy valueOf( - com.google.protobuf.Descriptors.EnumValueDescriptor desc) { - if (desc.getType() != getDescriptor()) { - throw new java.lang.IllegalArgumentException( - "EnumValueDescriptor is not for this type."); - } - if (desc.getIndex() == -1) { - return UNRECOGNIZED; - } - return VALUES[desc.getIndex()]; + private com.google.protobuf.MapField internalGetVmTags() { + if (vmTags_ == null) { + return com.google.protobuf.MapField.emptyMapField(VmTagsDefaultEntryHolder.defaultEntry); } + return vmTags_; + } - private final int value; + public int getVmTagsCount() { + return internalGetVmTags().getMap().size(); + } - private ReclaimPolicy(int value) { - this.value = value; + /** + * + * + *
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
            +       * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsVmTags(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - - // @@protoc_insertion_point(enum_scope:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy) + return internalGetVmTags().getMap().containsKey(key); } - public static final int SIZE_GB_FIELD_NUMBER = 1; - private int sizeGb_ = 0; + /** Use {@link #getVmTagsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getVmTags() { + return getVmTagsMap(); + } /** * * *
            -       * Optional. The GB capacity of a persistent home directory for each
            -       * workstation created with this configuration. Must be empty if
            -       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -       * is set.
            -       *
            -       * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            -       * Defaults to `200`. If less than `200` GB, the
            -       * [disk_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            -       * must be
            -       * `"pd-balanced"` or `"pd-ssd"`.
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
                    * 
            * - * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The sizeGb. + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * */ @java.lang.Override - public int getSizeGb() { - return sizeGb_; + public java.util.Map getVmTagsMap() { + return internalGetVmTags().getMap(); } - public static final int FS_TYPE_FIELD_NUMBER = 2; - - @SuppressWarnings("serial") - private volatile java.lang.Object fsType_ = ""; - /** * * *
            -       * Optional. Type of file system that the disk should be formatted with.
            -       * The workstation image must support this file system type. Must be empty
            -       * if
            -       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -       * is set. Defaults to `"ext4"`.
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
                    * 
            * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The fsType. + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * */ @java.lang.Override - public java.lang.String getFsType() { - java.lang.Object ref = fsType_; - 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(); - fsType_ = s; - return s; + public /* nullable */ java.lang.String getVmTagsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); } + java.util.Map map = internalGetVmTags().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; } /** * * *
            -       * Optional. Type of file system that the disk should be formatted with.
            -       * The workstation image must support this file system type. Must be empty
            -       * if
            -       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -       * is set. Defaults to `"ext4"`.
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
                    * 
            * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for fsType. + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * */ @java.lang.Override - public com.google.protobuf.ByteString getFsTypeBytes() { - java.lang.Object ref = fsType_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - fsType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + public java.lang.String getVmTagsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } + java.util.Map map = internalGetVmTags().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); } - public static final int DISK_TYPE_FIELD_NUMBER = 3; + public static final int STARTUP_SCRIPT_URI_FIELD_NUMBER = 26; @SuppressWarnings("serial") - private volatile java.lang.Object diskType_ = ""; + private volatile java.lang.Object startupScriptUri_ = ""; /** * * *
            -       * Optional. The [type of the persistent
            -       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -       * home directory. Defaults to `"pd-standard"`.
            +       * Optional. Link to the startup script stored in Cloud Storage. This
            +       * script will be run on the host workstation VM when the VM is created.
            +       * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +       * specifying a startup script, the service account must have [Permission
            +       * to access the bucket and script file in Cloud
            +       * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +       * Otherwise, the script must be publicly accessible.
            +       * Note that the service regularly updates the OS version of the host VM,
            +       * and it is the responsibility of the user to ensure the script stays
            +       * compatible with the OS version.
                    * 
            * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The diskType. + * @return The startupScriptUri. */ @java.lang.Override - public java.lang.String getDiskType() { - java.lang.Object ref = diskType_; + public java.lang.String getStartupScriptUri() { + java.lang.Object ref = startupScriptUri_; 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(); - diskType_ = s; + startupScriptUri_ = s; return s; } } @@ -6498,142 +6409,152 @@ public java.lang.String getDiskType() { * * *
            -       * Optional. The [type of the persistent
            -       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -       * home directory. Defaults to `"pd-standard"`.
            +       * Optional. Link to the startup script stored in Cloud Storage. This
            +       * script will be run on the host workstation VM when the VM is created.
            +       * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +       * specifying a startup script, the service account must have [Permission
            +       * to access the bucket and script file in Cloud
            +       * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +       * Otherwise, the script must be publicly accessible.
            +       * Note that the service regularly updates the OS version of the host VM,
            +       * and it is the responsibility of the user to ensure the script stays
            +       * compatible with the OS version.
                    * 
            * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The bytes for diskType. + * @return The bytes for startupScriptUri. */ @java.lang.Override - public com.google.protobuf.ByteString getDiskTypeBytes() { - java.lang.Object ref = diskType_; + public com.google.protobuf.ByteString getStartupScriptUriBytes() { + java.lang.Object ref = startupScriptUri_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - diskType_ = b; + startupScriptUri_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } - public static final int SOURCE_SNAPSHOT_FIELD_NUMBER = 5; + public static final int INSTANCE_METADATA_FIELD_NUMBER = 27; + + private static final class InstanceMetadataDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_InstanceMetadataEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } @SuppressWarnings("serial") - private volatile java.lang.Object sourceSnapshot_ = ""; + private com.google.protobuf.MapField instanceMetadata_; + + private com.google.protobuf.MapField + internalGetInstanceMetadata() { + if (instanceMetadata_ == null) { + return com.google.protobuf.MapField.emptyMapField( + InstanceMetadataDefaultEntryHolder.defaultEntry); + } + return instanceMetadata_; + } + + public int getInstanceMetadataCount() { + return internalGetInstanceMetadata().getMap().size(); + } /** * * *
            -       * Optional. Name of the snapshot to use as the source for the disk. If
            -       * set,
            -       * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -       * and
            -       * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -       * must be empty.
            +       * Optional. Custom metadata to apply to Compute Engine instances.
                    * 
            * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The sourceSnapshot. + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * */ @java.lang.Override - public java.lang.String getSourceSnapshot() { - java.lang.Object ref = sourceSnapshot_; - 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(); - sourceSnapshot_ = s; - return s; + public boolean containsInstanceMetadata(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } + return internalGetInstanceMetadata().getMap().containsKey(key); + } + + /** Use {@link #getInstanceMetadataMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getInstanceMetadata() { + return getInstanceMetadataMap(); } /** * * *
            -       * Optional. Name of the snapshot to use as the source for the disk. If
            -       * set,
            -       * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -       * and
            -       * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -       * must be empty.
            +       * Optional. Custom metadata to apply to Compute Engine instances.
                    * 
            * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for sourceSnapshot. + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * */ @java.lang.Override - public com.google.protobuf.ByteString getSourceSnapshotBytes() { - java.lang.Object ref = sourceSnapshot_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - sourceSnapshot_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public java.util.Map getInstanceMetadataMap() { + return internalGetInstanceMetadata().getMap(); } - public static final int RECLAIM_POLICY_FIELD_NUMBER = 4; - private int reclaimPolicy_ = 0; - /** * * *
            -       * Optional. Whether the persistent disk should be deleted when the
            -       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -       * Defaults to `DELETE`.
            +       * Optional. Custom metadata to apply to Compute Engine instances.
                    * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The enum numeric value on the wire for reclaimPolicy. */ @java.lang.Override - public int getReclaimPolicyValue() { - return reclaimPolicy_; + public /* nullable */ java.lang.String getInstanceMetadataOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = + internalGetInstanceMetadata().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; } /** * * *
            -       * Optional. Whether the persistent disk should be deleted when the
            -       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -       * Defaults to `DELETE`.
            +       * Optional. Custom metadata to apply to Compute Engine instances.
                    * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The reclaimPolicy. */ @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy - getReclaimPolicy() { - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy - result = - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy.forNumber(reclaimPolicy_); - return result == null - ? com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy.UNRECOGNIZED - : result; + public java.lang.String getInstanceMetadataOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = + internalGetInstanceMetadata().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); } private byte memoizedIsInitialized = -1; @@ -6650,24 +6571,59 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (sizeGb_ != 0) { - output.writeInt32(1, sizeGb_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(machineType_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, machineType_); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fsType_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, fsType_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serviceAccount_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, serviceAccount_); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(diskType_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 3, diskType_); + for (int i = 0; i < serviceAccountScopes_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString( + output, 3, serviceAccountScopes_.getRaw(i)); } - if (reclaimPolicy_ - != com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy.RECLAIM_POLICY_UNSPECIFIED - .getNumber()) { - output.writeEnum(4, reclaimPolicy_); + for (int i = 0; i < tags_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString(output, 4, tags_.getRaw(i)); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 5, sourceSnapshot_); + if (poolSize_ != 0) { + output.writeInt32(5, poolSize_); } + if (disablePublicIpAddresses_ != false) { + output.writeBool(6, disablePublicIpAddresses_); + } + if (enableNestedVirtualization_ != false) { + output.writeBool(7, enableNestedVirtualization_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(8, getShieldedInstanceConfig()); + } + if (bootDiskSizeGb_ != 0) { + output.writeInt32(9, bootDiskSizeGb_); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(10, getConfidentialInstanceConfig()); + } + for (int i = 0; i < accelerators_.size(); i++) { + output.writeMessage(11, accelerators_.get(i)); + } + if (pooledInstances_ != 0) { + output.writeInt32(12, pooledInstances_); + } + if (disableSsh_ != false) { + output.writeBool(13, disableSsh_); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetVmTags(), VmTagsDefaultEntryHolder.defaultEntry, 14); + for (int i = 0; i < boostConfigs_.size(); i++) { + output.writeMessage(25, boostConfigs_.get(i)); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(startupScriptUri_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 26, startupScriptUri_); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, + internalGetInstanceMetadata(), + InstanceMetadataDefaultEntryHolder.defaultEntry, + 27); getUnknownFields().writeTo(output); } @@ -6677,23 +6633,88 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (sizeGb_ != 0) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, sizeGb_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(machineType_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, machineType_); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fsType_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(2, fsType_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serviceAccount_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, serviceAccount_); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(diskType_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(3, diskType_); + { + int dataSize = 0; + for (int i = 0; i < serviceAccountScopes_.size(); i++) { + dataSize += computeStringSizeNoTag(serviceAccountScopes_.getRaw(i)); + } + size += dataSize; + size += 1 * getServiceAccountScopesList().size(); } - if (reclaimPolicy_ - != com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy.RECLAIM_POLICY_UNSPECIFIED - .getNumber()) { - size += com.google.protobuf.CodedOutputStream.computeEnumSize(4, reclaimPolicy_); + { + int dataSize = 0; + for (int i = 0; i < tags_.size(); i++) { + dataSize += computeStringSizeNoTag(tags_.getRaw(i)); + } + size += dataSize; + size += 1 * getTagsList().size(); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(5, sourceSnapshot_); + if (poolSize_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(5, poolSize_); + } + if (disablePublicIpAddresses_ != false) { + size += + com.google.protobuf.CodedOutputStream.computeBoolSize(6, disablePublicIpAddresses_); + } + if (enableNestedVirtualization_ != false) { + size += + com.google.protobuf.CodedOutputStream.computeBoolSize(7, enableNestedVirtualization_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 8, getShieldedInstanceConfig()); + } + if (bootDiskSizeGb_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(9, bootDiskSizeGb_); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 10, getConfidentialInstanceConfig()); + } + for (int i = 0; i < accelerators_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(11, accelerators_.get(i)); + } + if (pooledInstances_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(12, pooledInstances_); + } + if (disableSsh_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(13, disableSsh_); + } + for (java.util.Map.Entry entry : + internalGetVmTags().getMap().entrySet()) { + com.google.protobuf.MapEntry vmTags__ = + VmTagsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, vmTags__); + } + for (int i = 0; i < boostConfigs_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(25, boostConfigs_.get(i)); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(startupScriptUri_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(26, startupScriptUri_); + } + for (java.util.Map.Entry entry : + internalGetInstanceMetadata().getMap().entrySet()) { + com.google.protobuf.MapEntry instanceMetadata__ = + InstanceMetadataDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(27, instanceMetadata__); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; @@ -6705,24 +6726,38 @@ public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } - if (!(obj - instanceof - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk)) { + if (!(obj instanceof com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance)) { return super.equals(obj); } - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - other = - (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - obj; + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance other = + (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) obj; - if (getSizeGb() != other.getSizeGb()) return false; - if (!getFsType().equals(other.getFsType())) return false; - if (!getDiskType().equals(other.getDiskType())) return false; - if (!getSourceSnapshot().equals(other.getSourceSnapshot())) return false; - if (reclaimPolicy_ != other.reclaimPolicy_) return false; + if (!getMachineType().equals(other.getMachineType())) return false; + if (!getServiceAccount().equals(other.getServiceAccount())) return false; + if (!getServiceAccountScopesList().equals(other.getServiceAccountScopesList())) + return false; + if (!getTagsList().equals(other.getTagsList())) return false; + if (getPoolSize() != other.getPoolSize()) return false; + if (getPooledInstances() != other.getPooledInstances()) return false; + if (getDisablePublicIpAddresses() != other.getDisablePublicIpAddresses()) return false; + if (getEnableNestedVirtualization() != other.getEnableNestedVirtualization()) return false; + if (hasShieldedInstanceConfig() != other.hasShieldedInstanceConfig()) return false; + if (hasShieldedInstanceConfig()) { + if (!getShieldedInstanceConfig().equals(other.getShieldedInstanceConfig())) return false; + } + if (hasConfidentialInstanceConfig() != other.hasConfidentialInstanceConfig()) return false; + if (hasConfidentialInstanceConfig()) { + if (!getConfidentialInstanceConfig().equals(other.getConfidentialInstanceConfig())) + return false; + } + if (getBootDiskSizeGb() != other.getBootDiskSizeGb()) return false; + if (!getAcceleratorsList().equals(other.getAcceleratorsList())) return false; + if (!getBoostConfigsList().equals(other.getBoostConfigsList())) return false; + if (getDisableSsh() != other.getDisableSsh()) return false; + if (!internalGetVmTags().equals(other.internalGetVmTags())) return false; + if (!getStartupScriptUri().equals(other.getStartupScriptUri())) return false; + if (!internalGetInstanceMetadata().equals(other.internalGetInstanceMetadata())) + return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -6734,89 +6769,116 @@ public int hashCode() { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + SIZE_GB_FIELD_NUMBER; - hash = (53 * hash) + getSizeGb(); - hash = (37 * hash) + FS_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getFsType().hashCode(); - hash = (37 * hash) + DISK_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getDiskType().hashCode(); - hash = (37 * hash) + SOURCE_SNAPSHOT_FIELD_NUMBER; - hash = (53 * hash) + getSourceSnapshot().hashCode(); - hash = (37 * hash) + RECLAIM_POLICY_FIELD_NUMBER; - hash = (53 * hash) + reclaimPolicy_; - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom(com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); + hash = (37 * hash) + MACHINE_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getMachineType().hashCode(); + hash = (37 * hash) + SERVICE_ACCOUNT_FIELD_NUMBER; + hash = (53 * hash) + getServiceAccount().hashCode(); + if (getServiceAccountScopesCount() > 0) { + hash = (37 * hash) + SERVICE_ACCOUNT_SCOPES_FIELD_NUMBER; + hash = (53 * hash) + getServiceAccountScopesList().hashCode(); + } + if (getTagsCount() > 0) { + hash = (37 * hash) + TAGS_FIELD_NUMBER; + hash = (53 * hash) + getTagsList().hashCode(); + } + hash = (37 * hash) + POOL_SIZE_FIELD_NUMBER; + hash = (53 * hash) + getPoolSize(); + hash = (37 * hash) + POOLED_INSTANCES_FIELD_NUMBER; + hash = (53 * hash) + getPooledInstances(); + hash = (37 * hash) + DISABLE_PUBLIC_IP_ADDRESSES_FIELD_NUMBER; + hash = + (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDisablePublicIpAddresses()); + hash = (37 * hash) + ENABLE_NESTED_VIRTUALIZATION_FIELD_NUMBER; + hash = + (53 * hash) + com.google.protobuf.Internal.hashBoolean(getEnableNestedVirtualization()); + if (hasShieldedInstanceConfig()) { + hash = (37 * hash) + SHIELDED_INSTANCE_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getShieldedInstanceConfig().hashCode(); + } + if (hasConfidentialInstanceConfig()) { + hash = (37 * hash) + CONFIDENTIAL_INSTANCE_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getConfidentialInstanceConfig().hashCode(); + } + hash = (37 * hash) + BOOT_DISK_SIZE_GB_FIELD_NUMBER; + hash = (53 * hash) + getBootDiskSizeGb(); + if (getAcceleratorsCount() > 0) { + hash = (37 * hash) + ACCELERATORS_FIELD_NUMBER; + hash = (53 * hash) + getAcceleratorsList().hashCode(); + } + if (getBoostConfigsCount() > 0) { + hash = (37 * hash) + BOOST_CONFIGS_FIELD_NUMBER; + hash = (53 * hash) + getBoostConfigsList().hashCode(); + } + hash = (37 * hash) + DISABLE_SSH_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDisableSsh()); + if (!internalGetVmTags().getMap().isEmpty()) { + hash = (37 * hash) + VM_TAGS_FIELD_NUMBER; + hash = (53 * hash) + internalGetVmTags().hashCode(); + } + hash = (37 * hash) + STARTUP_SCRIPT_URI_FIELD_NUMBER; + hash = (53 * hash) + getStartupScriptUri().hashCode(); + if (!internalGetInstanceMetadata().getMap().isEmpty()) { + hash = (37 * hash) + INSTANCE_METADATA_FIELD_NUMBER; + hash = (53 * hash) + internalGetInstanceMetadata().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance 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.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom(java.io.InputStream input) throws java.io.IOException { + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( + java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom( - java.io.InputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance 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.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) @@ -6825,18 +6887,15 @@ public int hashCode() { PARSER, input, extensionRegistry); } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { return com.google.protobuf.GeneratedMessage.parseWithIOException( PARSER, input, extensionRegistry); } @@ -6851,9 +6910,7 @@ public static Builder newBuilder() { } public static Builder newBuilder( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - prototype) { + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @@ -6873,85 +6930,139 @@ protected Builder newBuilderForType( * * *
            -       * A PersistentDirectory backed by a Compute Engine regional persistent
            -       * disk. The
            -       * [persistent_directories][google.cloud.workstations.v1.WorkstationConfig.persistent_directories]
            -       * field is repeated, but it may contain only one entry. It creates a
            -       * [persistent
            -       * disk](https://cloud.google.com/compute/docs/disks/persistent-disks) that
            -       * mounts to the workstation VM at `/home` when the session starts and
            -       * detaches when the session ends. If this field is empty, workstations
            -       * created with this configuration do not have a persistent home
            -       * directory.
            +       * A runtime using a Compute Engine instance.
                    * 
            * - * Protobuf type {@code - * google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk} + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance} */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDiskOrBuilder { + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstanceOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor; + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_descriptor; + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 14: + return internalGetVmTags(); + case 27: + return internalGetInstanceMetadata(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor + internalGetMutableMapFieldReflection(int number) { + switch (number) { + case 14: + return internalGetMutableVmTags(); + case 27: + return internalGetMutableInstanceMetadata(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } } @java.lang.Override protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_fieldAccessorTable + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.class, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.Builder.class); + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.class, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Builder + .class); } // Construct using - // com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.newBuilder() - private Builder() {} + // com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetShieldedInstanceConfigFieldBuilder(); + internalGetConfidentialInstanceConfigFieldBuilder(); + internalGetAcceleratorsFieldBuilder(); + internalGetBoostConfigsFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); bitField0_ = 0; - sizeGb_ = 0; - fsType_ = ""; - diskType_ = ""; - sourceSnapshot_ = ""; - reclaimPolicy_ = 0; + machineType_ = ""; + serviceAccount_ = ""; + serviceAccountScopes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + tags_ = com.google.protobuf.LazyStringArrayList.emptyList(); + poolSize_ = 0; + pooledInstances_ = 0; + disablePublicIpAddresses_ = false; + enableNestedVirtualization_ = false; + shieldedInstanceConfig_ = null; + if (shieldedInstanceConfigBuilder_ != null) { + shieldedInstanceConfigBuilder_.dispose(); + shieldedInstanceConfigBuilder_ = null; + } + confidentialInstanceConfig_ = null; + if (confidentialInstanceConfigBuilder_ != null) { + confidentialInstanceConfigBuilder_.dispose(); + confidentialInstanceConfigBuilder_ = null; + } + bootDiskSizeGb_ = 0; + if (acceleratorsBuilder_ == null) { + accelerators_ = java.util.Collections.emptyList(); + } else { + accelerators_ = null; + acceleratorsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000800); + if (boostConfigsBuilder_ == null) { + boostConfigs_ = java.util.Collections.emptyList(); + } else { + boostConfigs_ = null; + boostConfigsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00001000); + disableSsh_ = false; + internalGetMutableVmTags().clear(); + startupScriptUri_ = ""; + internalGetMutableInstanceMetadata().clear(); return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor; + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_descriptor; } @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance getDefaultInstanceForType() { - return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance(); + return com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .getDefaultInstance(); } @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - build() { - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - result = buildPartial(); + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance build() { + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance result = + buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -6959,14 +7070,10 @@ public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { } @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - buildPartial() { - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - result = - new com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk(this); + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance buildPartial() { + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance result = + new com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance(this); + buildPartialRepeatedFields(result); if (bitField0_ != 0) { buildPartial0(result); } @@ -6974,38 +7081,98 @@ public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return result; } + private void buildPartialRepeatedFields( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance result) { + if (acceleratorsBuilder_ == null) { + if (((bitField0_ & 0x00000800) != 0)) { + accelerators_ = java.util.Collections.unmodifiableList(accelerators_); + bitField0_ = (bitField0_ & ~0x00000800); + } + result.accelerators_ = accelerators_; + } else { + result.accelerators_ = acceleratorsBuilder_.build(); + } + if (boostConfigsBuilder_ == null) { + if (((bitField0_ & 0x00001000) != 0)) { + boostConfigs_ = java.util.Collections.unmodifiableList(boostConfigs_); + bitField0_ = (bitField0_ & ~0x00001000); + } + result.boostConfigs_ = boostConfigs_; + } else { + result.boostConfigs_ = boostConfigsBuilder_.build(); + } + } + private void buildPartial0( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - result) { + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance result) { int from_bitField0_ = bitField0_; if (((from_bitField0_ & 0x00000001) != 0)) { - result.sizeGb_ = sizeGb_; + result.machineType_ = machineType_; } if (((from_bitField0_ & 0x00000002) != 0)) { - result.fsType_ = fsType_; + result.serviceAccount_ = serviceAccount_; } if (((from_bitField0_ & 0x00000004) != 0)) { - result.diskType_ = diskType_; + serviceAccountScopes_.makeImmutable(); + result.serviceAccountScopes_ = serviceAccountScopes_; } if (((from_bitField0_ & 0x00000008) != 0)) { - result.sourceSnapshot_ = sourceSnapshot_; + tags_.makeImmutable(); + result.tags_ = tags_; } if (((from_bitField0_ & 0x00000010) != 0)) { - result.reclaimPolicy_ = reclaimPolicy_; + result.poolSize_ = poolSize_; } - } - - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other - instanceof - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) { - return mergeFrom( - (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - other); + if (((from_bitField0_ & 0x00000020) != 0)) { + result.pooledInstances_ = pooledInstances_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.disablePublicIpAddresses_ = disablePublicIpAddresses_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.enableNestedVirtualization_ = enableNestedVirtualization_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000100) != 0)) { + result.shieldedInstanceConfig_ = + shieldedInstanceConfigBuilder_ == null + ? shieldedInstanceConfig_ + : shieldedInstanceConfigBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.confidentialInstanceConfig_ = + confidentialInstanceConfigBuilder_ == null + ? confidentialInstanceConfig_ + : confidentialInstanceConfigBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.bootDiskSizeGb_ = bootDiskSizeGb_; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.disableSsh_ = disableSsh_; + } + if (((from_bitField0_ & 0x00004000) != 0)) { + result.vmTags_ = internalGetVmTags(); + result.vmTags_.makeImmutable(); + } + if (((from_bitField0_ & 0x00008000) != 0)) { + result.startupScriptUri_ = startupScriptUri_; + } + if (((from_bitField0_ & 0x00010000) != 0)) { + result.instanceMetadata_ = internalGetInstanceMetadata(); + result.instanceMetadata_.makeImmutable(); + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) { + return mergeFrom( + (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) other); } else { super.mergeFrom(other); return this; @@ -7013,33 +7180,127 @@ public Builder mergeFrom(com.google.protobuf.Message other) { } public Builder mergeFrom( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - other) { + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance other) { if (other - == com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance()) return this; - if (other.getSizeGb() != 0) { - setSizeGb(other.getSizeGb()); + == com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .getDefaultInstance()) return this; + if (!other.getMachineType().isEmpty()) { + machineType_ = other.machineType_; + bitField0_ |= 0x00000001; + onChanged(); } - if (!other.getFsType().isEmpty()) { - fsType_ = other.fsType_; + if (!other.getServiceAccount().isEmpty()) { + serviceAccount_ = other.serviceAccount_; bitField0_ |= 0x00000002; onChanged(); } - if (!other.getDiskType().isEmpty()) { - diskType_ = other.diskType_; - bitField0_ |= 0x00000004; + if (!other.serviceAccountScopes_.isEmpty()) { + if (serviceAccountScopes_.isEmpty()) { + serviceAccountScopes_ = other.serviceAccountScopes_; + bitField0_ |= 0x00000004; + } else { + ensureServiceAccountScopesIsMutable(); + serviceAccountScopes_.addAll(other.serviceAccountScopes_); + } onChanged(); } - if (!other.getSourceSnapshot().isEmpty()) { - sourceSnapshot_ = other.sourceSnapshot_; - bitField0_ |= 0x00000008; + if (!other.tags_.isEmpty()) { + if (tags_.isEmpty()) { + tags_ = other.tags_; + bitField0_ |= 0x00000008; + } else { + ensureTagsIsMutable(); + tags_.addAll(other.tags_); + } onChanged(); } - if (other.reclaimPolicy_ != 0) { - setReclaimPolicyValue(other.getReclaimPolicyValue()); + if (other.getPoolSize() != 0) { + setPoolSize(other.getPoolSize()); + } + if (other.getPooledInstances() != 0) { + setPooledInstances(other.getPooledInstances()); + } + if (other.getDisablePublicIpAddresses() != false) { + setDisablePublicIpAddresses(other.getDisablePublicIpAddresses()); + } + if (other.getEnableNestedVirtualization() != false) { + setEnableNestedVirtualization(other.getEnableNestedVirtualization()); } + if (other.hasShieldedInstanceConfig()) { + mergeShieldedInstanceConfig(other.getShieldedInstanceConfig()); + } + if (other.hasConfidentialInstanceConfig()) { + mergeConfidentialInstanceConfig(other.getConfidentialInstanceConfig()); + } + if (other.getBootDiskSizeGb() != 0) { + setBootDiskSizeGb(other.getBootDiskSizeGb()); + } + if (acceleratorsBuilder_ == null) { + if (!other.accelerators_.isEmpty()) { + if (accelerators_.isEmpty()) { + accelerators_ = other.accelerators_; + bitField0_ = (bitField0_ & ~0x00000800); + } else { + ensureAcceleratorsIsMutable(); + accelerators_.addAll(other.accelerators_); + } + onChanged(); + } + } else { + if (!other.accelerators_.isEmpty()) { + if (acceleratorsBuilder_.isEmpty()) { + acceleratorsBuilder_.dispose(); + acceleratorsBuilder_ = null; + accelerators_ = other.accelerators_; + bitField0_ = (bitField0_ & ~0x00000800); + acceleratorsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetAcceleratorsFieldBuilder() + : null; + } else { + acceleratorsBuilder_.addAllMessages(other.accelerators_); + } + } + } + if (boostConfigsBuilder_ == null) { + if (!other.boostConfigs_.isEmpty()) { + if (boostConfigs_.isEmpty()) { + boostConfigs_ = other.boostConfigs_; + bitField0_ = (bitField0_ & ~0x00001000); + } else { + ensureBoostConfigsIsMutable(); + boostConfigs_.addAll(other.boostConfigs_); + } + onChanged(); + } + } else { + if (!other.boostConfigs_.isEmpty()) { + if (boostConfigsBuilder_.isEmpty()) { + boostConfigsBuilder_.dispose(); + boostConfigsBuilder_ = null; + boostConfigs_ = other.boostConfigs_; + bitField0_ = (bitField0_ & ~0x00001000); + boostConfigsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetBoostConfigsFieldBuilder() + : null; + } else { + boostConfigsBuilder_.addAllMessages(other.boostConfigs_); + } + } + } + if (other.getDisableSsh() != false) { + setDisableSsh(other.getDisableSsh()); + } + internalGetMutableVmTags().mergeFrom(other.internalGetVmTags()); + bitField0_ |= 0x00004000; + if (!other.getStartupScriptUri().isEmpty()) { + startupScriptUri_ = other.startupScriptUri_; + bitField0_ |= 0x00008000; + onChanged(); + } + internalGetMutableInstanceMetadata().mergeFrom(other.internalGetInstanceMetadata()); + bitField0_ |= 0x00010000; this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -7066,36 +7327,147 @@ public Builder mergeFrom( case 0: done = true; break; - case 8: + case 10: { - sizeGb_ = input.readInt32(); + machineType_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000001; break; - } // case 8 + } // case 10 case 18: { - fsType_ = input.readStringRequireUtf8(); + serviceAccount_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000002; break; } // case 18 case 26: { - diskType_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000004; + java.lang.String s = input.readStringRequireUtf8(); + ensureServiceAccountScopesIsMutable(); + serviceAccountScopes_.add(s); break; } // case 26 - case 32: + case 34: { - reclaimPolicy_ = input.readEnum(); + java.lang.String s = input.readStringRequireUtf8(); + ensureTagsIsMutable(); + tags_.add(s); + break; + } // case 34 + case 40: + { + poolSize_ = input.readInt32(); bitField0_ |= 0x00000010; break; - } // case 32 - case 42: + } // case 40 + case 48: { - sourceSnapshot_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000008; + disablePublicIpAddresses_ = input.readBool(); + bitField0_ |= 0x00000040; break; - } // case 42 + } // case 48 + case 56: + { + enableNestedVirtualization_ = input.readBool(); + bitField0_ |= 0x00000080; + break; + } // case 56 + case 66: + { + input.readMessage( + internalGetShieldedInstanceConfigFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000100; + break; + } // case 66 + case 72: + { + bootDiskSizeGb_ = input.readInt32(); + bitField0_ |= 0x00000400; + break; + } // case 72 + case 82: + { + input.readMessage( + internalGetConfidentialInstanceConfigFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000200; + break; + } // case 82 + case 90: + { + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + m = + input.readMessage( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator.parser(), + extensionRegistry); + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.add(m); + } else { + acceleratorsBuilder_.addMessage(m); + } + break; + } // case 90 + case 96: + { + pooledInstances_ = input.readInt32(); + bitField0_ |= 0x00000020; + break; + } // case 96 + case 104: + { + disableSsh_ = input.readBool(); + bitField0_ |= 0x00002000; + break; + } // case 104 + case 114: + { + com.google.protobuf.MapEntry vmTags__ = + input.readMessage( + VmTagsDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableVmTags() + .getMutableMap() + .put(vmTags__.getKey(), vmTags__.getValue()); + bitField0_ |= 0x00004000; + break; + } // case 114 + case 202: + { + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + m = + input.readMessage( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig.parser(), + extensionRegistry); + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.add(m); + } else { + boostConfigsBuilder_.addMessage(m); + } + break; + } // case 202 + case 210: + { + startupScriptUri_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00008000; + break; + } // case 210 + case 218: + { + com.google.protobuf.MapEntry + instanceMetadata__ = + input.readMessage( + InstanceMetadataDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableInstanceMetadata() + .getMutableMap() + .put(instanceMetadata__.getKey(), instanceMetadata__.getValue()); + bitField0_ |= 0x00010000; + break; + } // case 218 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -7115,139 +7487,56 @@ public Builder mergeFrom( private int bitField0_; - private int sizeGb_; + private java.lang.Object machineType_ = ""; /** * * *
            -         * Optional. The GB capacity of a persistent home directory for each
            -         * workstation created with this configuration. Must be empty if
            -         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set.
            -         *
            -         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            -         * Defaults to `200`. If less than `200` GB, the
            -         * [disk_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            -         * must be
            -         * `"pd-balanced"` or `"pd-ssd"`.
            +         * Optional. The type of machine to use for VM instances—for example,
            +         * `"e2-standard-4"`. For more information about machine types that
            +         * Cloud Workstations supports, see the list of
            +         * [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
                      * 
            * - * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The sizeGb. + * @return The machineType. */ - @java.lang.Override - public int getSizeGb() { - return sizeGb_; + public java.lang.String getMachineType() { + java.lang.Object ref = machineType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + machineType_ = s; + return s; + } else { + return (java.lang.String) ref; + } } /** * * *
            -         * Optional. The GB capacity of a persistent home directory for each
            -         * workstation created with this configuration. Must be empty if
            -         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set.
            -         *
            -         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            -         * Defaults to `200`. If less than `200` GB, the
            -         * [disk_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            -         * must be
            -         * `"pd-balanced"` or `"pd-ssd"`.
            +         * Optional. The type of machine to use for VM instances—for example,
            +         * `"e2-standard-4"`. For more information about machine types that
            +         * Cloud Workstations supports, see the list of
            +         * [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
                      * 
            * - * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The sizeGb to set. - * @return This builder for chaining. - */ - public Builder setSizeGb(int value) { - - sizeGb_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - - /** - * - * - *
            -         * Optional. The GB capacity of a persistent home directory for each
            -         * workstation created with this configuration. Must be empty if
            -         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set.
            -         *
            -         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            -         * Defaults to `200`. If less than `200` GB, the
            -         * [disk_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            -         * must be
            -         * `"pd-balanced"` or `"pd-ssd"`.
            -         * 
            - * - * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearSizeGb() { - bitField0_ = (bitField0_ & ~0x00000001); - sizeGb_ = 0; - onChanged(); - return this; - } - - private java.lang.Object fsType_ = ""; - - /** - * - * - *
            -         * Optional. Type of file system that the disk should be formatted with.
            -         * The workstation image must support this file system type. Must be empty
            -         * if
            -         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set. Defaults to `"ext4"`.
            -         * 
            - * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The fsType. - */ - public java.lang.String getFsType() { - java.lang.Object ref = fsType_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - fsType_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - - /** - * - * - *
            -         * Optional. Type of file system that the disk should be formatted with.
            -         * The workstation image must support this file system type. Must be empty
            -         * if
            -         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set. Defaults to `"ext4"`.
            -         * 
            - * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for fsType. + * @return The bytes for machineType. */ - public com.google.protobuf.ByteString getFsTypeBytes() { - java.lang.Object ref = fsType_; + public com.google.protobuf.ByteString getMachineTypeBytes() { + java.lang.Object ref = machineType_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - fsType_ = b; + machineType_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; @@ -7258,24 +7547,24 @@ public com.google.protobuf.ByteString getFsTypeBytes() { * * *
            -         * Optional. Type of file system that the disk should be formatted with.
            -         * The workstation image must support this file system type. Must be empty
            -         * if
            -         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set. Defaults to `"ext4"`.
            +         * Optional. The type of machine to use for VM instances—for example,
            +         * `"e2-standard-4"`. For more information about machine types that
            +         * Cloud Workstations supports, see the list of
            +         * [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
                      * 
            * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The fsType to set. + * @param value The machineType to set. * @return This builder for chaining. */ - public Builder setFsType(java.lang.String value) { + public Builder setMachineType(java.lang.String value) { if (value == null) { throw new NullPointerException(); } - fsType_ = value; - bitField0_ |= 0x00000002; + machineType_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -7284,20 +7573,20 @@ public Builder setFsType(java.lang.String value) { * * *
            -         * Optional. Type of file system that the disk should be formatted with.
            -         * The workstation image must support this file system type. Must be empty
            -         * if
            -         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set. Defaults to `"ext4"`.
            +         * Optional. The type of machine to use for VM instances—for example,
            +         * `"e2-standard-4"`. For more information about machine types that
            +         * Cloud Workstations supports, see the list of
            +         * [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
                      * 
            * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; * * @return This builder for chaining. */ - public Builder clearFsType() { - fsType_ = getDefaultInstance().getFsType(); - bitField0_ = (bitField0_ & ~0x00000002); + public Builder clearMachineType() { + machineType_ = getDefaultInstance().getMachineType(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } @@ -7306,50 +7595,66 @@ public Builder clearFsType() { * * *
            -         * Optional. Type of file system that the disk should be formatted with.
            -         * The workstation image must support this file system type. Must be empty
            -         * if
            -         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set. Defaults to `"ext4"`.
            +         * Optional. The type of machine to use for VM instances—for example,
            +         * `"e2-standard-4"`. For more information about machine types that
            +         * Cloud Workstations supports, see the list of
            +         * [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
                      * 
            * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The bytes for fsType to set. + * @param value The bytes for machineType to set. * @return This builder for chaining. */ - public Builder setFsTypeBytes(com.google.protobuf.ByteString value) { + public Builder setMachineTypeBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); - fsType_ = value; - bitField0_ |= 0x00000002; + machineType_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } - private java.lang.Object diskType_ = ""; + private java.lang.Object serviceAccount_ = ""; /** * * *
            -         * Optional. The [type of the persistent
            -         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -         * home directory. Defaults to `"pd-standard"`.
            +         * Optional. The email address of the service account for Cloud
            +         * Workstations VMs created with this configuration. When specified, be
            +         * sure that the service account has `logging.logEntries.create` and
            +         * `monitoring.timeSeries.create` permissions on the project so it can
            +         * write logs out to Cloud Logging. If using a custom container image, the
            +         * service account must have [Artifact Registry
            +         * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +         * permission to pull the specified image.
            +         *
            +         * If you as the administrator want to be able to `ssh` into the
            +         * underlying VM, you need to set this value to a service account
            +         * for which you have the `iam.serviceAccounts.actAs` permission.
            +         * Conversely, if you don't want anyone to be able to `ssh` into the
            +         * underlying VM, use a service account where no one has that
            +         * permission.
            +         *
            +         * If not set, VMs run with a service account provided by the
            +         * Cloud Workstations service, and the image must be publicly
            +         * accessible.
                      * 
            * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The diskType. + * @return The serviceAccount. */ - public java.lang.String getDiskType() { - java.lang.Object ref = diskType_; + public java.lang.String getServiceAccount() { + java.lang.Object ref = serviceAccount_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); - diskType_ = s; + serviceAccount_ = s; return s; } else { return (java.lang.String) ref; @@ -7360,21 +7665,37 @@ public java.lang.String getDiskType() { * * *
            -         * Optional. The [type of the persistent
            -         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -         * home directory. Defaults to `"pd-standard"`.
            +         * Optional. The email address of the service account for Cloud
            +         * Workstations VMs created with this configuration. When specified, be
            +         * sure that the service account has `logging.logEntries.create` and
            +         * `monitoring.timeSeries.create` permissions on the project so it can
            +         * write logs out to Cloud Logging. If using a custom container image, the
            +         * service account must have [Artifact Registry
            +         * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +         * permission to pull the specified image.
            +         *
            +         * If you as the administrator want to be able to `ssh` into the
            +         * underlying VM, you need to set this value to a service account
            +         * for which you have the `iam.serviceAccounts.actAs` permission.
            +         * Conversely, if you don't want anyone to be able to `ssh` into the
            +         * underlying VM, use a service account where no one has that
            +         * permission.
            +         *
            +         * If not set, VMs run with a service account provided by the
            +         * Cloud Workstations service, and the image must be publicly
            +         * accessible.
                      * 
            * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The bytes for diskType. + * @return The bytes for serviceAccount. */ - public com.google.protobuf.ByteString getDiskTypeBytes() { - java.lang.Object ref = diskType_; + public com.google.protobuf.ByteString getServiceAccountBytes() { + java.lang.Object ref = serviceAccount_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - diskType_ = b; + serviceAccount_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; @@ -7385,22 +7706,38 @@ public com.google.protobuf.ByteString getDiskTypeBytes() { * * *
            -         * Optional. The [type of the persistent
            -         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -         * home directory. Defaults to `"pd-standard"`.
            +         * Optional. The email address of the service account for Cloud
            +         * Workstations VMs created with this configuration. When specified, be
            +         * sure that the service account has `logging.logEntries.create` and
            +         * `monitoring.timeSeries.create` permissions on the project so it can
            +         * write logs out to Cloud Logging. If using a custom container image, the
            +         * service account must have [Artifact Registry
            +         * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +         * permission to pull the specified image.
            +         *
            +         * If you as the administrator want to be able to `ssh` into the
            +         * underlying VM, you need to set this value to a service account
            +         * for which you have the `iam.serviceAccounts.actAs` permission.
            +         * Conversely, if you don't want anyone to be able to `ssh` into the
            +         * underlying VM, use a service account where no one has that
            +         * permission.
            +         *
            +         * If not set, VMs run with a service account provided by the
            +         * Cloud Workstations service, and the image must be publicly
            +         * accessible.
                      * 
            * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The diskType to set. + * @param value The serviceAccount to set. * @return This builder for chaining. */ - public Builder setDiskType(java.lang.String value) { + public Builder setServiceAccount(java.lang.String value) { if (value == null) { throw new NullPointerException(); } - diskType_ = value; - bitField0_ |= 0x00000004; + serviceAccount_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -7409,18 +7746,34 @@ public Builder setDiskType(java.lang.String value) { * * *
            -         * Optional. The [type of the persistent
            -         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -         * home directory. Defaults to `"pd-standard"`.
            +         * Optional. The email address of the service account for Cloud
            +         * Workstations VMs created with this configuration. When specified, be
            +         * sure that the service account has `logging.logEntries.create` and
            +         * `monitoring.timeSeries.create` permissions on the project so it can
            +         * write logs out to Cloud Logging. If using a custom container image, the
            +         * service account must have [Artifact Registry
            +         * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +         * permission to pull the specified image.
            +         *
            +         * If you as the administrator want to be able to `ssh` into the
            +         * underlying VM, you need to set this value to a service account
            +         * for which you have the `iam.serviceAccounts.actAs` permission.
            +         * Conversely, if you don't want anyone to be able to `ssh` into the
            +         * underlying VM, use a service account where no one has that
            +         * permission.
            +         *
            +         * If not set, VMs run with a service account provided by the
            +         * Cloud Workstations service, and the image must be publicly
            +         * accessible.
                      * 
            * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; * * @return This builder for chaining. */ - public Builder clearDiskType() { - diskType_ = getDefaultInstance().getDiskType(); - bitField0_ = (bitField0_ & ~0x00000004); + public Builder clearServiceAccount() { + serviceAccount_ = getDefaultInstance().getServiceAccount(); + bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } @@ -7429,204 +7782,215 @@ public Builder clearDiskType() { * * *
            -         * Optional. The [type of the persistent
            -         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -         * home directory. Defaults to `"pd-standard"`.
            -         * 
            + * Optional. The email address of the service account for Cloud + * Workstations VMs created with this configuration. When specified, be + * sure that the service account has `logging.logEntries.create` and + * `monitoring.timeSeries.create` permissions on the project so it can + * write logs out to Cloud Logging. If using a custom container image, the + * service account must have [Artifact Registry + * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles) + * permission to pull the specified image. * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * If you as the administrator want to be able to `ssh` into the + * underlying VM, you need to set this value to a service account + * for which you have the `iam.serviceAccounts.actAs` permission. + * Conversely, if you don't want anyone to be able to `ssh` into the + * underlying VM, use a service account where no one has that + * permission. * - * @param value The bytes for diskType to set. + * If not set, VMs run with a service account provided by the + * Cloud Workstations service, and the image must be publicly + * accessible. + *
            + * + * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for serviceAccount to set. * @return This builder for chaining. */ - public Builder setDiskTypeBytes(com.google.protobuf.ByteString value) { + public Builder setServiceAccountBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); - diskType_ = value; - bitField0_ |= 0x00000004; + serviceAccount_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } - private java.lang.Object sourceSnapshot_ = ""; + private com.google.protobuf.LazyStringArrayList serviceAccountScopes_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureServiceAccountScopesIsMutable() { + if (!serviceAccountScopes_.isModifiable()) { + serviceAccountScopes_ = + new com.google.protobuf.LazyStringArrayList(serviceAccountScopes_); + } + bitField0_ |= 0x00000004; + } /** * * *
            -         * Optional. Name of the snapshot to use as the source for the disk. If
            -         * set,
            -         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -         * and
            -         * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -         * must be empty.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The sourceSnapshot. + * @return A list containing the serviceAccountScopes. */ - public java.lang.String getSourceSnapshot() { - java.lang.Object ref = sourceSnapshot_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - sourceSnapshot_ = s; - return s; - } else { - return (java.lang.String) ref; - } + public com.google.protobuf.ProtocolStringList getServiceAccountScopesList() { + serviceAccountScopes_.makeImmutable(); + return serviceAccountScopes_; } /** * * *
            -         * Optional. Name of the snapshot to use as the source for the disk. If
            -         * set,
            -         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -         * and
            -         * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -         * must be empty.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The bytes for sourceSnapshot. + * @return The count of serviceAccountScopes. */ - public com.google.protobuf.ByteString getSourceSnapshotBytes() { - java.lang.Object ref = sourceSnapshot_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - sourceSnapshot_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public int getServiceAccountScopesCount() { + return serviceAccountScopes_.size(); } /** * * *
            -         * Optional. Name of the snapshot to use as the source for the disk. If
            -         * set,
            -         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -         * and
            -         * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -         * must be empty.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param value The sourceSnapshot to set. - * @return This builder for chaining. + * @param index The index of the element to return. + * @return The serviceAccountScopes at the given index. */ - public Builder setSourceSnapshot(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - sourceSnapshot_ = value; - bitField0_ |= 0x00000008; - onChanged(); - return this; + public java.lang.String getServiceAccountScopes(int index) { + return serviceAccountScopes_.get(index); } /** * * *
            -         * Optional. Name of the snapshot to use as the source for the disk. If
            -         * set,
            -         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -         * and
            -         * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -         * must be empty.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return This builder for chaining. + * @param index The index of the value to return. + * @return The bytes of the serviceAccountScopes at the given index. */ - public Builder clearSourceSnapshot() { - sourceSnapshot_ = getDefaultInstance().getSourceSnapshot(); - bitField0_ = (bitField0_ & ~0x00000008); - onChanged(); - return this; + public com.google.protobuf.ByteString getServiceAccountScopesBytes(int index) { + return serviceAccountScopes_.getByteString(index); } /** * * *
            -         * Optional. Name of the snapshot to use as the source for the disk. If
            -         * set,
            -         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -         * and
            -         * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -         * must be empty.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param value The bytes for sourceSnapshot to set. + * @param index The index to set the value at. + * @param value The serviceAccountScopes to set. * @return This builder for chaining. */ - public Builder setSourceSnapshotBytes(com.google.protobuf.ByteString value) { + public Builder setServiceAccountScopes(int index, java.lang.String value) { if (value == null) { throw new NullPointerException(); } - checkByteStringIsUtf8(value); - sourceSnapshot_ = value; - bitField0_ |= 0x00000008; + ensureServiceAccountScopesIsMutable(); + serviceAccountScopes_.set(index, value); + bitField0_ |= 0x00000004; onChanged(); return this; } - private int reclaimPolicy_ = 0; - /** * * *
            -         * Optional. Whether the persistent disk should be deleted when the
            -         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -         * Defaults to `DELETE`.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return The enum numeric value on the wire for reclaimPolicy. + * @param value The serviceAccountScopes to add. + * @return This builder for chaining. */ - @java.lang.Override - public int getReclaimPolicyValue() { - return reclaimPolicy_; + public Builder addServiceAccountScopes(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureServiceAccountScopesIsMutable(); + serviceAccountScopes_.add(value); + bitField0_ |= 0x00000004; + onChanged(); + return this; } /** * * *
            -         * Optional. Whether the persistent disk should be deleted when the
            -         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -         * Defaults to `DELETE`.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; * * - * @param value The enum numeric value on the wire for reclaimPolicy to set. + * @param values The serviceAccountScopes to add. * @return This builder for chaining. */ - public Builder setReclaimPolicyValue(int value) { - reclaimPolicy_ = value; - bitField0_ |= 0x00000010; + public Builder addAllServiceAccountScopes(java.lang.Iterable values) { + ensureServiceAccountScopesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, serviceAccountScopes_); + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -7635,2441 +7999,3479 @@ public Builder setReclaimPolicyValue(int value) { * * *
            -         * Optional. Whether the persistent disk should be deleted when the
            -         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -         * Defaults to `DELETE`.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return The reclaimPolicy. + * @return This builder for chaining. */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy - getReclaimPolicy() { - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy - result = - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy.forNumber(reclaimPolicy_); - return result == null - ? com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy.UNRECOGNIZED - : result; + public Builder clearServiceAccountScopes() { + serviceAccountScopes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + ; + onChanged(); + return this; } /** * * *
            -         * Optional. Whether the persistent disk should be deleted when the
            -         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -         * Defaults to `DELETE`.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; * * - * @param value The reclaimPolicy to set. + * @param value The bytes of the serviceAccountScopes to add. * @return This builder for chaining. */ - public Builder setReclaimPolicy( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy - value) { + public Builder addServiceAccountScopesBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } - bitField0_ |= 0x00000010; - reclaimPolicy_ = value.getNumber(); + checkByteStringIsUtf8(value); + ensureServiceAccountScopesIsMutable(); + serviceAccountScopes_.add(value); + bitField0_ |= 0x00000004; onChanged(); return this; } + private com.google.protobuf.LazyStringArrayList tags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureTagsIsMutable() { + if (!tags_.isModifiable()) { + tags_ = new com.google.protobuf.LazyStringArrayList(tags_); + } + bitField0_ |= 0x00000008; + } + /** * * *
            -         * Optional. Whether the persistent disk should be deleted when the
            -         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -         * Defaults to `DELETE`.
            -         * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; - * + * Optional. Network tags to add to the Compute Engine VMs backing the + * workstations. This option applies + * [network + * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs + * created with this configuration. These network tags enable the creation + * of [firewall + * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules). + *
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the tags. + */ + public com.google.protobuf.ProtocolStringList getTagsList() { + tags_.makeImmutable(); + return tags_; + } + + /** + * + * + *
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of tags. + */ + public int getTagsCount() { + return tags_.size(); + } + + /** + * + * + *
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The tags at the given index. + */ + public java.lang.String getTags(int index) { + return tags_.get(index); + } + + /** + * * + *
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the tags at the given index. + */ + public com.google.protobuf.ByteString getTagsBytes(int index) { + return tags_.getByteString(index); + } + + /** + * + * + *
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index to set the value at. + * @param value The tags to set. * @return This builder for chaining. */ - public Builder clearReclaimPolicy() { - bitField0_ = (bitField0_ & ~0x00000010); - reclaimPolicy_ = 0; + public Builder setTags(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureTagsIsMutable(); + tags_.set(index, value); + bitField0_ |= 0x00000008; onChanged(); return this; } - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) - } + /** + * + * + *
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The tags to add. + * @return This builder for chaining. + */ + public Builder addTags(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureTagsIsMutable(); + tags_.add(value); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) - private static final com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - DEFAULT_INSTANCE; + /** + * + * + *
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param values The tags to add. + * @return This builder for chaining. + */ + public Builder addAllTags(java.lang.Iterable values) { + ensureTagsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, tags_); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } - static { - DEFAULT_INSTANCE = - new com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk(); - } + /** + * + * + *
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearTags() { + tags_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + ; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - getDefaultInstance() { - return DEFAULT_INSTANCE; - } + /** + * + * + *
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes of the tags to add. + * @return This builder for chaining. + */ + public Builder addTagsBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureTagsIsMutable(); + tags_.add(value); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public GceRegionalPersistentDisk parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); - } - }; + private int poolSize_; - public static com.google.protobuf.Parser parser() { - return PARSER; - } - - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + /** + * + * + *
            +         * Optional. The number of VMs that the system should keep idle so that
            +         * new workstations can be started quickly for new users. Defaults to `0`
            +         * in the API.
            +         * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The poolSize. + */ + @java.lang.Override + public int getPoolSize() { + return poolSize_; + } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + /** + * + * + *
            +         * Optional. The number of VMs that the system should keep idle so that
            +         * new workstations can be started quickly for new users. Defaults to `0`
            +         * in the API.
            +         * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The poolSize to set. + * @return This builder for chaining. + */ + public Builder setPoolSize(int value) { - private int directoryTypeCase_ = 0; + poolSize_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } - @SuppressWarnings("serial") - private java.lang.Object directoryType_; + /** + * + * + *
            +         * Optional. The number of VMs that the system should keep idle so that
            +         * new workstations can be started quickly for new users. Defaults to `0`
            +         * in the API.
            +         * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearPoolSize() { + bitField0_ = (bitField0_ & ~0x00000010); + poolSize_ = 0; + onChanged(); + return this; + } - public enum DirectoryTypeCase - implements - com.google.protobuf.Internal.EnumLite, - com.google.protobuf.AbstractMessage.InternalOneOfEnum { - GCE_PD(2), - DIRECTORYTYPE_NOT_SET(0); - private final int value; + private int pooledInstances_; - private DirectoryTypeCase(int value) { - this.value = value; - } + /** + * + * + *
            +         * Output only. Number of instances currently available in the pool for
            +         * faster workstation startup.
            +         * 
            + * + * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The pooledInstances. + */ + @java.lang.Override + public int getPooledInstances() { + return pooledInstances_; + } - /** - * @param value The number of the enum to look for. - * @return The enum associated with the given number. - * @deprecated Use {@link #forNumber(int)} instead. - */ - @java.lang.Deprecated - public static DirectoryTypeCase valueOf(int value) { - return forNumber(value); - } + /** + * + * + *
            +         * Output only. Number of instances currently available in the pool for
            +         * faster workstation startup.
            +         * 
            + * + * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The pooledInstances to set. + * @return This builder for chaining. + */ + public Builder setPooledInstances(int value) { - public static DirectoryTypeCase forNumber(int value) { - switch (value) { - case 2: - return GCE_PD; - case 0: - return DIRECTORYTYPE_NOT_SET; - default: - return null; + pooledInstances_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; } - } - public int getNumber() { - return this.value; - } - }; + /** + * + * + *
            +         * Output only. Number of instances currently available in the pool for
            +         * faster workstation startup.
            +         * 
            + * + * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearPooledInstances() { + bitField0_ = (bitField0_ & ~0x00000020); + pooledInstances_ = 0; + onChanged(); + return this; + } - public DirectoryTypeCase getDirectoryTypeCase() { - return DirectoryTypeCase.forNumber(directoryTypeCase_); - } + private boolean disablePublicIpAddresses_; - public static final int GCE_PD_FIELD_NUMBER = 2; + /** + * + * + *
            +         * Optional. When set to true, disables public IP addresses for VMs. If
            +         * you disable public IP addresses, you must set up Private Google Access
            +         * or Cloud NAT on your network. If you use Private Google Access and you
            +         * use `private.googleapis.com` or `restricted.googleapis.com` for
            +         * Container Registry and Artifact Registry, make sure that you set
            +         * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            +         * Defaults to false (VMs have public IP addresses).
            +         * 
            + * + * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The disablePublicIpAddresses. + */ + @java.lang.Override + public boolean getDisablePublicIpAddresses() { + return disablePublicIpAddresses_; + } - /** - * - * - *
            -     * A PersistentDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - * - * @return Whether the gcePd field is set. - */ - @java.lang.Override - public boolean hasGcePd() { - return directoryTypeCase_ == 2; - } + /** + * + * + *
            +         * Optional. When set to true, disables public IP addresses for VMs. If
            +         * you disable public IP addresses, you must set up Private Google Access
            +         * or Cloud NAT on your network. If you use Private Google Access and you
            +         * use `private.googleapis.com` or `restricted.googleapis.com` for
            +         * Container Registry and Artifact Registry, make sure that you set
            +         * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            +         * Defaults to false (VMs have public IP addresses).
            +         * 
            + * + * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The disablePublicIpAddresses to set. + * @return This builder for chaining. + */ + public Builder setDisablePublicIpAddresses(boolean value) { - /** - * - * - *
            -     * A PersistentDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - * - * @return The gcePd. - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - getGcePd() { - if (directoryTypeCase_ == 2) { - return (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_; - } - return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance(); - } + disablePublicIpAddresses_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } - /** - * - * - *
            -     * A PersistentDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDiskOrBuilder - getGcePdOrBuilder() { - if (directoryTypeCase_ == 2) { - return (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_; - } - return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance(); - } + /** + * + * + *
            +         * Optional. When set to true, disables public IP addresses for VMs. If
            +         * you disable public IP addresses, you must set up Private Google Access
            +         * or Cloud NAT on your network. If you use Private Google Access and you
            +         * use `private.googleapis.com` or `restricted.googleapis.com` for
            +         * Container Registry and Artifact Registry, make sure that you set
            +         * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            +         * Defaults to false (VMs have public IP addresses).
            +         * 
            + * + * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearDisablePublicIpAddresses() { + bitField0_ = (bitField0_ & ~0x00000040); + disablePublicIpAddresses_ = false; + onChanged(); + return this; + } - public static final int MOUNT_PATH_FIELD_NUMBER = 1; + private boolean enableNestedVirtualization_; - @SuppressWarnings("serial") - private volatile java.lang.Object mountPath_ = ""; + /** + * + * + *
            +         * Optional. Whether to enable nested virtualization on Cloud Workstations
            +         * VMs created using this workstation configuration.
            +         *
            +         * Defaults to false.
            +         *
            +         * Nested virtualization lets you run virtual machine (VM) instances
            +         * inside your workstation. Before enabling nested virtualization,
            +         * consider the following important considerations. Cloud Workstations
            +         * instances are subject to the [same restrictions as Compute Engine
            +         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +         *
            +         * * **Organization policy**: projects, folders, or
            +         * organizations may be restricted from creating nested VMs if the
            +         * **Disable VM nested virtualization** constraint is enforced in
            +         * the organization policy. For more information, see the
            +         * Compute Engine section,
            +         * [Checking whether nested virtualization is
            +         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +         * * **Performance**: nested VMs might experience a 10% or greater
            +         * decrease in performance for workloads that are CPU-bound and
            +         * possibly greater than a 10% decrease for workloads that are
            +         * input/output bound.
            +         * * **Machine Type**: nested virtualization can only be enabled on
            +         * workstation configurations that specify a
            +         * [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.machine_type]
            +         * in the N1 or N2 machine series.
            +         * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enableNestedVirtualization. + */ + @java.lang.Override + public boolean getEnableNestedVirtualization() { + return enableNestedVirtualization_; + } - /** - * - * - *
            -     * Optional. Location of this directory in the running workstation.
            -     * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The mountPath. - */ - @java.lang.Override - public java.lang.String getMountPath() { - java.lang.Object ref = mountPath_; - 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(); - mountPath_ = s; - return s; - } - } + /** + * + * + *
            +         * Optional. Whether to enable nested virtualization on Cloud Workstations
            +         * VMs created using this workstation configuration.
            +         *
            +         * Defaults to false.
            +         *
            +         * Nested virtualization lets you run virtual machine (VM) instances
            +         * inside your workstation. Before enabling nested virtualization,
            +         * consider the following important considerations. Cloud Workstations
            +         * instances are subject to the [same restrictions as Compute Engine
            +         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +         *
            +         * * **Organization policy**: projects, folders, or
            +         * organizations may be restricted from creating nested VMs if the
            +         * **Disable VM nested virtualization** constraint is enforced in
            +         * the organization policy. For more information, see the
            +         * Compute Engine section,
            +         * [Checking whether nested virtualization is
            +         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +         * * **Performance**: nested VMs might experience a 10% or greater
            +         * decrease in performance for workloads that are CPU-bound and
            +         * possibly greater than a 10% decrease for workloads that are
            +         * input/output bound.
            +         * * **Machine Type**: nested virtualization can only be enabled on
            +         * workstation configurations that specify a
            +         * [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.machine_type]
            +         * in the N1 or N2 machine series.
            +         * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The enableNestedVirtualization to set. + * @return This builder for chaining. + */ + public Builder setEnableNestedVirtualization(boolean value) { - /** - * - * - *
            -     * Optional. Location of this directory in the running workstation.
            -     * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for mountPath. - */ - @java.lang.Override - public com.google.protobuf.ByteString getMountPathBytes() { - java.lang.Object ref = mountPath_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - mountPath_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + enableNestedVirtualization_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } - private byte memoizedIsInitialized = -1; + /** + * + * + *
            +         * Optional. Whether to enable nested virtualization on Cloud Workstations
            +         * VMs created using this workstation configuration.
            +         *
            +         * Defaults to false.
            +         *
            +         * Nested virtualization lets you run virtual machine (VM) instances
            +         * inside your workstation. Before enabling nested virtualization,
            +         * consider the following important considerations. Cloud Workstations
            +         * instances are subject to the [same restrictions as Compute Engine
            +         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +         *
            +         * * **Organization policy**: projects, folders, or
            +         * organizations may be restricted from creating nested VMs if the
            +         * **Disable VM nested virtualization** constraint is enforced in
            +         * the organization policy. For more information, see the
            +         * Compute Engine section,
            +         * [Checking whether nested virtualization is
            +         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +         * * **Performance**: nested VMs might experience a 10% or greater
            +         * decrease in performance for workloads that are CPU-bound and
            +         * possibly greater than a 10% decrease for workloads that are
            +         * input/output bound.
            +         * * **Machine Type**: nested virtualization can only be enabled on
            +         * workstation configurations that specify a
            +         * [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.machine_type]
            +         * in the N1 or N2 machine series.
            +         * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearEnableNestedVirtualization() { + bitField0_ = (bitField0_ & ~0x00000080); + enableNestedVirtualization_ = false; + onChanged(); + return this; + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + private com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig + shieldedInstanceConfig_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfigOrBuilder> + shieldedInstanceConfigBuilder_; - memoizedIsInitialized = 1; - return true; - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the shieldedInstanceConfig field is set. + */ + public boolean hasShieldedInstanceConfig() { + return ((bitField0_ & 0x00000100) != 0); + } - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mountPath_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 1, mountPath_); - } - if (directoryTypeCase_ == 2) { - output.writeMessage( - 2, - (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_); - } - getUnknownFields().writeTo(output); - } - - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The shieldedInstanceConfig. + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig + getShieldedInstanceConfig() { + if (shieldedInstanceConfigBuilder_ == null) { + return shieldedInstanceConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.getDefaultInstance() + : shieldedInstanceConfig_; + } else { + return shieldedInstanceConfigBuilder_.getMessage(); + } + } - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mountPath_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, mountPath_); - } - if (directoryTypeCase_ == 2) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 2, - (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setShieldedInstanceConfig( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig + value) { + if (shieldedInstanceConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + shieldedInstanceConfig_ = value; + } else { + shieldedInstanceConfigBuilder_.setMessage(value); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj - instanceof com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory other = - (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) obj; + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setShieldedInstanceConfig( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.Builder + builderForValue) { + if (shieldedInstanceConfigBuilder_ == null) { + shieldedInstanceConfig_ = builderForValue.build(); + } else { + shieldedInstanceConfigBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } - if (!getMountPath().equals(other.getMountPath())) return false; - if (!getDirectoryTypeCase().equals(other.getDirectoryTypeCase())) return false; - switch (directoryTypeCase_) { - case 2: - if (!getGcePd().equals(other.getGcePd())) return false; - break; - case 0: - default: - } - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeShieldedInstanceConfig( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig + value) { + if (shieldedInstanceConfigBuilder_ == null) { + if (((bitField0_ & 0x00000100) != 0) + && shieldedInstanceConfig_ != null + && shieldedInstanceConfig_ + != com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.getDefaultInstance()) { + getShieldedInstanceConfigBuilder().mergeFrom(value); + } else { + shieldedInstanceConfig_ = value; + } + } else { + shieldedInstanceConfigBuilder_.mergeFrom(value); + } + if (shieldedInstanceConfig_ != null) { + bitField0_ |= 0x00000100; + onChanged(); + } + return this; + } - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; - } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + MOUNT_PATH_FIELD_NUMBER; - hash = (53 * hash) + getMountPath().hashCode(); - switch (directoryTypeCase_) { - case 2: - hash = (37 * hash) + GCE_PD_FIELD_NUMBER; - hash = (53 * hash) + getGcePd().hashCode(); - break; - case 0: - default: - } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearShieldedInstanceConfig() { + bitField0_ = (bitField0_ & ~0x00000100); + shieldedInstanceConfig_ = null; + if (shieldedInstanceConfigBuilder_ != null) { + shieldedInstanceConfigBuilder_.dispose(); + shieldedInstanceConfigBuilder_ = null; + } + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.Builder + getShieldedInstanceConfigBuilder() { + bitField0_ |= 0x00000100; + onChanged(); + return internalGetShieldedInstanceConfigFieldBuilder().getBuilder(); + } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfigOrBuilder + getShieldedInstanceConfigOrBuilder() { + if (shieldedInstanceConfigBuilder_ != null) { + return shieldedInstanceConfigBuilder_.getMessageOrBuilder(); + } else { + return shieldedInstanceConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.getDefaultInstance() + : shieldedInstanceConfig_; + } + } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfigOrBuilder> + internalGetShieldedInstanceConfigFieldBuilder() { + if (shieldedInstanceConfigBuilder_ == null) { + shieldedInstanceConfigBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfigOrBuilder>( + getShieldedInstanceConfig(), getParentForChildren(), isClean()); + shieldedInstanceConfig_ = null; + } + return shieldedInstanceConfigBuilder_; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + private com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig + confidentialInstanceConfig_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfigOrBuilder> + confidentialInstanceConfigBuilder_; - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( - byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the confidentialInstanceConfig field is set. + */ + public boolean hasConfidentialInstanceConfig() { + return ((bitField0_ & 0x00000200) != 0); + } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The confidentialInstanceConfig. + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig + getConfidentialInstanceConfig() { + if (confidentialInstanceConfigBuilder_ == null) { + return confidentialInstanceConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.getDefaultInstance() + : confidentialInstanceConfig_; + } else { + return confidentialInstanceConfigBuilder_.getMessage(); + } + } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setConfidentialInstanceConfig( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig + value) { + if (confidentialInstanceConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + confidentialInstanceConfig_ = value; + } else { + confidentialInstanceConfigBuilder_.setMessage(value); + } + bitField0_ |= 0x00000200; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setConfidentialInstanceConfig( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.Builder + builderForValue) { + if (confidentialInstanceConfigBuilder_ == null) { + confidentialInstanceConfig_ = builderForValue.build(); + } else { + confidentialInstanceConfigBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000200; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeConfidentialInstanceConfig( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig + value) { + if (confidentialInstanceConfigBuilder_ == null) { + if (((bitField0_ & 0x00000200) != 0) + && confidentialInstanceConfig_ != null + && confidentialInstanceConfig_ + != com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.getDefaultInstance()) { + getConfidentialInstanceConfigBuilder().mergeFrom(value); + } else { + confidentialInstanceConfig_ = value; + } + } else { + confidentialInstanceConfigBuilder_.mergeFrom(value); + } + if (confidentialInstanceConfig_ != null) { + bitField0_ |= 0x00000200; + onChanged(); + } + return this; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearConfidentialInstanceConfig() { + bitField0_ = (bitField0_ & ~0x00000200); + confidentialInstanceConfig_ = null; + if (confidentialInstanceConfigBuilder_ != null) { + confidentialInstanceConfigBuilder_.dispose(); + confidentialInstanceConfigBuilder_ = null; + } + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.Builder + getConfidentialInstanceConfigBuilder() { + bitField0_ |= 0x00000200; + onChanged(); + return internalGetConfidentialInstanceConfigFieldBuilder().getBuilder(); + } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory 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(); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfigOrBuilder + getConfidentialInstanceConfigOrBuilder() { + if (confidentialInstanceConfigBuilder_ != null) { + return confidentialInstanceConfigBuilder_.getMessageOrBuilder(); + } else { + return confidentialInstanceConfig_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.getDefaultInstance() + : confidentialInstanceConfig_; + } + } - public static Builder newBuilder( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfigOrBuilder> + internalGetConfidentialInstanceConfigFieldBuilder() { + if (confidentialInstanceConfigBuilder_ == null) { + confidentialInstanceConfigBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfigOrBuilder>( + getConfidentialInstanceConfig(), getParentForChildren(), isClean()); + confidentialInstanceConfig_ = null; + } + return confidentialInstanceConfigBuilder_; + } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + private int bootDiskSizeGb_; - @java.lang.Override - protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } + /** + * + * + *
            +         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +         * 
            + * + * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bootDiskSizeGb. + */ + @java.lang.Override + public int getBootDiskSizeGb() { + return bootDiskSizeGb_; + } - /** - * - * - *
            -     * A directory to persist across workstation sessions.
            -     * 
            - * - * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory} - */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_descriptor; - } + /** + * + * + *
            +         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +         * 
            + * + * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bootDiskSizeGb to set. + * @return This builder for chaining. + */ + public Builder setBootDiskSizeGb(int value) { - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.class, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder - .class); - } + bootDiskSizeGb_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } - // Construct using - // com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.newBuilder() - private Builder() {} + /** + * + * + *
            +         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +         * 
            + * + * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearBootDiskSizeGb() { + bitField0_ = (bitField0_ & ~0x00000400); + bootDiskSizeGb_ = 0; + onChanged(); + return this; + } - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - } + private java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator> + accelerators_ = java.util.Collections.emptyList(); - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - if (gcePdBuilder_ != null) { - gcePdBuilder_.clear(); + private void ensureAcceleratorsIsMutable() { + if (!((bitField0_ & 0x00000800) != 0)) { + accelerators_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator>(accelerators_); + bitField0_ |= 0x00000800; + } } - mountPath_ = ""; - directoryTypeCase_ = 0; - directoryType_ = null; - return this; - } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_descriptor; - } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - getDefaultInstanceForType() { - return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .getDefaultInstance(); - } + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + acceleratorsBuilder_; - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory build() { - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory result = - buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator> + getAcceleratorsList() { + if (acceleratorsBuilder_ == null) { + return java.util.Collections.unmodifiableList(accelerators_); + } else { + return acceleratorsBuilder_.getMessageList(); + } } - return result; - } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory buildPartial() { - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory result = - new com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory(this); - if (bitField0_ != 0) { - buildPartial0(result); + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public int getAcceleratorsCount() { + if (acceleratorsBuilder_ == null) { + return accelerators_.size(); + } else { + return acceleratorsBuilder_.getCount(); + } } - buildPartialOneofs(result); - onBuilt(); - return result; - } - private void buildPartial0( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000002) != 0)) { - result.mountPath_ = mountPath_; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + getAccelerators(int index) { + if (acceleratorsBuilder_ == null) { + return accelerators_.get(index); + } else { + return acceleratorsBuilder_.getMessage(index); + } } - } - private void buildPartialOneofs( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory result) { - result.directoryTypeCase_ = directoryTypeCase_; - result.directoryType_ = this.directoryType_; - if (directoryTypeCase_ == 2 && gcePdBuilder_ != null) { - result.directoryType_ = gcePdBuilder_.build(); + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setAccelerators( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator value) { + if (acceleratorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAcceleratorsIsMutable(); + accelerators_.set(index, value); + onChanged(); + } else { + acceleratorsBuilder_.setMessage(index, value); + } + return this; } - } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other - instanceof com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) { - return mergeFrom( - (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) other); - } else { - super.mergeFrom(other); + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setAccelerators( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator.Builder + builderForValue) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.set(index, builderForValue.build()); + onChanged(); + } else { + acceleratorsBuilder_.setMessage(index, builderForValue.build()); + } return this; } - } - public Builder mergeFrom( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory other) { - if (other - == com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .getDefaultInstance()) return this; - if (!other.getMountPath().isEmpty()) { - mountPath_ = other.mountPath_; - bitField0_ |= 0x00000002; - onChanged(); - } - switch (other.getDirectoryTypeCase()) { - case GCE_PD: - { - mergeGcePd(other.getGcePd()); - break; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator value) { + if (acceleratorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } - case DIRECTORYTYPE_NOT_SET: - { - break; + ensureAcceleratorsIsMutable(); + accelerators_.add(value); + onChanged(); + } else { + acceleratorsBuilder_.addMessage(value); + } + return this; + } + + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator value) { + if (acceleratorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureAcceleratorsIsMutable(); + accelerators_.add(index, value); + onChanged(); + } else { + acceleratorsBuilder_.addMessage(index, value); + } + return this; } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; - } - @java.lang.Override - public final boolean isInitialized() { - return true; - } + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator.Builder + builderForValue) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.add(builderForValue.build()); + onChanged(); + } else { + acceleratorsBuilder_.addMessage(builderForValue.build()); + } + return this; + } - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator.Builder + builderForValue) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.add(index, builderForValue.build()); + onChanged(); + } else { + acceleratorsBuilder_.addMessage(index, builderForValue.build()); + } + return this; } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - mountPath_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 10 - case 18: - { - input.readMessage(internalGetGcePdFieldBuilder().getBuilder(), extensionRegistry); - directoryTypeCase_ = 2; - break; - } // case 18 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; - } - private int directoryTypeCase_ = 0; - private java.lang.Object directoryType_; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllAccelerators( + java.lang.Iterable< + ? extends + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .Accelerator> + values) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, accelerators_); + onChanged(); + } else { + acceleratorsBuilder_.addAllMessages(values); + } + return this; + } - public DirectoryTypeCase getDirectoryTypeCase() { - return DirectoryTypeCase.forNumber(directoryTypeCase_); - } + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearAccelerators() { + if (acceleratorsBuilder_ == null) { + accelerators_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000800); + onChanged(); + } else { + acceleratorsBuilder_.clear(); + } + return this; + } - public Builder clearDirectoryType() { - directoryTypeCase_ = 0; - directoryType_ = null; - onChanged(); - return this; - } + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeAccelerators(int index) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.remove(index); + onChanged(); + } else { + acceleratorsBuilder_.remove(index); + } + return this; + } - private int bitField0_; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + getAcceleratorsBuilder(int index) { + return internalGetAcceleratorsFieldBuilder().getBuilder(index); + } - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDiskOrBuilder> - gcePdBuilder_; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder + getAcceleratorsOrBuilder(int index) { + if (acceleratorsBuilder_ == null) { + return accelerators_.get(index); + } else { + return acceleratorsBuilder_.getMessageOrBuilder(index); + } + } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - * - * @return Whether the gcePd field is set. - */ - @java.lang.Override - public boolean hasGcePd() { - return directoryTypeCase_ == 2; - } - - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - * - * @return The gcePd. - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - getGcePd() { - if (gcePdBuilder_ == null) { - if (directoryTypeCase_ == 2) { - return (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + ? extends + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + getAcceleratorsOrBuilderList() { + if (acceleratorsBuilder_ != null) { + return acceleratorsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(accelerators_); } - return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance(); - } else { - if (directoryTypeCase_ == 2) { - return gcePdBuilder_.getMessage(); + } + + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + addAcceleratorsBuilder() { + return internalGetAcceleratorsFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .getDefaultInstance()); + } + + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + addAcceleratorsBuilder(int index) { + return internalGetAcceleratorsFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .getDefaultInstance()); + } + + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder> + getAcceleratorsBuilderList() { + return internalGetAcceleratorsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + internalGetAcceleratorsFieldBuilder() { + if (acceleratorsBuilder_ == null) { + acceleratorsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Accelerator + .Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder>( + accelerators_, + ((bitField0_ & 0x00000800) != 0), + getParentForChildren(), + isClean()); + accelerators_ = null; } - return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance(); + return acceleratorsBuilder_; } - } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - public Builder setGcePd( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - value) { - if (gcePdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + private java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig> + boostConfigs_ = java.util.Collections.emptyList(); + + private void ensureBoostConfigsIsMutable() { + if (!((bitField0_ & 0x00001000) != 0)) { + boostConfigs_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig>(boostConfigs_); + bitField0_ |= 0x00001000; } - directoryType_ = value; - onChanged(); - } else { - gcePdBuilder_.setMessage(value); } - directoryTypeCase_ = 2; - return this; - } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - public Builder setGcePd( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.Builder - builderForValue) { - if (gcePdBuilder_ == null) { - directoryType_ = builderForValue.build(); - onChanged(); - } else { - gcePdBuilder_.setMessage(builderForValue.build()); + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder> + boostConfigsBuilder_; + + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig> + getBoostConfigsList() { + if (boostConfigsBuilder_ == null) { + return java.util.Collections.unmodifiableList(boostConfigs_); + } else { + return boostConfigsBuilder_.getMessageList(); + } } - directoryTypeCase_ = 2; - return this; - } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - public Builder mergeGcePd( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - value) { - if (gcePdBuilder_ == null) { - if (directoryTypeCase_ == 2 - && directoryType_ - != com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance()) { - directoryType_ = - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.newBuilder( - (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_) - .mergeFrom(value) - .buildPartial(); + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public int getBoostConfigsCount() { + if (boostConfigsBuilder_ == null) { + return boostConfigs_.size(); } else { - directoryType_ = value; + return boostConfigsBuilder_.getCount(); } - onChanged(); - } else { - if (directoryTypeCase_ == 2) { - gcePdBuilder_.mergeFrom(value); + } + + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + getBoostConfigs(int index) { + if (boostConfigsBuilder_ == null) { + return boostConfigs_.get(index); } else { - gcePdBuilder_.setMessage(value); + return boostConfigsBuilder_.getMessage(index); } } - directoryTypeCase_ = 2; - return this; - } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - public Builder clearGcePd() { - if (gcePdBuilder_ == null) { - if (directoryTypeCase_ == 2) { - directoryTypeCase_ = 0; - directoryType_ = null; + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setBoostConfigs( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig value) { + if (boostConfigsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureBoostConfigsIsMutable(); + boostConfigs_.set(index, value); onChanged(); + } else { + boostConfigsBuilder_.setMessage(index, value); } - } else { - if (directoryTypeCase_ == 2) { - directoryTypeCase_ = 0; - directoryType_ = null; - } - gcePdBuilder_.clear(); + return this; } - return this; - } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.Builder - getGcePdBuilder() { - return internalGetGcePdFieldBuilder().getBuilder(); - } + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setBoostConfigs( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig.Builder + builderForValue) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.set(index, builderForValue.build()); + onChanged(); + } else { + boostConfigsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDiskOrBuilder - getGcePdOrBuilder() { - if ((directoryTypeCase_ == 2) && (gcePdBuilder_ != null)) { - return gcePdBuilder_.getMessageOrBuilder(); - } else { - if (directoryTypeCase_ == 2) { - return (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_; + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addBoostConfigs( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig value) { + if (boostConfigsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureBoostConfigsIsMutable(); + boostConfigs_.add(value); + onChanged(); + } else { + boostConfigsBuilder_.addMessage(value); } - return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance(); + return this; } - } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDiskOrBuilder> - internalGetGcePdFieldBuilder() { - if (gcePdBuilder_ == null) { - if (!(directoryTypeCase_ == 2)) { - directoryType_ = - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance(); + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addBoostConfigs( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig value) { + if (boostConfigsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureBoostConfigsIsMutable(); + boostConfigs_.add(index, value); + onChanged(); + } else { + boostConfigsBuilder_.addMessage(index, value); } - gcePdBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDiskOrBuilder>( - (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_, - getParentForChildren(), - isClean()); - directoryType_ = null; + return this; } - directoryTypeCase_ = 2; - onChanged(); - return gcePdBuilder_; - } - private java.lang.Object mountPath_ = ""; + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addBoostConfigs( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig.Builder + builderForValue) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.add(builderForValue.build()); + onChanged(); + } else { + boostConfigsBuilder_.addMessage(builderForValue.build()); + } + return this; + } - /** - * - * - *
            -       * Optional. Location of this directory in the running workstation.
            -       * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The mountPath. - */ - public java.lang.String getMountPath() { - java.lang.Object ref = mountPath_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - mountPath_ = s; - return s; - } else { - return (java.lang.String) ref; + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addBoostConfigs( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig.Builder + builderForValue) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.add(index, builderForValue.build()); + onChanged(); + } else { + boostConfigsBuilder_.addMessage(index, builderForValue.build()); + } + return this; } - } - /** - * - * - *
            -       * Optional. Location of this directory in the running workstation.
            -       * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for mountPath. - */ - public com.google.protobuf.ByteString getMountPathBytes() { - java.lang.Object ref = mountPath_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - mountPath_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllBoostConfigs( + java.lang.Iterable< + ? extends + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfig> + values) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, boostConfigs_); + onChanged(); + } else { + boostConfigsBuilder_.addAllMessages(values); + } + return this; } - } - /** - * - * - *
            -       * Optional. Location of this directory in the running workstation.
            -       * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The mountPath to set. - * @return This builder for chaining. - */ - public Builder setMountPath(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearBoostConfigs() { + if (boostConfigsBuilder_ == null) { + boostConfigs_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00001000); + onChanged(); + } else { + boostConfigsBuilder_.clear(); + } + return this; } - mountPath_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - /** - * - * - *
            -       * Optional. Location of this directory in the running workstation.
            -       * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearMountPath() { - mountPath_ = getDefaultInstance().getMountPath(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - return this; - } + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeBoostConfigs(int index) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.remove(index); + onChanged(); + } else { + boostConfigsBuilder_.remove(index); + } + return this; + } - /** - * - * - *
            -       * Optional. Location of this directory in the running workstation.
            -       * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for mountPath to set. - * @return This builder for chaining. - */ - public Builder setMountPathBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder + getBoostConfigsBuilder(int index) { + return internalGetBoostConfigsFieldBuilder().getBuilder(index); } - checkByteStringIsUtf8(value); - mountPath_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) - } + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder + getBoostConfigsOrBuilder(int index) { + if (boostConfigsBuilder_ == null) { + return boostConfigs_.get(index); + } else { + return boostConfigsBuilder_.getMessageOrBuilder(index); + } + } - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) - private static final com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - DEFAULT_INSTANCE; + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + ? extends + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder> + getBoostConfigsOrBuilderList() { + if (boostConfigsBuilder_ != null) { + return boostConfigsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(boostConfigs_); + } + } - static { - DEFAULT_INSTANCE = - new com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory(); - } + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder + addBoostConfigsBuilder() { + return internalGetBoostConfigsFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .getDefaultInstance()); + } - public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - getDefaultInstance() { - return DEFAULT_INSTANCE; - } + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder + addBoostConfigsBuilder(int index) { + return internalGetBoostConfigsFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .getDefaultInstance()); + } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public PersistentDirectory parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder> + getBoostConfigsBuilderList() { + return internalGetBoostConfigsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder> + internalGetBoostConfigsFieldBuilder() { + if (boostConfigsBuilder_ == null) { + boostConfigsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder>( + boostConfigs_, + ((bitField0_ & 0x00001000) != 0), + getParentForChildren(), + isClean()); + boostConfigs_ = null; } - }; + return boostConfigsBuilder_; + } - public static com.google.protobuf.Parser parser() { - return PARSER; - } + private boolean disableSsh_; - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + /** + * + * + *
            +         * Optional. Whether to disable SSH access to the VM.
            +         * 
            + * + * bool disable_ssh = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The disableSsh. + */ + @java.lang.Override + public boolean getDisableSsh() { + return disableSsh_; + } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + /** + * + * + *
            +         * Optional. Whether to disable SSH access to the VM.
            +         * 
            + * + * bool disable_ssh = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The disableSsh to set. + * @return This builder for chaining. + */ + public Builder setDisableSsh(boolean value) { - public interface ContainerOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.Container) - com.google.protobuf.MessageOrBuilder { + disableSsh_ = value; + bitField0_ |= 0x00002000; + onChanged(); + return this; + } - /** - * - * - *
            -     * Optional. A Docker container image that defines a custom environment.
            -     *
            -     * Cloud Workstations provides a number of
            -     * [preconfigured
            -     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -     * but you can create your own
            -     * [custom container
            -     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -     * If using a private image, the `host.gceInstance.serviceAccount` field
            -     * must be specified in the workstation configuration and must have
            -     * permission to pull the specified image. Otherwise, the image must be
            -     * publicly accessible.
            -     * 
            - * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The image. - */ - java.lang.String getImage(); + /** + * + * + *
            +         * Optional. Whether to disable SSH access to the VM.
            +         * 
            + * + * bool disable_ssh = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearDisableSsh() { + bitField0_ = (bitField0_ & ~0x00002000); + disableSsh_ = false; + onChanged(); + return this; + } - /** - * - * - *
            -     * Optional. A Docker container image that defines a custom environment.
            -     *
            -     * Cloud Workstations provides a number of
            -     * [preconfigured
            -     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -     * but you can create your own
            -     * [custom container
            -     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -     * If using a private image, the `host.gceInstance.serviceAccount` field
            -     * must be specified in the workstation configuration and must have
            -     * permission to pull the specified image. Otherwise, the image must be
            -     * publicly accessible.
            -     * 
            - * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for image. - */ - com.google.protobuf.ByteString getImageBytes(); + private com.google.protobuf.MapField vmTags_; - /** - * - * - *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            -     * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return A list containing the command. - */ - java.util.List getCommandList(); + private com.google.protobuf.MapField + internalGetVmTags() { + if (vmTags_ == null) { + return com.google.protobuf.MapField.emptyMapField( + VmTagsDefaultEntryHolder.defaultEntry); + } + return vmTags_; + } - /** - * - * - *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            -     * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The count of command. - */ - int getCommandCount(); - - /** - * - * - *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            -     * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the element to return. - * @return The command at the given index. - */ - java.lang.String getCommand(int index); + private com.google.protobuf.MapField + internalGetMutableVmTags() { + if (vmTags_ == null) { + vmTags_ = + com.google.protobuf.MapField.newMapField(VmTagsDefaultEntryHolder.defaultEntry); + } + if (!vmTags_.isMutable()) { + vmTags_ = vmTags_.copy(); + } + bitField0_ |= 0x00004000; + onChanged(); + return vmTags_; + } - /** - * - * - *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            -     * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the value to return. - * @return The bytes of the command at the given index. - */ - com.google.protobuf.ByteString getCommandBytes(int index); + public int getVmTagsCount() { + return internalGetVmTags().getMap().size(); + } - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return A list containing the args. - */ - java.util.List getArgsList(); + /** + * + * + *
            +         * Optional. Resource manager tags to be bound to this instance.
            +         * Tag keys and values have the same definition as [resource manager
            +         * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +         * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +         * values are in the format `tagValues/456`.
            +         * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsVmTags(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetVmTags().getMap().containsKey(key); + } - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The count of args. - */ - int getArgsCount(); + /** Use {@link #getVmTagsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getVmTags() { + return getVmTagsMap(); + } - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the element to return. - * @return The args at the given index. - */ - java.lang.String getArgs(int index); + /** + * + * + *
            +         * Optional. Resource manager tags to be bound to this instance.
            +         * Tag keys and values have the same definition as [resource manager
            +         * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +         * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +         * values are in the format `tagValues/456`.
            +         * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getVmTagsMap() { + return internalGetVmTags().getMap(); + } - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the value to return. - * @return The bytes of the args at the given index. - */ - com.google.protobuf.ByteString getArgsBytes(int index); + /** + * + * + *
            +         * Optional. Resource manager tags to be bound to this instance.
            +         * Tag keys and values have the same definition as [resource manager
            +         * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +         * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +         * values are in the format `tagValues/456`.
            +         * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getVmTagsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetVmTags().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - int getEnvCount(); + /** + * + * + *
            +         * Optional. Resource manager tags to be bound to this instance.
            +         * Tag keys and values have the same definition as [resource manager
            +         * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +         * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +         * values are in the format `tagValues/456`.
            +         * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getVmTagsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetVmTags().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - boolean containsEnv(java.lang.String key); + public Builder clearVmTags() { + bitField0_ = (bitField0_ & ~0x00004000); + internalGetMutableVmTags().getMutableMap().clear(); + return this; + } - /** Use {@link #getEnvMap()} instead. */ - @java.lang.Deprecated - java.util.Map getEnv(); + /** + * + * + *
            +         * Optional. Resource manager tags to be bound to this instance.
            +         * Tag keys and values have the same definition as [resource manager
            +         * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +         * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +         * values are in the format `tagValues/456`.
            +         * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeVmTags(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableVmTags().getMutableMap().remove(key); + return this; + } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - java.util.Map getEnvMap(); + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableVmTags() { + bitField0_ |= 0x00004000; + return internalGetMutableVmTags().getMutableMap(); + } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - /* nullable */ - java.lang.String getEnvOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue); + /** + * + * + *
            +         * Optional. Resource manager tags to be bound to this instance.
            +         * Tag keys and values have the same definition as [resource manager
            +         * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +         * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +         * values are in the format `tagValues/456`.
            +         * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putVmTags(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableVmTags().getMutableMap().put(key, value); + bitField0_ |= 0x00004000; + return this; + } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - java.lang.String getEnvOrThrow(java.lang.String key); + /** + * + * + *
            +         * Optional. Resource manager tags to be bound to this instance.
            +         * Tag keys and values have the same definition as [resource manager
            +         * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +         * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +         * values are in the format `tagValues/456`.
            +         * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAllVmTags(java.util.Map values) { + internalGetMutableVmTags().getMutableMap().putAll(values); + bitField0_ |= 0x00004000; + return this; + } - /** - * - * - *
            -     * Optional. If set, overrides the default DIR specified by the image.
            -     * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The workingDir. - */ - java.lang.String getWorkingDir(); + private java.lang.Object startupScriptUri_ = ""; - /** - * - * - *
            -     * Optional. If set, overrides the default DIR specified by the image.
            -     * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for workingDir. - */ - com.google.protobuf.ByteString getWorkingDirBytes(); - - /** - * - * - *
            -     * Optional. If set, overrides the USER specified in the image with the
            -     * given uid.
            -     * 
            - * - * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The runAsUser. - */ - int getRunAsUser(); - } - - /** - * - * - *
            -   * A Docker container.
            -   * 
            - * - * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.Container} - */ - public static final class Container extends com.google.protobuf.GeneratedMessage - implements - // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.Container) - ContainerOrBuilder { - private static final long serialVersionUID = 0L; + /** + * + * + *
            +         * Optional. Link to the startup script stored in Cloud Storage. This
            +         * script will be run on the host workstation VM when the VM is created.
            +         * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +         * specifying a startup script, the service account must have [Permission
            +         * to access the bucket and script file in Cloud
            +         * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +         * Otherwise, the script must be publicly accessible.
            +         * Note that the service regularly updates the OS version of the host VM,
            +         * and it is the responsibility of the user to ensure the script stays
            +         * compatible with the OS version.
            +         * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The startupScriptUri. + */ + public java.lang.String getStartupScriptUri() { + java.lang.Object ref = startupScriptUri_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + startupScriptUri_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } - static { - com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( - com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, - /* major= */ 4, - /* minor= */ 33, - /* patch= */ 2, - /* suffix= */ "", - "Container"); - } + /** + * + * + *
            +         * Optional. Link to the startup script stored in Cloud Storage. This
            +         * script will be run on the host workstation VM when the VM is created.
            +         * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +         * specifying a startup script, the service account must have [Permission
            +         * to access the bucket and script file in Cloud
            +         * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +         * Otherwise, the script must be publicly accessible.
            +         * Note that the service regularly updates the OS version of the host VM,
            +         * and it is the responsibility of the user to ensure the script stays
            +         * compatible with the OS version.
            +         * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for startupScriptUri. + */ + public com.google.protobuf.ByteString getStartupScriptUriBytes() { + java.lang.Object ref = startupScriptUri_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + startupScriptUri_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - // Use Container.newBuilder() to construct. - private Container(com.google.protobuf.GeneratedMessage.Builder builder) { - super(builder); - } + /** + * + * + *
            +         * Optional. Link to the startup script stored in Cloud Storage. This
            +         * script will be run on the host workstation VM when the VM is created.
            +         * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +         * specifying a startup script, the service account must have [Permission
            +         * to access the bucket and script file in Cloud
            +         * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +         * Otherwise, the script must be publicly accessible.
            +         * Note that the service regularly updates the OS version of the host VM,
            +         * and it is the responsibility of the user to ensure the script stays
            +         * compatible with the OS version.
            +         * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The startupScriptUri to set. + * @return This builder for chaining. + */ + public Builder setStartupScriptUri(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + startupScriptUri_ = value; + bitField0_ |= 0x00008000; + onChanged(); + return this; + } - private Container() { - image_ = ""; - command_ = com.google.protobuf.LazyStringArrayList.emptyList(); - args_ = com.google.protobuf.LazyStringArrayList.emptyList(); - workingDir_ = ""; - } + /** + * + * + *
            +         * Optional. Link to the startup script stored in Cloud Storage. This
            +         * script will be run on the host workstation VM when the VM is created.
            +         * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +         * specifying a startup script, the service account must have [Permission
            +         * to access the bucket and script file in Cloud
            +         * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +         * Otherwise, the script must be publicly accessible.
            +         * Note that the service regularly updates the OS version of the host VM,
            +         * and it is the responsibility of the user to ensure the script stays
            +         * compatible with the OS version.
            +         * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearStartupScriptUri() { + startupScriptUri_ = getDefaultInstance().getStartupScriptUri(); + bitField0_ = (bitField0_ & ~0x00008000); + onChanged(); + return this; + } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_descriptor; - } + /** + * + * + *
            +         * Optional. Link to the startup script stored in Cloud Storage. This
            +         * script will be run on the host workstation VM when the VM is created.
            +         * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +         * specifying a startup script, the service account must have [Permission
            +         * to access the bucket and script file in Cloud
            +         * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +         * Otherwise, the script must be publicly accessible.
            +         * Note that the service regularly updates the OS version of the host VM,
            +         * and it is the responsibility of the user to ensure the script stays
            +         * compatible with the OS version.
            +         * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for startupScriptUri to set. + * @return This builder for chaining. + */ + public Builder setStartupScriptUriBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + startupScriptUri_ = value; + bitField0_ |= 0x00008000; + onChanged(); + return this; + } - @SuppressWarnings({"rawtypes"}) - @java.lang.Override - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( - int number) { - switch (number) { - case 4: - return internalGetEnv(); - default: - throw new RuntimeException("Invalid map field number: " + number); - } - } + private com.google.protobuf.MapField instanceMetadata_; - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.WorkstationConfig.Container.class, - com.google.cloud.workstations.v1.WorkstationConfig.Container.Builder.class); - } + private com.google.protobuf.MapField + internalGetInstanceMetadata() { + if (instanceMetadata_ == null) { + return com.google.protobuf.MapField.emptyMapField( + InstanceMetadataDefaultEntryHolder.defaultEntry); + } + return instanceMetadata_; + } - public static final int IMAGE_FIELD_NUMBER = 1; + private com.google.protobuf.MapField + internalGetMutableInstanceMetadata() { + if (instanceMetadata_ == null) { + instanceMetadata_ = + com.google.protobuf.MapField.newMapField( + InstanceMetadataDefaultEntryHolder.defaultEntry); + } + if (!instanceMetadata_.isMutable()) { + instanceMetadata_ = instanceMetadata_.copy(); + } + bitField0_ |= 0x00010000; + onChanged(); + return instanceMetadata_; + } - @SuppressWarnings("serial") - private volatile java.lang.Object image_ = ""; + public int getInstanceMetadataCount() { + return internalGetInstanceMetadata().getMap().size(); + } - /** - * - * - *
            -     * Optional. A Docker container image that defines a custom environment.
            -     *
            -     * Cloud Workstations provides a number of
            -     * [preconfigured
            -     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -     * but you can create your own
            -     * [custom container
            -     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -     * If using a private image, the `host.gceInstance.serviceAccount` field
            -     * must be specified in the workstation configuration and must have
            -     * permission to pull the specified image. Otherwise, the image must be
            -     * publicly accessible.
            -     * 
            - * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The image. - */ - @java.lang.Override - public java.lang.String getImage() { - java.lang.Object ref = image_; - 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(); - image_ = s; - return s; - } - } + /** + * + * + *
            +         * Optional. Custom metadata to apply to Compute Engine instances.
            +         * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsInstanceMetadata(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetInstanceMetadata().getMap().containsKey(key); + } - /** - * - * - *
            -     * Optional. A Docker container image that defines a custom environment.
            -     *
            -     * Cloud Workstations provides a number of
            -     * [preconfigured
            -     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -     * but you can create your own
            -     * [custom container
            -     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -     * If using a private image, the `host.gceInstance.serviceAccount` field
            -     * must be specified in the workstation configuration and must have
            -     * permission to pull the specified image. Otherwise, the image must be
            -     * publicly accessible.
            -     * 
            - * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for image. - */ - @java.lang.Override - public com.google.protobuf.ByteString getImageBytes() { - java.lang.Object ref = image_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - image_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + /** Use {@link #getInstanceMetadataMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getInstanceMetadata() { + return getInstanceMetadataMap(); + } - public static final int COMMAND_FIELD_NUMBER = 2; + /** + * + * + *
            +         * Optional. Custom metadata to apply to Compute Engine instances.
            +         * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getInstanceMetadataMap() { + return internalGetInstanceMetadata().getMap(); + } - @SuppressWarnings("serial") - private com.google.protobuf.LazyStringArrayList command_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * + * + *
            +         * Optional. Custom metadata to apply to Compute Engine instances.
            +         * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getInstanceMetadataOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = + internalGetInstanceMetadata().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } - /** - * - * - *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            -     * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return A list containing the command. - */ - public com.google.protobuf.ProtocolStringList getCommandList() { - return command_; + /** + * + * + *
            +         * Optional. Custom metadata to apply to Compute Engine instances.
            +         * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getInstanceMetadataOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = + internalGetInstanceMetadata().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public Builder clearInstanceMetadata() { + bitField0_ = (bitField0_ & ~0x00010000); + internalGetMutableInstanceMetadata().getMutableMap().clear(); + return this; + } + + /** + * + * + *
            +         * Optional. Custom metadata to apply to Compute Engine instances.
            +         * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeInstanceMetadata(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableInstanceMetadata().getMutableMap().remove(key); + return this; + } + + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableInstanceMetadata() { + bitField0_ |= 0x00010000; + return internalGetMutableInstanceMetadata().getMutableMap(); + } + + /** + * + * + *
            +         * Optional. Custom metadata to apply to Compute Engine instances.
            +         * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putInstanceMetadata(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableInstanceMetadata().getMutableMap().put(key, value); + bitField0_ |= 0x00010000; + return this; + } + + /** + * + * + *
            +         * Optional. Custom metadata to apply to Compute Engine instances.
            +         * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAllInstanceMetadata( + java.util.Map values) { + internalGetMutableInstanceMetadata().getMutableMap().putAll(values); + bitField0_ |= 0x00010000; + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) + private static final com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance(); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GceInstance parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + private int configCase_ = 0; + + @SuppressWarnings("serial") + private java.lang.Object config_; + + public enum ConfigCase + implements + com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + GCE_INSTANCE(1), + CONFIG_NOT_SET(0); + private final int value; + + private ConfigCase(int value) { + this.value = value; + } + + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static ConfigCase valueOf(int value) { + return forNumber(value); + } + + public static ConfigCase forNumber(int value) { + switch (value) { + case 1: + return GCE_INSTANCE; + case 0: + return CONFIG_NOT_SET; + default: + return null; + } + } + + public int getNumber() { + return this.value; + } + }; + + public ConfigCase getConfigCase() { + return ConfigCase.forNumber(configCase_); } + public static final int GCE_INSTANCE_FIELD_NUMBER = 1; + /** * * *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            +     * Specifies a Compute Engine instance as the host.
                  * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * * - * @return The count of command. + * @return Whether the gceInstance field is set. */ - public int getCommandCount() { - return command_.size(); + @java.lang.Override + public boolean hasGceInstance() { + return configCase_ == 1; } /** * * *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            +     * Specifies a Compute Engine instance as the host.
                  * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * * - * @param index The index of the element to return. - * @return The command at the given index. + * @return The gceInstance. */ - public java.lang.String getCommand(int index) { - return command_.get(index); + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance getGceInstance() { + if (configCase_ == 1) { + return (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) config_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .getDefaultInstance(); } /** * * *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            +     * Specifies a Compute Engine instance as the host.
                  * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the value to return. - * @return The bytes of the command at the given index. + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * */ - public com.google.protobuf.ByteString getCommandBytes(int index) { - return command_.getByteString(index); + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstanceOrBuilder + getGceInstanceOrBuilder() { + if (configCase_ == 1) { + return (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) config_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .getDefaultInstance(); } - public static final int ARGS_FIELD_NUMBER = 3; + private byte memoizedIsInitialized = -1; - @SuppressWarnings("serial") - private com.google.protobuf.LazyStringArrayList args_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return A list containing the args. - */ - public com.google.protobuf.ProtocolStringList getArgsList() { - return args_; + memoizedIsInitialized = 1; + return true; } - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The count of args. - */ - public int getArgsCount() { - return args_.size(); + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (configCase_ == 1) { + output.writeMessage( + 1, (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) config_); + } + getUnknownFields().writeTo(output); } - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the element to return. - * @return The args at the given index. - */ - public java.lang.String getArgs(int index) { - return args_.get(index); + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (configCase_ == 1) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 1, (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) config_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the value to return. - * @return The bytes of the args at the given index. - */ - public com.google.protobuf.ByteString getArgsBytes(int index) { - return args_.getByteString(index); + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.cloud.workstations.v1.WorkstationConfig.Host)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationConfig.Host other = + (com.google.cloud.workstations.v1.WorkstationConfig.Host) obj; + + if (!getConfigCase().equals(other.getConfigCase())) return false; + switch (configCase_) { + case 1: + if (!getGceInstance().equals(other.getGceInstance())) return false; + break; + case 0: + default: + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; } - public static final int ENV_FIELD_NUMBER = 4; + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + switch (configCase_) { + case 1: + hash = (37 * hash) + GCE_INSTANCE_FIELD_NUMBER; + hash = (53 * hash) + getGceInstance().hashCode(); + break; + case 0: + default: + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - private static final class EnvDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_EnvEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); + public static com.google.cloud.workstations.v1.WorkstationConfig.Host parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - @SuppressWarnings("serial") - private com.google.protobuf.MapField env_; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - private com.google.protobuf.MapField internalGetEnv() { - if (env_ == null) { - return com.google.protobuf.MapField.emptyMapField(EnvDefaultEntryHolder.defaultEntry); - } - return env_; + public static com.google.cloud.workstations.v1.WorkstationConfig.Host parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - public int getEnvCount() { - return internalGetEnv().getMap().size(); + public static com.google.cloud.workstations.v1.WorkstationConfig.Host 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.cloud.workstations.v1.WorkstationConfig.Host parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Host parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Host parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Host 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.cloud.workstations.v1.WorkstationConfig.Host parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Host 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.cloud.workstations.v1.WorkstationConfig.Host parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Host parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ @java.lang.Override - public boolean containsEnv(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - return internalGetEnv().getMap().containsKey(key); + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.cloud.workstations.v1.WorkstationConfig.Host prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } - /** Use {@link #getEnvMap()} instead. */ @java.lang.Override - @java.lang.Deprecated - public java.util.Map getEnv() { - return getEnvMap(); + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ @java.lang.Override - public java.util.Map getEnvMap() { - return internalGetEnv().getMap(); + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; } /** * * *
            -     * Optional. Environment variables passed to the container's entrypoint.
            +     * Runtime host for a workstation.
                  * 
            * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.Host} */ - @java.lang.Override - public /* nullable */ java.lang.String getEnvOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetEnv().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } - - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.lang.String getEnvOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetEnv().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.Host) + com.google.cloud.workstations.v1.WorkstationConfig.HostOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_descriptor; } - return map.get(key); - } - public static final int WORKING_DIR_FIELD_NUMBER = 5; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.Host.class, + com.google.cloud.workstations.v1.WorkstationConfig.Host.Builder.class); + } - @SuppressWarnings("serial") - private volatile java.lang.Object workingDir_ = ""; + // Construct using com.google.cloud.workstations.v1.WorkstationConfig.Host.newBuilder() + private Builder() {} - /** - * - * - *
            -     * Optional. If set, overrides the default DIR specified by the image.
            -     * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The workingDir. - */ - @java.lang.Override - public java.lang.String getWorkingDir() { - java.lang.Object ref = workingDir_; - 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(); - workingDir_ = s; - return s; + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); } - } - /** - * - * - *
            -     * Optional. If set, overrides the default DIR specified by the image.
            -     * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for workingDir. - */ - @java.lang.Override - public com.google.protobuf.ByteString getWorkingDirBytes() { - java.lang.Object ref = workingDir_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - workingDir_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (gceInstanceBuilder_ != null) { + gceInstanceBuilder_.clear(); + } + configCase_ = 0; + config_ = null; + return this; } - } - - public static final int RUN_AS_USER_FIELD_NUMBER = 6; - private int runAsUser_ = 0; - - /** - * - * - *
            -     * Optional. If set, overrides the USER specified in the image with the
            -     * given uid.
            -     * 
            - * - * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The runAsUser. - */ - @java.lang.Override - public int getRunAsUser() { - return runAsUser_; - } - - 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(image_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 1, image_); - } - for (int i = 0; i < command_.size(); i++) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, command_.getRaw(i)); - } - for (int i = 0; i < args_.size(); i++) { - com.google.protobuf.GeneratedMessage.writeString(output, 3, args_.getRaw(i)); + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_descriptor; } - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetEnv(), EnvDefaultEntryHolder.defaultEntry, 4); - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workingDir_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 5, workingDir_); + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationConfig.Host.getDefaultInstance(); } - if (runAsUser_ != 0) { - output.writeInt32(6, runAsUser_); + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host build() { + com.google.cloud.workstations.v1.WorkstationConfig.Host result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; } - getUnknownFields().writeTo(output); - } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host buildPartial() { + com.google.cloud.workstations.v1.WorkstationConfig.Host result = + new com.google.cloud.workstations.v1.WorkstationConfig.Host(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + buildPartialOneofs(result); + onBuilt(); + return result; + } - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(image_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, image_); + private void buildPartial0(com.google.cloud.workstations.v1.WorkstationConfig.Host result) { + int from_bitField0_ = bitField0_; } - { - int dataSize = 0; - for (int i = 0; i < command_.size(); i++) { - dataSize += computeStringSizeNoTag(command_.getRaw(i)); + + private void buildPartialOneofs( + com.google.cloud.workstations.v1.WorkstationConfig.Host result) { + result.configCase_ = configCase_; + result.config_ = this.config_; + if (configCase_ == 1 && gceInstanceBuilder_ != null) { + result.config_ = gceInstanceBuilder_.build(); } - size += dataSize; - size += 1 * getCommandList().size(); } - { - int dataSize = 0; - for (int i = 0; i < args_.size(); i++) { - dataSize += computeStringSizeNoTag(args_.getRaw(i)); + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1.WorkstationConfig.Host) { + return mergeFrom((com.google.cloud.workstations.v1.WorkstationConfig.Host) other); + } else { + super.mergeFrom(other); + return this; } - size += dataSize; - size += 1 * getArgsList().size(); - } - for (java.util.Map.Entry entry : - internalGetEnv().getMap().entrySet()) { - com.google.protobuf.MapEntry env__ = - EnvDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, env__); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workingDir_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(5, workingDir_); } - if (runAsUser_ != 0) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(6, runAsUser_); + + public Builder mergeFrom(com.google.cloud.workstations.v1.WorkstationConfig.Host other) { + if (other == com.google.cloud.workstations.v1.WorkstationConfig.Host.getDefaultInstance()) + return this; + switch (other.getConfigCase()) { + case GCE_INSTANCE: + { + mergeGceInstance(other.getGceInstance()); + break; + } + case CONFIG_NOT_SET: + { + break; + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { + @java.lang.Override + public final boolean isInitialized() { return true; } - if (!(obj instanceof com.google.cloud.workstations.v1.WorkstationConfig.Container)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1.WorkstationConfig.Container other = - (com.google.cloud.workstations.v1.WorkstationConfig.Container) obj; - - if (!getImage().equals(other.getImage())) return false; - if (!getCommandList().equals(other.getCommandList())) return false; - if (!getArgsList().equals(other.getArgsList())) return false; - if (!internalGetEnv().equals(other.internalGetEnv())) return false; - if (!getWorkingDir().equals(other.getWorkingDir())) return false; - if (getRunAsUser() != other.getRunAsUser()) 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) + IMAGE_FIELD_NUMBER; - hash = (53 * hash) + getImage().hashCode(); - if (getCommandCount() > 0) { - hash = (37 * hash) + COMMAND_FIELD_NUMBER; - hash = (53 * hash) + getCommandList().hashCode(); - } - if (getArgsCount() > 0) { - hash = (37 * hash) + ARGS_FIELD_NUMBER; - hash = (53 * hash) + getArgsList().hashCode(); - } - if (!internalGetEnv().getMap().isEmpty()) { - hash = (37 * hash) + ENV_FIELD_NUMBER; - hash = (53 * hash) + internalGetEnv().hashCode(); + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + input.readMessage( + internalGetGceInstanceFieldBuilder().getBuilder(), extensionRegistry); + configCase_ = 1; + break; + } // case 10 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; } - hash = (37 * hash) + WORKING_DIR_FIELD_NUMBER; - hash = (53 * hash) + getWorkingDir().hashCode(); - hash = (37 * hash) + RUN_AS_USER_FIELD_NUMBER; - hash = (53 * hash) + getRunAsUser(); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Container parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Container parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Container parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Container 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.cloud.workstations.v1.WorkstationConfig.Container parseFrom( - byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Container parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Container parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Container 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.cloud.workstations.v1.WorkstationConfig.Container parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Container 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.cloud.workstations.v1.WorkstationConfig.Container parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Container 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(); - } + private int configCase_ = 0; + private java.lang.Object config_; - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + public ConfigCase getConfigCase() { + return ConfigCase.forNumber(configCase_); + } - public static Builder newBuilder( - com.google.cloud.workstations.v1.WorkstationConfig.Container prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + public Builder clearConfig() { + configCase_ = 0; + config_ = null; + onChanged(); + return this; + } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + private int bitField0_; - @java.lang.Override - protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstanceOrBuilder> + gceInstanceBuilder_; - /** - * - * - *
            -     * A Docker container.
            -     * 
            - * - * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.Container} - */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.Container) - com.google.cloud.workstations.v1.WorkstationConfig.ContainerOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_descriptor; + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + * + * @return Whether the gceInstance field is set. + */ + @java.lang.Override + public boolean hasGceInstance() { + return configCase_ == 1; } - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( - int number) { - switch (number) { - case 4: - return internalGetEnv(); - default: - throw new RuntimeException("Invalid map field number: " + number); + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + * + * @return The gceInstance. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance getGceInstance() { + if (gceInstanceBuilder_ == null) { + if (configCase_ == 1) { + return (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) config_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .getDefaultInstance(); + } else { + if (configCase_ == 1) { + return gceInstanceBuilder_.getMessage(); + } + return com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .getDefaultInstance(); } } - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( - int number) { - switch (number) { - case 4: - return internalGetMutableEnv(); - default: - throw new RuntimeException("Invalid map field number: " + number); + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + */ + public Builder setGceInstance( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance value) { + if (gceInstanceBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + config_ = value; + onChanged(); + } else { + gceInstanceBuilder_.setMessage(value); } - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.WorkstationConfig.Container.class, - com.google.cloud.workstations.v1.WorkstationConfig.Container.Builder.class); - } - - // Construct using com.google.cloud.workstations.v1.WorkstationConfig.Container.newBuilder() - private Builder() {} - - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - } - - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - image_ = ""; - command_ = com.google.protobuf.LazyStringArrayList.emptyList(); - args_ = com.google.protobuf.LazyStringArrayList.emptyList(); - internalGetMutableEnv().clear(); - workingDir_ = ""; - runAsUser_ = 0; + configCase_ = 1; return this; } - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_descriptor; - } - - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Container - getDefaultInstanceForType() { - return com.google.cloud.workstations.v1.WorkstationConfig.Container.getDefaultInstance(); - } - - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Container build() { - com.google.cloud.workstations.v1.WorkstationConfig.Container result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } - - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Container buildPartial() { - com.google.cloud.workstations.v1.WorkstationConfig.Container result = - new com.google.cloud.workstations.v1.WorkstationConfig.Container(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; - } - - private void buildPartial0( - com.google.cloud.workstations.v1.WorkstationConfig.Container result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.image_ = image_; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - command_.makeImmutable(); - result.command_ = command_; - } - if (((from_bitField0_ & 0x00000004) != 0)) { - args_.makeImmutable(); - result.args_ = args_; - } - if (((from_bitField0_ & 0x00000008) != 0)) { - result.env_ = internalGetEnv(); - result.env_.makeImmutable(); - } - if (((from_bitField0_ & 0x00000010) != 0)) { - result.workingDir_ = workingDir_; - } - if (((from_bitField0_ & 0x00000020) != 0)) { - result.runAsUser_ = runAsUser_; - } - } - - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.cloud.workstations.v1.WorkstationConfig.Container) { - return mergeFrom((com.google.cloud.workstations.v1.WorkstationConfig.Container) other); + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + */ + public Builder setGceInstance( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Builder + builderForValue) { + if (gceInstanceBuilder_ == null) { + config_ = builderForValue.build(); + onChanged(); } else { - super.mergeFrom(other); - return this; + gceInstanceBuilder_.setMessage(builderForValue.build()); } + configCase_ = 1; + return this; } - public Builder mergeFrom(com.google.cloud.workstations.v1.WorkstationConfig.Container other) { - if (other - == com.google.cloud.workstations.v1.WorkstationConfig.Container.getDefaultInstance()) - return this; - if (!other.getImage().isEmpty()) { - image_ = other.image_; - bitField0_ |= 0x00000001; - onChanged(); - } - if (!other.command_.isEmpty()) { - if (command_.isEmpty()) { - command_ = other.command_; - bitField0_ |= 0x00000002; + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + */ + public Builder mergeGceInstance( + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance value) { + if (gceInstanceBuilder_ == null) { + if (configCase_ == 1 + && config_ + != com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .getDefaultInstance()) { + config_ = + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.newBuilder( + (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) + config_) + .mergeFrom(value) + .buildPartial(); } else { - ensureCommandIsMutable(); - command_.addAll(other.command_); + config_ = value; } onChanged(); - } - if (!other.args_.isEmpty()) { - if (args_.isEmpty()) { - args_ = other.args_; - bitField0_ |= 0x00000004; + } else { + if (configCase_ == 1) { + gceInstanceBuilder_.mergeFrom(value); } else { - ensureArgsIsMutable(); - args_.addAll(other.args_); + gceInstanceBuilder_.setMessage(value); } - onChanged(); - } - internalGetMutableEnv().mergeFrom(other.internalGetEnv()); - bitField0_ |= 0x00000008; - if (!other.getWorkingDir().isEmpty()) { - workingDir_ = other.workingDir_; - bitField0_ |= 0x00000010; - onChanged(); } - if (other.getRunAsUser() != 0) { - setRunAsUser(other.getRunAsUser()); + configCase_ = 1; + return this; + } + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + */ + public Builder clearGceInstance() { + if (gceInstanceBuilder_ == null) { + if (configCase_ == 1) { + configCase_ = 0; + config_ = null; + onChanged(); + } + } else { + if (configCase_ == 1) { + configCase_ = 0; + config_ = null; + } + gceInstanceBuilder_.clear(); } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); return this; } - @java.lang.Override - public final boolean isInitialized() { - return true; + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Builder + getGceInstanceBuilder() { + return internalGetGceInstanceFieldBuilder().getBuilder(); } + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + */ @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - image_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureCommandIsMutable(); - command_.add(s); - break; - } // case 18 - case 26: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureArgsIsMutable(); - args_.add(s); - break; - } // case 26 - case 34: - { - com.google.protobuf.MapEntry env__ = - input.readMessage( - EnvDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableEnv().getMutableMap().put(env__.getKey(), env__.getValue()); - bitField0_ |= 0x00000008; - break; - } // case 34 - case 42: - { - workingDir_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000010; - break; - } // case 42 - case 48: - { - runAsUser_ = input.readInt32(); - bitField0_ |= 0x00000020; - break; - } // case 48 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; - } - - private int bitField0_; - - private java.lang.Object image_ = ""; - - /** - * - * - *
            -       * Optional. A Docker container image that defines a custom environment.
            -       *
            -       * Cloud Workstations provides a number of
            -       * [preconfigured
            -       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -       * but you can create your own
            -       * [custom container
            -       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -       * If using a private image, the `host.gceInstance.serviceAccount` field
            -       * must be specified in the workstation configuration and must have
            -       * permission to pull the specified image. Otherwise, the image must be
            -       * publicly accessible.
            -       * 
            - * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The image. - */ - public java.lang.String getImage() { - java.lang.Object ref = image_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - image_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - - /** - * - * - *
            -       * Optional. A Docker container image that defines a custom environment.
            -       *
            -       * Cloud Workstations provides a number of
            -       * [preconfigured
            -       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -       * but you can create your own
            -       * [custom container
            -       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -       * If using a private image, the `host.gceInstance.serviceAccount` field
            -       * must be specified in the workstation configuration and must have
            -       * permission to pull the specified image. Otherwise, the image must be
            -       * publicly accessible.
            -       * 
            - * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for image. - */ - public com.google.protobuf.ByteString getImageBytes() { - java.lang.Object ref = image_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - image_ = b; - return b; + public com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstanceOrBuilder + getGceInstanceOrBuilder() { + if ((configCase_ == 1) && (gceInstanceBuilder_ != null)) { + return gceInstanceBuilder_.getMessageOrBuilder(); } else { - return (com.google.protobuf.ByteString) ref; + if (configCase_ == 1) { + return (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) config_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .getDefaultInstance(); } } @@ -10077,2327 +11479,3137 @@ public com.google.protobuf.ByteString getImageBytes() { * * *
            -       * Optional. A Docker container image that defines a custom environment.
            -       *
            -       * Cloud Workstations provides a number of
            -       * [preconfigured
            -       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -       * but you can create your own
            -       * [custom container
            -       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -       * If using a private image, the `host.gceInstance.serviceAccount` field
            -       * must be specified in the workstation configuration and must have
            -       * permission to pull the specified image. Otherwise, the image must be
            -       * publicly accessible.
            +       * Specifies a Compute Engine instance as the host.
                    * 
            * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The image to set. - * @return This builder for chaining. + * .google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance gce_instance = 1; + * */ - public Builder setImage(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstanceOrBuilder> + internalGetGceInstanceFieldBuilder() { + if (gceInstanceBuilder_ == null) { + if (!(configCase_ == 1)) { + config_ = + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance + .getDefaultInstance(); + } + gceInstanceBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstanceOrBuilder>( + (com.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance) config_, + getParentForChildren(), + isClean()); + config_ = null; } - image_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - - /** - * - * - *
            -       * Optional. A Docker container image that defines a custom environment.
            -       *
            -       * Cloud Workstations provides a number of
            -       * [preconfigured
            -       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -       * but you can create your own
            -       * [custom container
            -       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -       * If using a private image, the `host.gceInstance.serviceAccount` field
            -       * must be specified in the workstation configuration and must have
            -       * permission to pull the specified image. Otherwise, the image must be
            -       * publicly accessible.
            -       * 
            - * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearImage() { - image_ = getDefaultInstance().getImage(); - bitField0_ = (bitField0_ & ~0x00000001); + configCase_ = 1; onChanged(); - return this; + return gceInstanceBuilder_; } - /** - * - * - *
            -       * Optional. A Docker container image that defines a custom environment.
            -       *
            -       * Cloud Workstations provides a number of
            -       * [preconfigured
            -       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -       * but you can create your own
            -       * [custom container
            -       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -       * If using a private image, the `host.gceInstance.serviceAccount` field
            -       * must be specified in the workstation configuration and must have
            -       * permission to pull the specified image. Otherwise, the image must be
            -       * publicly accessible.
            -       * 
            - * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for image to set. - * @return This builder for chaining. - */ - public Builder setImageBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - image_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.Host) + } - private com.google.protobuf.LazyStringArrayList command_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.Host) + private static final com.google.cloud.workstations.v1.WorkstationConfig.Host DEFAULT_INSTANCE; - private void ensureCommandIsMutable() { - if (!command_.isModifiable()) { - command_ = new com.google.protobuf.LazyStringArrayList(command_); - } - bitField0_ |= 0x00000002; - } + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1.WorkstationConfig.Host(); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Host getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Host parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface PersistentDirectoryOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + * + * @return Whether the gcePd field is set. + */ + boolean hasGcePd(); + + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + * + * @return The gcePd. + */ + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk + getGcePd(); + + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + */ + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDiskOrBuilder + getGcePdOrBuilder(); + + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +     * availability disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + * + * @return Whether the gceHd field is set. + */ + boolean hasGceHd(); + + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +     * availability disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + * + * @return The gceHd. + */ + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + getGceHd(); + + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +     * availability disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailabilityOrBuilder + getGceHdOrBuilder(); + + /** + * + * + *
            +     * Optional. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The mountPath. + */ + java.lang.String getMountPath(); + + /** + * + * + *
            +     * Optional. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for mountPath. + */ + com.google.protobuf.ByteString getMountPathBytes(); + + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.DirectoryTypeCase + getDirectoryTypeCase(); + } + + /** + * + * + *
            +   * A directory to persist across workstation sessions. Updates to this field
            +   * will not update existing workstations and will only take effect on new
            +   * workstations.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory} + */ + public static final class PersistentDirectory extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) + PersistentDirectoryOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "PersistentDirectory"); + } + + // Use PersistentDirectory.newBuilder() to construct. + private PersistentDirectory(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private PersistentDirectory() { + mountPath_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.class, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder.class); + } + + public interface GceRegionalPersistentDiskOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) + com.google.protobuf.MessageOrBuilder { /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Optional. The GB capacity of a persistent home directory for each
            +       * workstation created with this configuration. Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +       * is set.
            +       *
            +       * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +       * Defaults to `200`. If less than `200` GB, the
            +       * [disk_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            +       * must be
            +       * `"pd-balanced"` or `"pd-ssd"`.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; * - * @return A list containing the command. + * @return The sizeGb. */ - public com.google.protobuf.ProtocolStringList getCommandList() { - command_.makeImmutable(); - return command_; - } + int getSizeGb(); /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Optional. Maximum size in GB to which this persistent directory can be
            +       * resized. Defaults to unlimited if not set.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * int32 max_size_gb = 7 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The count of command. + * @return The maxSizeGb. */ - public int getCommandCount() { - return command_.size(); - } + int getMaxSizeGb(); /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Optional. Type of file system that the disk should be formatted with.
            +       * The workstation image must support this file system type. Must be empty
            +       * if
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +       * is set. Defaults to `"ext4"`.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @param index The index of the element to return. - * @return The command at the given index. + * @return The fsType. */ - public java.lang.String getCommand(int index) { - return command_.get(index); - } + java.lang.String getFsType(); /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Optional. Type of file system that the disk should be formatted with.
            +       * The workstation image must support this file system type. Must be empty
            +       * if
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +       * is set. Defaults to `"ext4"`.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @param index The index of the value to return. - * @return The bytes of the command at the given index. + * @return The bytes for fsType. */ - public com.google.protobuf.ByteString getCommandBytes(int index) { - return command_.getByteString(index); - } + com.google.protobuf.ByteString getFsTypeBytes(); /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Optional. The [type of the persistent
            +       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +       * home directory. Defaults to `"pd-standard"`.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; * - * @param index The index to set the value at. - * @param value The command to set. - * @return This builder for chaining. + * @return The diskType. */ - public Builder setCommand(int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureCommandIsMutable(); - command_.set(index, value); - bitField0_ |= 0x00000002; - onChanged(); - return this; - } + java.lang.String getDiskType(); /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Optional. The [type of the persistent
            +       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +       * home directory. Defaults to `"pd-standard"`.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The command to add. - * @return This builder for chaining. + * @return The bytes for diskType. */ - public Builder addCommand(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureCommandIsMutable(); - command_.add(value); - bitField0_ |= 0x00000002; - onChanged(); - return this; - } + com.google.protobuf.ByteString getDiskTypeBytes(); /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +       * and
            +       * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; * - * @param values The command to add. - * @return This builder for chaining. + * @return The sourceSnapshot. */ - public Builder addAllCommand(java.lang.Iterable values) { - ensureCommandIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, command_); - bitField0_ |= 0x00000002; - onChanged(); - return this; - } + java.lang.String getSourceSnapshot(); /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +       * and
            +       * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; * - * @return This builder for chaining. + * @return The bytes for sourceSnapshot. */ - public Builder clearCommand() { - command_ = com.google.protobuf.LazyStringArrayList.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); - ; - onChanged(); - return this; - } + com.google.protobuf.ByteString getSourceSnapshotBytes(); /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param value The bytes of the command to add. - * @return This builder for chaining. + * @return The enum numeric value on the wire for reclaimPolicy. */ - public Builder addCommandBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - ensureCommandIsMutable(); - command_.add(value); - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - - private com.google.protobuf.LazyStringArrayList args_ = - com.google.protobuf.LazyStringArrayList.emptyList(); - - private void ensureArgsIsMutable() { - if (!args_.isModifiable()) { - args_ = new com.google.protobuf.LazyStringArrayList(args_); - } - bitField0_ |= 0x00000004; - } + int getReclaimPolicyValue(); /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
                    * 
            * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return A list containing the args. + * @return The reclaimPolicy. */ - public com.google.protobuf.ProtocolStringList getArgsList() { - args_.makeImmutable(); - return args_; - } + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy + getReclaimPolicy(); /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
                    * 
            * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The count of args. + * @return Whether the archiveTimeout field is set. */ - public int getArgsCount() { - return args_.size(); - } + boolean hasArchiveTimeout(); /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
                    * 
            * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param index The index of the element to return. - * @return The args at the given index. + * @return The archiveTimeout. */ - public java.lang.String getArgs(int index) { - return args_.get(index); - } + com.google.protobuf.Duration getArchiveTimeout(); /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            -       * 
            + * Optional. Number of seconds to wait after initially creating or + * subsequently shutting down the workstation before converting its disk + * into a snapshot. This generally saves costs at the expense of greater + * startup time on next workstation start, as the service will need to + * create a disk from the archival snapshot. * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * A value of `"0s"` indicates that the disk will never be archived. + *
            * - * @param index The index of the value to return. - * @return The bytes of the args at the given index. + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public com.google.protobuf.ByteString getArgsBytes(int index) { - return args_.getByteString(index); + com.google.protobuf.DurationOrBuilder getArchiveTimeoutOrBuilder(); + } + + /** + * + * + *
            +     * A Persistent Directory backed by a Compute Engine regional persistent
            +     * disk. The
            +     * [persistent_directories][google.cloud.workstations.v1.WorkstationConfig.persistent_directories]
            +     * field is repeated, but it may contain only one entry. It creates a
            +     * [persistent
            +     * disk](https://cloud.google.com/compute/docs/disks/persistent-disks) that
            +     * mounts to the workstation VM at `/home` when the session starts and
            +     * detaches when the session ends. If this field is empty, workstations
            +     * created with this configuration do not have a persistent home
            +     * directory.
            +     * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk} + */ + public static final class GceRegionalPersistentDisk extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) + GceRegionalPersistentDiskOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "GceRegionalPersistentDisk"); + } + + // Use GceRegionalPersistentDisk.newBuilder() to construct. + private GceRegionalPersistentDisk(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private GceRegionalPersistentDisk() { + fsType_ = ""; + diskType_ = ""; + sourceSnapshot_ = ""; + reclaimPolicy_ = 0; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.class, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.Builder.class); } /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            +       * Value representing what should happen to the disk after the workstation
            +       * is deleted.
                    * 
            * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index to set the value at. - * @param value The args to set. - * @return This builder for chaining. + * Protobuf enum {@code + * google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy} */ - public Builder setArgs(int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public enum ReclaimPolicy implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
            +         * Do not use.
            +         * 
            + * + * RECLAIM_POLICY_UNSPECIFIED = 0; + */ + RECLAIM_POLICY_UNSPECIFIED(0), + /** + * + * + *
            +         * Delete the persistent disk when deleting the workstation.
            +         * 
            + * + * DELETE = 1; + */ + DELETE(1), + /** + * + * + *
            +         * Keep the persistent disk when deleting the workstation.
            +         * An administrator must manually delete the disk.
            +         * 
            + * + * RETAIN = 2; + */ + RETAIN(2), + UNRECOGNIZED(-1), + ; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "ReclaimPolicy"); } - ensureArgsIsMutable(); - args_.set(index, value); - bitField0_ |= 0x00000004; - onChanged(); - return this; + + /** + * + * + *
            +         * Do not use.
            +         * 
            + * + * RECLAIM_POLICY_UNSPECIFIED = 0; + */ + public static final int RECLAIM_POLICY_UNSPECIFIED_VALUE = 0; + + /** + * + * + *
            +         * Delete the persistent disk when deleting the workstation.
            +         * 
            + * + * DELETE = 1; + */ + public static final int DELETE_VALUE = 1; + + /** + * + * + *
            +         * Keep the persistent disk when deleting the workstation.
            +         * An administrator must manually delete the disk.
            +         * 
            + * + * RETAIN = 2; + */ + public static final int RETAIN_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 ReclaimPolicy 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 ReclaimPolicy forNumber(int value) { + switch (value) { + case 0: + return RECLAIM_POLICY_UNSPECIFIED; + case 1: + return DELETE; + case 2: + return RETAIN; + default: + return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + + private static final com.google.protobuf.Internal.EnumLiteMap + internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public ReclaimPolicy findValueByNumber(int number) { + return ReclaimPolicy.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + + public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { + return getDescriptor(); + } + + public static com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDescriptor() + .getEnumTypes() + .get(0); + } + + private static final ReclaimPolicy[] VALUES = values(); + + public static ReclaimPolicy valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private ReclaimPolicy(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy) } + private int bitField0_; + public static final int SIZE_GB_FIELD_NUMBER = 1; + private int sizeGb_ = 0; + /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            +       * Optional. The GB capacity of a persistent home directory for each
            +       * workstation created with this configuration. Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +       * is set.
            +       *
            +       * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +       * Defaults to `200`. If less than `200` GB, the
            +       * [disk_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            +       * must be
            +       * `"pd-balanced"` or `"pd-ssd"`.
                    * 
            * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The args to add. - * @return This builder for chaining. + * @return The sizeGb. */ - public Builder addArgs(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureArgsIsMutable(); - args_.add(value); - bitField0_ |= 0x00000004; - onChanged(); - return this; + @java.lang.Override + public int getSizeGb() { + return sizeGb_; } + public static final int MAX_SIZE_GB_FIELD_NUMBER = 7; + private int maxSizeGb_ = 0; + /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            +       * Optional. Maximum size in GB to which this persistent directory can be
            +       * resized. Defaults to unlimited if not set.
                    * 
            * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * int32 max_size_gb = 7 [(.google.api.field_behavior) = OPTIONAL]; * - * @param values The args to add. - * @return This builder for chaining. + * @return The maxSizeGb. */ - public Builder addAllArgs(java.lang.Iterable values) { - ensureArgsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, args_); - bitField0_ |= 0x00000004; - onChanged(); - return this; + @java.lang.Override + public int getMaxSizeGb() { + return maxSizeGb_; } + public static final int FS_TYPE_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object fsType_ = ""; + /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            +       * Optional. Type of file system that the disk should be formatted with.
            +       * The workstation image must support this file system type. Must be empty
            +       * if
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +       * is set. Defaults to `"ext4"`.
                    * 
            * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return This builder for chaining. + * @return The fsType. */ - public Builder clearArgs() { - args_ = com.google.protobuf.LazyStringArrayList.emptyList(); - bitField0_ = (bitField0_ & ~0x00000004); - ; - onChanged(); - return this; + @java.lang.Override + public java.lang.String getFsType() { + java.lang.Object ref = fsType_; + 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(); + fsType_ = s; + return s; + } } /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            -       * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * Optional. Type of file system that the disk should be formatted with. + * The workstation image must support this file system type. Must be empty + * if + * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot] + * is set. Defaults to `"ext4"`. + *
            * - * @param value The bytes of the args to add. - * @return This builder for chaining. + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for fsType. */ - public Builder addArgsBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + @java.lang.Override + public com.google.protobuf.ByteString getFsTypeBytes() { + java.lang.Object ref = fsType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + fsType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - checkByteStringIsUtf8(value); - ensureArgsIsMutable(); - args_.add(value); - bitField0_ |= 0x00000004; - onChanged(); - return this; } - private com.google.protobuf.MapField env_; + public static final int DISK_TYPE_FIELD_NUMBER = 3; - private com.google.protobuf.MapField internalGetEnv() { - if (env_ == null) { - return com.google.protobuf.MapField.emptyMapField(EnvDefaultEntryHolder.defaultEntry); - } - return env_; - } + @SuppressWarnings("serial") + private volatile java.lang.Object diskType_ = ""; - private com.google.protobuf.MapField - internalGetMutableEnv() { - if (env_ == null) { - env_ = com.google.protobuf.MapField.newMapField(EnvDefaultEntryHolder.defaultEntry); - } - if (!env_.isMutable()) { - env_ = env_.copy(); + /** + * + * + *
            +       * Optional. The [type of the persistent
            +       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +       * home directory. Defaults to `"pd-standard"`.
            +       * 
            + * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The diskType. + */ + @java.lang.Override + public java.lang.String getDiskType() { + java.lang.Object ref = diskType_; + 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(); + diskType_ = s; + return s; } - bitField0_ |= 0x00000008; - onChanged(); - return env_; - } - - public int getEnvCount() { - return internalGetEnv().getMap().size(); } /** * * *
            -       * Optional. Environment variables passed to the container's entrypoint.
            +       * Optional. The [type of the persistent
            +       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +       * home directory. Defaults to `"pd-standard"`.
                    * 
            * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for diskType. */ @java.lang.Override - public boolean containsEnv(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public com.google.protobuf.ByteString getDiskTypeBytes() { + java.lang.Object ref = diskType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + diskType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - return internalGetEnv().getMap().containsKey(key); } - /** Use {@link #getEnvMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getEnv() { - return getEnvMap(); - } + public static final int SOURCE_SNAPSHOT_FIELD_NUMBER = 5; + + @SuppressWarnings("serial") + private volatile java.lang.Object sourceSnapshot_ = ""; /** * * *
            -       * Optional. Environment variables passed to the container's entrypoint.
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +       * and
            +       * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
                    * 
            * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceSnapshot. */ @java.lang.Override - public java.util.Map getEnvMap() { - return internalGetEnv().getMap(); + public java.lang.String getSourceSnapshot() { + java.lang.Object ref = sourceSnapshot_; + 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(); + sourceSnapshot_ = s; + return s; + } } /** * * *
            -       * Optional. Environment variables passed to the container's entrypoint.
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +       * and
            +       * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
                    * 
            * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceSnapshot. */ @java.lang.Override - public /* nullable */ java.lang.String getEnvOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public com.google.protobuf.ByteString getSourceSnapshotBytes() { + java.lang.Object ref = sourceSnapshot_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceSnapshot_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - java.util.Map map = internalGetEnv().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; } + public static final int RECLAIM_POLICY_FIELD_NUMBER = 4; + private int reclaimPolicy_ = 0; + /** * * *
            -       * Optional. Environment variables passed to the container's entrypoint.
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
                    * 
            * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for reclaimPolicy. */ @java.lang.Override - public java.lang.String getEnvOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetEnv().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); - } - return map.get(key); - } - - public Builder clearEnv() { - bitField0_ = (bitField0_ & ~0x00000008); - internalGetMutableEnv().getMutableMap().clear(); - return this; + public int getReclaimPolicyValue() { + return reclaimPolicy_; } /** * * *
            -       * Optional. Environment variables passed to the container's entrypoint.
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
                    * 
            * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The reclaimPolicy. */ - public Builder removeEnv(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - internalGetMutableEnv().getMutableMap().remove(key); - return this; + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy + getReclaimPolicy() { + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy + result = + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy.forNumber(reclaimPolicy_); + return result == null + ? com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy.UNRECOGNIZED + : result; } - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableEnv() { - bitField0_ |= 0x00000008; - return internalGetMutableEnv().getMutableMap(); - } + public static final int ARCHIVE_TIMEOUT_FIELD_NUMBER = 6; + private com.google.protobuf.Duration archiveTimeout_; /** * * *
            -       * Optional. Environment variables passed to the container's entrypoint.
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
                    * 
            * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the archiveTimeout field is set. */ - public Builder putEnv(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); - } - if (value == null) { - throw new NullPointerException("map value"); - } - internalGetMutableEnv().getMutableMap().put(key, value); - bitField0_ |= 0x00000008; - return this; + @java.lang.Override + public boolean hasArchiveTimeout() { + return ((bitField0_ & 0x00000001) != 0); } /** * * *
            -       * Optional. Environment variables passed to the container's entrypoint.
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
                    * 
            * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The archiveTimeout. */ - public Builder putAllEnv(java.util.Map values) { - internalGetMutableEnv().getMutableMap().putAll(values); - bitField0_ |= 0x00000008; - return this; + @java.lang.Override + public com.google.protobuf.Duration getArchiveTimeout() { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; } - private java.lang.Object workingDir_ = ""; - /** * * *
            -       * Optional. If set, overrides the default DIR specified by the image.
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
                    * 
            * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The workingDir. + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public java.lang.String getWorkingDir() { - java.lang.Object ref = workingDir_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - workingDir_ = s; - return s; - } else { - return (java.lang.String) ref; - } + @java.lang.Override + public com.google.protobuf.DurationOrBuilder getArchiveTimeoutOrBuilder() { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; } - /** - * - * - *
            -       * Optional. If set, overrides the default DIR specified by the image.
            -       * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for workingDir. - */ - public com.google.protobuf.ByteString getWorkingDirBytes() { - java.lang.Object ref = workingDir_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - workingDir_ = 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; } - /** - * - * - *
            -       * Optional. If set, overrides the default DIR specified by the image.
            -       * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The workingDir to set. - * @return This builder for chaining. - */ - public Builder setWorkingDir(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (sizeGb_ != 0) { + output.writeInt32(1, sizeGb_); } - workingDir_ = value; - bitField0_ |= 0x00000010; - onChanged(); - return this; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fsType_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, fsType_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(diskType_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, diskType_); + } + if (reclaimPolicy_ + != com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy.RECLAIM_POLICY_UNSPECIFIED + .getNumber()) { + output.writeEnum(4, reclaimPolicy_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 5, sourceSnapshot_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(6, getArchiveTimeout()); + } + if (maxSizeGb_ != 0) { + output.writeInt32(7, maxSizeGb_); + } + getUnknownFields().writeTo(output); } - /** - * - * - *
            -       * Optional. If set, overrides the default DIR specified by the image.
            -       * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearWorkingDir() { - workingDir_ = getDefaultInstance().getWorkingDir(); - bitField0_ = (bitField0_ & ~0x00000010); - onChanged(); - return this; - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - /** - * - * - *
            -       * Optional. If set, overrides the default DIR specified by the image.
            -       * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for workingDir to set. - * @return This builder for chaining. - */ - public Builder setWorkingDirBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + size = 0; + if (sizeGb_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, sizeGb_); } - checkByteStringIsUtf8(value); - workingDir_ = value; - bitField0_ |= 0x00000010; - onChanged(); - return this; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fsType_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, fsType_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(diskType_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, diskType_); + } + if (reclaimPolicy_ + != com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy.RECLAIM_POLICY_UNSPECIFIED + .getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(4, reclaimPolicy_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(5, sourceSnapshot_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getArchiveTimeout()); + } + if (maxSizeGb_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(7, maxSizeGb_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - private int runAsUser_; + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + other = + (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + obj; + + if (getSizeGb() != other.getSizeGb()) return false; + if (getMaxSizeGb() != other.getMaxSizeGb()) return false; + if (!getFsType().equals(other.getFsType())) return false; + if (!getDiskType().equals(other.getDiskType())) return false; + if (!getSourceSnapshot().equals(other.getSourceSnapshot())) return false; + if (reclaimPolicy_ != other.reclaimPolicy_) return false; + if (hasArchiveTimeout() != other.hasArchiveTimeout()) return false; + if (hasArchiveTimeout()) { + if (!getArchiveTimeout().equals(other.getArchiveTimeout())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - /** - * - * - *
            -       * Optional. If set, overrides the USER specified in the image with the
            -       * given uid.
            -       * 
            - * - * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The runAsUser. - */ @java.lang.Override - public int getRunAsUser() { - return runAsUser_; + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + SIZE_GB_FIELD_NUMBER; + hash = (53 * hash) + getSizeGb(); + hash = (37 * hash) + MAX_SIZE_GB_FIELD_NUMBER; + hash = (53 * hash) + getMaxSizeGb(); + hash = (37 * hash) + FS_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getFsType().hashCode(); + hash = (37 * hash) + DISK_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getDiskType().hashCode(); + hash = (37 * hash) + SOURCE_SNAPSHOT_FIELD_NUMBER; + hash = (53 * hash) + getSourceSnapshot().hashCode(); + hash = (37 * hash) + RECLAIM_POLICY_FIELD_NUMBER; + hash = (53 * hash) + reclaimPolicy_; + if (hasArchiveTimeout()) { + hash = (37 * hash) + ARCHIVE_TIMEOUT_FIELD_NUMBER; + hash = (53 * hash) + getArchiveTimeout().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - /** - * - * - *
            -       * Optional. If set, overrides the USER specified in the image with the
            -       * given uid.
            -       * 
            - * - * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The runAsUser to set. - * @return This builder for chaining. - */ - public Builder setRunAsUser(int value) { + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - runAsUser_ = value; - bitField0_ |= 0x00000020; - onChanged(); - return this; + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - /** - * - * - *
            -       * Optional. If set, overrides the USER specified in the image with the
            -       * given uid.
            -       * 
            - * - * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearRunAsUser() { - bitField0_ = (bitField0_ & ~0x00000020); - runAsUser_ = 0; - onChanged(); - return this; + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.Container) - } - - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.Container) - private static final com.google.cloud.workstations.v1.WorkstationConfig.Container - DEFAULT_INSTANCE; - - static { - DEFAULT_INSTANCE = new com.google.cloud.workstations.v1.WorkstationConfig.Container(); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.Container - getDefaultInstance() { - return DEFAULT_INSTANCE; - } - - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public Container parsePartialFrom( - com.google.protobuf.CodedInputStream input, + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom( + com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); - } - }; + return PARSER.parseFrom(data, extensionRegistry); + } - public static com.google.protobuf.Parser parser() { - return PARSER; - } + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Container - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - public interface CustomerEncryptionKeyOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) - com.google.protobuf.MessageOrBuilder { + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -     * The key must be in the same region as the workstation configuration.
            -     * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The kmsKey. - */ - java.lang.String getKmsKey(); + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } - /** - * - * - *
            -     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -     * The key must be in the same region as the workstation configuration.
            -     * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for kmsKey. - */ - com.google.protobuf.ByteString getKmsKeyBytes(); + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -     * Immutable. The service account to use with the specified
            -     * KMS key. We recommend that you use a separate service account
            -     * and follow KMS best practices. For more information, see
            -     * [Separation of
            -     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -     * `gcloud kms keys add-iam-policy-binding`
            -     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -     * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The kmsKeyServiceAccount. - */ - java.lang.String getKmsKeyServiceAccount(); + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - /** - * - * - *
            -     * Immutable. The service account to use with the specified
            -     * KMS key. We recommend that you use a separate service account
            -     * and follow KMS best practices. For more information, see
            -     * [Separation of
            -     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -     * `gcloud kms keys add-iam-policy-binding`
            -     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -     * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for kmsKeyServiceAccount. - */ - com.google.protobuf.ByteString getKmsKeyServiceAccountBytes(); - } + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -   * A customer-managed encryption key (CMEK) for the Compute Engine
            -   * resources of the associated workstation configuration. Specify the name of
            -   * your Cloud KMS encryption key and the default service account.
            -   * We recommend that you use a separate service account and follow
            -   * [Cloud KMS best
            -   * practices](https://cloud.google.com/kms/docs/separation-of-duties).
            -   * 
            - * - * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey} - */ - public static final class CustomerEncryptionKey extends com.google.protobuf.GeneratedMessage - implements - // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) - CustomerEncryptionKeyOrBuilder { - private static final long serialVersionUID = 0L; + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } - static { - com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( - com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, - /* major= */ 4, - /* minor= */ 33, - /* patch= */ 2, - /* suffix= */ "", - "CustomerEncryptionKey"); - } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } - // Use CustomerEncryptionKey.newBuilder() to construct. - private CustomerEncryptionKey(com.google.protobuf.GeneratedMessage.Builder builder) { - super(builder); - } + public static Builder newBuilder( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - private CustomerEncryptionKey() { - kmsKey_ = ""; - kmsKeyServiceAccount_ = ""; - } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_CustomerEncryptionKey_descriptor; - } + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_CustomerEncryptionKey_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.class, - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.Builder - .class); - } - - public static final int KMS_KEY_FIELD_NUMBER = 1; - - @SuppressWarnings("serial") - private volatile java.lang.Object kmsKey_ = ""; - - /** - * - * - *
            -     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -     * The key must be in the same region as the workstation configuration.
            -     * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The kmsKey. - */ - @java.lang.Override - public java.lang.String getKmsKey() { - java.lang.Object ref = kmsKey_; - 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(); - kmsKey_ = s; - return s; - } - } - - /** - * - * - *
            -     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -     * The key must be in the same region as the workstation configuration.
            -     * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for kmsKey. - */ - @java.lang.Override - public com.google.protobuf.ByteString getKmsKeyBytes() { - java.lang.Object ref = kmsKey_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - kmsKey_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + /** + * + * + *
            +       * A Persistent Directory backed by a Compute Engine regional persistent
            +       * disk. The
            +       * [persistent_directories][google.cloud.workstations.v1.WorkstationConfig.persistent_directories]
            +       * field is repeated, but it may contain only one entry. It creates a
            +       * [persistent
            +       * disk](https://cloud.google.com/compute/docs/disks/persistent-disks) that
            +       * mounts to the workstation VM at `/home` when the session starts and
            +       * detaches when the session ends. If this field is empty, workstations
            +       * created with this configuration do not have a persistent home
            +       * directory.
            +       * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDiskOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor; + } - public static final int KMS_KEY_SERVICE_ACCOUNT_FIELD_NUMBER = 2; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.class, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.Builder.class); + } - @SuppressWarnings("serial") - private volatile java.lang.Object kmsKeyServiceAccount_ = ""; + // Construct using + // com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } - /** - * - * - *
            -     * Immutable. The service account to use with the specified
            -     * KMS key. We recommend that you use a separate service account
            -     * and follow KMS best practices. For more information, see
            -     * [Separation of
            -     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -     * `gcloud kms keys add-iam-policy-binding`
            -     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -     * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The kmsKeyServiceAccount. - */ - @java.lang.Override - public java.lang.String getKmsKeyServiceAccount() { - java.lang.Object ref = kmsKeyServiceAccount_; - 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(); - kmsKeyServiceAccount_ = s; - return s; - } - } + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } - /** - * - * - *
            -     * Immutable. The service account to use with the specified
            -     * KMS key. We recommend that you use a separate service account
            -     * and follow KMS best practices. For more information, see
            -     * [Separation of
            -     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -     * `gcloud kms keys add-iam-policy-binding`
            -     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -     * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for kmsKeyServiceAccount. - */ - @java.lang.Override - public com.google.protobuf.ByteString getKmsKeyServiceAccountBytes() { - java.lang.Object ref = kmsKeyServiceAccount_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - kmsKeyServiceAccount_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetArchiveTimeoutFieldBuilder(); + } + } - private byte memoizedIsInitialized = -1; + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + sizeGb_ = 0; + maxSizeGb_ = 0; + fsType_ = ""; + diskType_ = ""; + sourceSnapshot_ = ""; + reclaimPolicy_ = 0; + archiveTimeout_ = null; + if (archiveTimeoutBuilder_ != null) { + archiveTimeoutBuilder_.dispose(); + archiveTimeoutBuilder_ = null; + } + return this; + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor; + } - memoizedIsInitialized = 1; - return true; - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance(); + } - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kmsKey_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 1, kmsKey_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kmsKeyServiceAccount_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, kmsKeyServiceAccount_); - } - getUnknownFields().writeTo(output); - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + build() { + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + buildPartial() { + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + result = + new com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kmsKey_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, kmsKey_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kmsKeyServiceAccount_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(2, kmsKeyServiceAccount_); - } - 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.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey other = - (com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) obj; - - if (!getKmsKey().equals(other.getKmsKey())) return false; - if (!getKmsKeyServiceAccount().equals(other.getKmsKeyServiceAccount())) 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) + KMS_KEY_FIELD_NUMBER; - hash = (53 * hash) + getKmsKey().hashCode(); - hash = (37 * hash) + KMS_KEY_SERVICE_ACCOUNT_FIELD_NUMBER; - hash = (53 * hash) + getKmsKeyServiceAccount().hashCode(); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } + private void buildPartial0( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.sizeGb_ = sizeGb_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.maxSizeGb_ = maxSizeGb_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.fsType_ = fsType_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.diskType_ = diskType_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.sourceSnapshot_ = sourceSnapshot_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.reclaimPolicy_ = reclaimPolicy_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000040) != 0)) { + result.archiveTimeout_ = + archiveTimeoutBuilder_ == null ? archiveTimeout_ : archiveTimeoutBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) { + return mergeFrom( + (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + other); + } else { + super.mergeFrom(other); + return this; + } + } - public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + public Builder mergeFrom( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + other) { + if (other + == com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance()) return this; + if (other.getSizeGb() != 0) { + setSizeGb(other.getSizeGb()); + } + if (other.getMaxSizeGb() != 0) { + setMaxSizeGb(other.getMaxSizeGb()); + } + if (!other.getFsType().isEmpty()) { + fsType_ = other.fsType_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (!other.getDiskType().isEmpty()) { + diskType_ = other.diskType_; + bitField0_ |= 0x00000008; + onChanged(); + } + if (!other.getSourceSnapshot().isEmpty()) { + sourceSnapshot_ = other.sourceSnapshot_; + bitField0_ |= 0x00000010; + onChanged(); + } + if (other.reclaimPolicy_ != 0) { + setReclaimPolicyValue(other.getReclaimPolicyValue()); + } + if (other.hasArchiveTimeout()) { + mergeArchiveTimeout(other.getArchiveTimeout()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - parseFrom(com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + public final boolean isInitialized() { + return true; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - parseFrom( - com.google.protobuf.ByteString data, + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - 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.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + sizeGb_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: + { + fsType_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 18 + case 26: + { + diskType_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 26 + case 32: + { + reclaimPolicy_ = input.readEnum(); + bitField0_ |= 0x00000020; + break; + } // case 32 + case 42: + { + sourceSnapshot_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 50: + { + input.readMessage( + internalGetArchiveTimeoutFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000040; + break; + } // case 50 + case 56: + { + maxSizeGb_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 56 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + private int bitField0_; - public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + private int sizeGb_; - public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - 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.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey 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 customer-managed encryption key (CMEK) for the Compute Engine
            -     * resources of the associated workstation configuration. Specify the name of
            -     * your Cloud KMS encryption key and the default service account.
            -     * We recommend that you use a separate service account and follow
            -     * [Cloud KMS best
            -     * practices](https://cloud.google.com/kms/docs/separation-of-duties).
            -     * 
            - * - * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey} - */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKeyOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_CustomerEncryptionKey_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_CustomerEncryptionKey_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.class, - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.Builder - .class); - } - - // Construct using - // com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.newBuilder() - private Builder() {} - - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - } - - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - kmsKey_ = ""; - kmsKeyServiceAccount_ = ""; - return this; - } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_CustomerEncryptionKey_descriptor; - } + /** + * + * + *
            +         * Optional. The GB capacity of a persistent home directory for each
            +         * workstation created with this configuration. Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set.
            +         *
            +         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +         * Defaults to `200`. If less than `200` GB, the
            +         * [disk_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            +         * must be
            +         * `"pd-balanced"` or `"pd-ssd"`.
            +         * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sizeGb. + */ + @java.lang.Override + public int getSizeGb() { + return sizeGb_; + } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - getDefaultInstanceForType() { - return com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - .getDefaultInstance(); - } + /** + * + * + *
            +         * Optional. The GB capacity of a persistent home directory for each
            +         * workstation created with this configuration. Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set.
            +         *
            +         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +         * Defaults to `200`. If less than `200` GB, the
            +         * [disk_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            +         * must be
            +         * `"pd-balanced"` or `"pd-ssd"`.
            +         * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sizeGb to set. + * @return This builder for chaining. + */ + public Builder setSizeGb(int value) { - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey build() { - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey result = - buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + sizeGb_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; } - return result; - } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - buildPartial() { - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey result = - new com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey(this); - if (bitField0_ != 0) { - buildPartial0(result); + /** + * + * + *
            +         * Optional. The GB capacity of a persistent home directory for each
            +         * workstation created with this configuration. Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set.
            +         *
            +         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +         * Defaults to `200`. If less than `200` GB, the
            +         * [disk_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            +         * must be
            +         * `"pd-balanced"` or `"pd-ssd"`.
            +         * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSizeGb() { + bitField0_ = (bitField0_ & ~0x00000001); + sizeGb_ = 0; + onChanged(); + return this; } - onBuilt(); - return result; - } - private void buildPartial0( - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.kmsKey_ = kmsKey_; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.kmsKeyServiceAccount_ = kmsKeyServiceAccount_; - } - } + private int maxSizeGb_; - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other - instanceof com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) { - return mergeFrom( - (com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) other); - } else { - super.mergeFrom(other); - return this; + /** + * + * + *
            +         * Optional. Maximum size in GB to which this persistent directory can be
            +         * resized. Defaults to unlimited if not set.
            +         * 
            + * + * int32 max_size_gb = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxSizeGb. + */ + @java.lang.Override + public int getMaxSizeGb() { + return maxSizeGb_; } - } - public Builder mergeFrom( - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey other) { - if (other - == com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - .getDefaultInstance()) return this; - if (!other.getKmsKey().isEmpty()) { - kmsKey_ = other.kmsKey_; - bitField0_ |= 0x00000001; + /** + * + * + *
            +         * Optional. Maximum size in GB to which this persistent directory can be
            +         * resized. Defaults to unlimited if not set.
            +         * 
            + * + * int32 max_size_gb = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The maxSizeGb to set. + * @return This builder for chaining. + */ + public Builder setMaxSizeGb(int value) { + + maxSizeGb_ = value; + bitField0_ |= 0x00000002; onChanged(); + return this; } - if (!other.getKmsKeyServiceAccount().isEmpty()) { - kmsKeyServiceAccount_ = other.kmsKeyServiceAccount_; - bitField0_ |= 0x00000002; + + /** + * + * + *
            +         * Optional. Maximum size in GB to which this persistent directory can be
            +         * resized. Defaults to unlimited if not set.
            +         * 
            + * + * int32 max_size_gb = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearMaxSizeGb() { + bitField0_ = (bitField0_ & ~0x00000002); + maxSizeGb_ = 0; onChanged(); + return this; } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; - } - @java.lang.Override - public final boolean isInitialized() { - return true; - } + private java.lang.Object fsType_ = ""; - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); + /** + * + * + *
            +         * Optional. Type of file system that the disk should be formatted with.
            +         * The workstation image must support this file system type. Must be empty
            +         * if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set. Defaults to `"ext4"`.
            +         * 
            + * + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The fsType. + */ + public java.lang.String getFsType() { + java.lang.Object ref = fsType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + fsType_ = s; + return s; + } else { + return (java.lang.String) ref; + } } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - kmsKey_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - kmsKeyServiceAccount_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 18 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; - } - - private int bitField0_; - private java.lang.Object kmsKey_ = ""; + /** + * + * + *
            +         * Optional. Type of file system that the disk should be formatted with.
            +         * The workstation image must support this file system type. Must be empty
            +         * if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set. Defaults to `"ext4"`.
            +         * 
            + * + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for fsType. + */ + public com.google.protobuf.ByteString getFsTypeBytes() { + java.lang.Object ref = fsType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + fsType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - /** - * - * - *
            -       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -       * The key must be in the same region as the workstation configuration.
            -       * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The kmsKey. - */ - public java.lang.String getKmsKey() { - java.lang.Object ref = kmsKey_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - kmsKey_ = s; - return s; - } else { - return (java.lang.String) ref; + /** + * + * + *
            +         * Optional. Type of file system that the disk should be formatted with.
            +         * The workstation image must support this file system type. Must be empty
            +         * if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set. Defaults to `"ext4"`.
            +         * 
            + * + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The fsType to set. + * @return This builder for chaining. + */ + public Builder setFsType(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + fsType_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; } - } - /** - * - * - *
            -       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -       * The key must be in the same region as the workstation configuration.
            -       * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for kmsKey. - */ - public com.google.protobuf.ByteString getKmsKeyBytes() { - java.lang.Object ref = kmsKey_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - kmsKey_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
            +         * Optional. Type of file system that the disk should be formatted with.
            +         * The workstation image must support this file system type. Must be empty
            +         * if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set. Defaults to `"ext4"`.
            +         * 
            + * + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearFsType() { + fsType_ = getDefaultInstance().getFsType(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; } - } - /** - * - * - *
            -       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -       * The key must be in the same region as the workstation configuration.
            -       * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The kmsKey to set. - * @return This builder for chaining. - */ - public Builder setKmsKey(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + /** + * + * + *
            +         * Optional. Type of file system that the disk should be formatted with.
            +         * The workstation image must support this file system type. Must be empty
            +         * if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set. Defaults to `"ext4"`.
            +         * 
            + * + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for fsType to set. + * @return This builder for chaining. + */ + public Builder setFsTypeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + fsType_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; } - kmsKey_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - /** - * - * - *
            -       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -       * The key must be in the same region as the workstation configuration.
            -       * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return This builder for chaining. - */ - public Builder clearKmsKey() { - kmsKey_ = getDefaultInstance().getKmsKey(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; - } + private java.lang.Object diskType_ = ""; - /** - * - * - *
            -       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -       * The key must be in the same region as the workstation configuration.
            -       * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The bytes for kmsKey to set. - * @return This builder for chaining. - */ - public Builder setKmsKeyBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + /** + * + * + *
            +         * Optional. The [type of the persistent
            +         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +         * home directory. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The diskType. + */ + public java.lang.String getDiskType() { + java.lang.Object ref = diskType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + diskType_ = s; + return s; + } else { + return (java.lang.String) ref; + } } - checkByteStringIsUtf8(value); - kmsKey_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - private java.lang.Object kmsKeyServiceAccount_ = ""; + /** + * + * + *
            +         * Optional. The [type of the persistent
            +         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +         * home directory. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for diskType. + */ + public com.google.protobuf.ByteString getDiskTypeBytes() { + java.lang.Object ref = diskType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + diskType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - /** - * - * - *
            -       * Immutable. The service account to use with the specified
            -       * KMS key. We recommend that you use a separate service account
            -       * and follow KMS best practices. For more information, see
            -       * [Separation of
            -       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -       * `gcloud kms keys add-iam-policy-binding`
            -       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -       * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The kmsKeyServiceAccount. - */ - public java.lang.String getKmsKeyServiceAccount() { - java.lang.Object ref = kmsKeyServiceAccount_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - kmsKeyServiceAccount_ = s; - return s; - } else { - return (java.lang.String) ref; + /** + * + * + *
            +         * Optional. The [type of the persistent
            +         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +         * home directory. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The diskType to set. + * @return This builder for chaining. + */ + public Builder setDiskType(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + diskType_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; } - } - /** - * - * - *
            -       * Immutable. The service account to use with the specified
            -       * KMS key. We recommend that you use a separate service account
            -       * and follow KMS best practices. For more information, see
            -       * [Separation of
            -       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -       * `gcloud kms keys add-iam-policy-binding`
            -       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -       * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for kmsKeyServiceAccount. - */ - public com.google.protobuf.ByteString getKmsKeyServiceAccountBytes() { - java.lang.Object ref = kmsKeyServiceAccount_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - kmsKeyServiceAccount_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
            +         * Optional. The [type of the persistent
            +         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +         * home directory. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearDiskType() { + diskType_ = getDefaultInstance().getDiskType(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; } - } - /** - * - * - *
            -       * Immutable. The service account to use with the specified
            -       * KMS key. We recommend that you use a separate service account
            -       * and follow KMS best practices. For more information, see
            -       * [Separation of
            -       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -       * `gcloud kms keys add-iam-policy-binding`
            -       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -       * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The kmsKeyServiceAccount to set. - * @return This builder for chaining. - */ - public Builder setKmsKeyServiceAccount(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + /** + * + * + *
            +         * Optional. The [type of the persistent
            +         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +         * home directory. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for diskType to set. + * @return This builder for chaining. + */ + public Builder setDiskTypeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + diskType_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; } - kmsKeyServiceAccount_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - /** - * - * - *
            -       * Immutable. The service account to use with the specified
            -       * KMS key. We recommend that you use a separate service account
            -       * and follow KMS best practices. For more information, see
            -       * [Separation of
            -       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -       * `gcloud kms keys add-iam-policy-binding`
            -       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -       * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return This builder for chaining. - */ - public Builder clearKmsKeyServiceAccount() { - kmsKeyServiceAccount_ = getDefaultInstance().getKmsKeyServiceAccount(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - return this; - } + private java.lang.Object sourceSnapshot_ = ""; - /** - * - * - *
            -       * Immutable. The service account to use with the specified
            -       * KMS key. We recommend that you use a separate service account
            -       * and follow KMS best practices. For more information, see
            -       * [Separation of
            -       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -       * `gcloud kms keys add-iam-policy-binding`
            -       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -       * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The bytes for kmsKeyServiceAccount to set. - * @return This builder for chaining. - */ - public Builder setKmsKeyServiceAccountBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +         * and
            +         * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceSnapshot. + */ + public java.lang.String getSourceSnapshot() { + java.lang.Object ref = sourceSnapshot_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceSnapshot_ = s; + return s; + } else { + return (java.lang.String) ref; + } } - checkByteStringIsUtf8(value); - kmsKeyServiceAccount_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) - } - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) - private static final com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - DEFAULT_INSTANCE; + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +         * and
            +         * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceSnapshot. + */ + public com.google.protobuf.ByteString getSourceSnapshotBytes() { + java.lang.Object ref = sourceSnapshot_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceSnapshot_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - static { - DEFAULT_INSTANCE = - new com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey(); - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +         * and
            +         * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sourceSnapshot to set. + * @return This builder for chaining. + */ + public Builder setSourceSnapshot(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + sourceSnapshot_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - getDefaultInstance() { - return DEFAULT_INSTANCE; - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +         * and
            +         * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSourceSnapshot() { + sourceSnapshot_ = getDefaultInstance().getSourceSnapshot(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + return this; + } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public CustomerEncryptionKey parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +         * and
            +         * [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for sourceSnapshot to set. + * @return This builder for chaining. + */ + public Builder setSourceSnapshotBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - }; + checkByteStringIsUtf8(value); + sourceSnapshot_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } - public static com.google.protobuf.Parser parser() { - return PARSER; - } + private int reclaimPolicy_ = 0; - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for reclaimPolicy. + */ + @java.lang.Override + public int getReclaimPolicyValue() { + return reclaimPolicy_; + } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The enum numeric value on the wire for reclaimPolicy to set. + * @return This builder for chaining. + */ + public Builder setReclaimPolicyValue(int value) { + reclaimPolicy_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } - public interface ReadinessCheckOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) - com.google.protobuf.MessageOrBuilder { + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The reclaimPolicy. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy + getReclaimPolicy() { + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy + result = + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy.forNumber(reclaimPolicy_); + return result == null + ? com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy.UNRECOGNIZED + : result; + } - /** - * - * - *
            -     * Optional. Path to which the request should be sent.
            -     * 
            - * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The path. - */ - java.lang.String getPath(); + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The reclaimPolicy to set. + * @return This builder for chaining. + */ + public Builder setReclaimPolicy( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy + value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000020; + reclaimPolicy_ = value.getNumber(); + onChanged(); + return this; + } - /** - * - * - *
            -     * Optional. Path to which the request should be sent.
            -     * 
            - * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for path. - */ - com.google.protobuf.ByteString getPathBytes(); + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearReclaimPolicy() { + bitField0_ = (bitField0_ & ~0x00000020); + reclaimPolicy_ = 0; + onChanged(); + return this; + } - /** - * - * - *
            -     * Optional. Port to which the request should be sent.
            -     * 
            - * - * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The port. - */ - int getPort(); - } + private com.google.protobuf.Duration archiveTimeout_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + archiveTimeoutBuilder_; - /** - * - * - *
            -   * A readiness check to be performed on a workstation.
            -   * 
            - * - * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck} - */ - public static final class ReadinessCheck extends com.google.protobuf.GeneratedMessage - implements - // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) - ReadinessCheckOrBuilder { - private static final long serialVersionUID = 0L; + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the archiveTimeout field is set. + */ + public boolean hasArchiveTimeout() { + return ((bitField0_ & 0x00000040) != 0); + } - static { - com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( - com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, - /* major= */ 4, - /* minor= */ 33, - /* patch= */ 2, - /* suffix= */ "", - "ReadinessCheck"); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The archiveTimeout. + */ + public com.google.protobuf.Duration getArchiveTimeout() { + if (archiveTimeoutBuilder_ == null) { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; + } else { + return archiveTimeoutBuilder_.getMessage(); + } + } - // Use ReadinessCheck.newBuilder() to construct. - private ReadinessCheck(com.google.protobuf.GeneratedMessage.Builder builder) { - super(builder); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setArchiveTimeout(com.google.protobuf.Duration value) { + if (archiveTimeoutBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + archiveTimeout_ = value; + } else { + archiveTimeoutBuilder_.setMessage(value); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } - private ReadinessCheck() { - path_ = ""; - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setArchiveTimeout(com.google.protobuf.Duration.Builder builderForValue) { + if (archiveTimeoutBuilder_ == null) { + archiveTimeout_ = builderForValue.build(); + } else { + archiveTimeoutBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_descriptor; - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeArchiveTimeout(com.google.protobuf.Duration value) { + if (archiveTimeoutBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0) + && archiveTimeout_ != null + && archiveTimeout_ != com.google.protobuf.Duration.getDefaultInstance()) { + getArchiveTimeoutBuilder().mergeFrom(value); + } else { + archiveTimeout_ = value; + } + } else { + archiveTimeoutBuilder_.mergeFrom(value); + } + if (archiveTimeout_ != null) { + bitField0_ |= 0x00000040; + onChanged(); + } + return this; + } - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.class, - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder.class); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearArchiveTimeout() { + bitField0_ = (bitField0_ & ~0x00000040); + archiveTimeout_ = null; + if (archiveTimeoutBuilder_ != null) { + archiveTimeoutBuilder_.dispose(); + archiveTimeoutBuilder_ = null; + } + onChanged(); + return this; + } - public static final int PATH_FIELD_NUMBER = 1; + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.protobuf.Duration.Builder getArchiveTimeoutBuilder() { + bitField0_ |= 0x00000040; + onChanged(); + return internalGetArchiveTimeoutFieldBuilder().getBuilder(); + } - @SuppressWarnings("serial") - private volatile java.lang.Object path_ = ""; + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.protobuf.DurationOrBuilder getArchiveTimeoutOrBuilder() { + if (archiveTimeoutBuilder_ != null) { + return archiveTimeoutBuilder_.getMessageOrBuilder(); + } else { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; + } + } - /** - * - * - *
            -     * Optional. Path to which the request should be sent.
            -     * 
            - * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The path. - */ - @java.lang.Override - public java.lang.String getPath() { - java.lang.Object ref = path_; - 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(); - path_ = s; - return s; - } - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + internalGetArchiveTimeoutFieldBuilder() { + if (archiveTimeoutBuilder_ == null) { + archiveTimeoutBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder>( + getArchiveTimeout(), getParentForChildren(), isClean()); + archiveTimeout_ = null; + } + return archiveTimeoutBuilder_; + } - /** - * - * - *
            -     * Optional. Path to which the request should be sent.
            -     * 
            - * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for path. - */ - @java.lang.Override - public com.google.protobuf.ByteString getPathBytes() { - java.lang.Object ref = path_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - path_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) } - } - - public static final int PORT_FIELD_NUMBER = 2; - private int port_ = 0; - - /** - * - * - *
            -     * Optional. Port to which the request should be sent.
            -     * 
            - * - * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The port. - */ - @java.lang.Override - public int getPort() { - return port_; - } - - 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; - } + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) + private static final com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + DEFAULT_INSTANCE; - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(path_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 1, path_); + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk(); } - if (port_ != 0) { - output.writeInt32(2, port_); + + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + getDefaultInstance() { + return DEFAULT_INSTANCE; } - getUnknownFields().writeTo(output); - } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GceRegionalPersistentDisk parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(path_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, path_); - } - if (port_ != 0) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, port_); + public static com.google.protobuf.Parser parser() { + return PARSER; } - 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.cloud.workstations.v1.WorkstationConfig.ReadinessCheck)) { - return super.equals(obj); + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; } - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck other = - (com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) obj; - if (!getPath().equals(other.getPath())) return false; - if (getPort() != other.getPort()) return false; - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } - - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + PATH_FIELD_NUMBER; - hash = (53 * hash) + getPath().hashCode(); - hash = (37 * hash) + PORT_FIELD_NUMBER; - hash = (53 * hash) + getPort(); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + public interface GceHyperdiskBalancedHighAvailabilityOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability) + com.google.protobuf.MessageOrBuilder { - public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +       * Optional. The GB capacity of a persistent home directory for each
            +       * workstation created with this configuration. Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.source_snapshot]
            +       * is set.
            +       *
            +       * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +       * Defaults to `200`.
            +       * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sizeGb. + */ + int getSizeGb(); - public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( - byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +       * Optional. Maximum size in GB to which this persistent directory can be
            +       * resized. Defaults to unlimited if not set.
            +       * 
            + * + * int32 max_size_gb = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxSizeGb. + */ + int getMaxSizeGb(); - public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
            +       * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceSnapshot. + */ + java.lang.String getSourceSnapshot(); - public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck 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.cloud.workstations.v1.WorkstationConfig.ReadinessCheck - parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck - 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.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
            +       * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceSnapshot. + */ + com.google.protobuf.ByteString getSourceSnapshotBytes(); - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } + /** + * + * + *
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for reclaimPolicy. + */ + int getReclaimPolicyValue(); - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + /** + * + * + *
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The reclaimPolicy. + */ + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy + getReclaimPolicy(); - public static Builder newBuilder( - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + /** + * + * + *
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
            +       * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the archiveTimeout field is set. + */ + boolean hasArchiveTimeout(); - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + /** + * + * + *
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
            +       * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The archiveTimeout. + */ + com.google.protobuf.Duration getArchiveTimeout(); - @java.lang.Override - protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; + /** + * + * + *
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
            +       * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.protobuf.DurationOrBuilder getArchiveTimeoutOrBuilder(); } /** * * *
            -     * A readiness check to be performed on a workstation.
            +     * A Persistent Directory backed by a Compute Engine
            +     * [Hyperdisk Balanced High Availability
            +     * Disk](https://cloud.google.com/compute/docs/disks/hd-types/hyperdisk-balanced-ha).
            +     * This is a high-availability block storage solution that offers a balance
            +     * between performance and cost for most general-purpose workloads.
                  * 
            * - * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck} + * Protobuf type {@code + * google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability} */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + public static final class GceHyperdiskBalancedHighAvailability + extends com.google.protobuf.GeneratedMessage implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_descriptor; - } + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability) + GceHyperdiskBalancedHighAvailabilityOrBuilder { + private static final long serialVersionUID = 0L; - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.class, - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder.class); + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "GceHyperdiskBalancedHighAvailability"); } - // Construct using - // com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.newBuilder() - private Builder() {} - - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); + // Use GceHyperdiskBalancedHighAvailability.newBuilder() to construct. + private GceHyperdiskBalancedHighAvailability( + com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); } - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - path_ = ""; - port_ = 0; - return this; + private GceHyperdiskBalancedHighAvailability() { + sourceSnapshot_ = ""; + reclaimPolicy_ = 0; } - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_descriptor; + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_descriptor; } @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck - getDefaultInstanceForType() { - return com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck - .getDefaultInstance(); + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.class, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.Builder.class); } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck build() { - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } + /** + * + * + *
            +       * Value representing what should happen to the disk after the workstation
            +       * is deleted.
            +       * 
            + * + * Protobuf enum {@code + * google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy} + */ + public enum ReclaimPolicy implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
            +         * Do not use.
            +         * 
            + * + * RECLAIM_POLICY_UNSPECIFIED = 0; + */ + RECLAIM_POLICY_UNSPECIFIED(0), + /** + * + * + *
            +         * Delete the persistent disk when deleting the workstation.
            +         * 
            + * + * DELETE = 1; + */ + DELETE(1), + /** + * + * + *
            +         * Keep the persistent disk when deleting the workstation.
            +         * An administrator must manually delete the disk.
            +         * 
            + * + * RETAIN = 2; + */ + RETAIN(2), + UNRECOGNIZED(-1), + ; - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck buildPartial() { - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck result = - new com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck(this); - if (bitField0_ != 0) { - buildPartial0(result); + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "ReclaimPolicy"); } - onBuilt(); - return result; - } - private void buildPartial0( - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.path_ = path_; + /** + * + * + *
            +         * Do not use.
            +         * 
            + * + * RECLAIM_POLICY_UNSPECIFIED = 0; + */ + public static final int RECLAIM_POLICY_UNSPECIFIED_VALUE = 0; + + /** + * + * + *
            +         * Delete the persistent disk when deleting the workstation.
            +         * 
            + * + * DELETE = 1; + */ + public static final int DELETE_VALUE = 1; + + /** + * + * + *
            +         * Keep the persistent disk when deleting the workstation.
            +         * An administrator must manually delete the disk.
            +         * 
            + * + * RETAIN = 2; + */ + public static final int RETAIN_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; } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.port_ = port_; + + /** + * @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 ReclaimPolicy valueOf(int value) { + return forNumber(value); } - } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) { - return mergeFrom( - (com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) other); - } else { - super.mergeFrom(other); - return this; + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static ReclaimPolicy forNumber(int value) { + switch (value) { + case 0: + return RECLAIM_POLICY_UNSPECIFIED; + case 1: + return DELETE; + case 2: + return RETAIN; + default: + return null; + } } - } - public Builder mergeFrom( - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck other) { - if (other - == com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck - .getDefaultInstance()) return this; - if (!other.getPath().isEmpty()) { - path_ = other.path_; - bitField0_ |= 0x00000001; - onChanged(); + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; } - if (other.getPort() != 0) { - setPort(other.getPort()); + + private static final com.google.protobuf.Internal.EnumLiteMap + internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public ReclaimPolicy findValueByNumber(int number) { + return ReclaimPolicy.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; + + public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { + return getDescriptor(); + } + + public static com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDescriptor() + .getEnumTypes() + .get(0); + } + + private static final ReclaimPolicy[] VALUES = values(); + + public static ReclaimPolicy valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private ReclaimPolicy(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy) } + private int bitField0_; + public static final int SIZE_GB_FIELD_NUMBER = 1; + private int sizeGb_ = 0; + + /** + * + * + *
            +       * Optional. The GB capacity of a persistent home directory for each
            +       * workstation created with this configuration. Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.source_snapshot]
            +       * is set.
            +       *
            +       * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +       * Defaults to `200`.
            +       * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sizeGb. + */ @java.lang.Override - public final boolean isInitialized() { - return true; + public int getSizeGb() { + return sizeGb_; } + public static final int MAX_SIZE_GB_FIELD_NUMBER = 5; + private int maxSizeGb_ = 0; + + /** + * + * + *
            +       * Optional. Maximum size in GB to which this persistent directory can be
            +       * resized. Defaults to unlimited if not set.
            +       * 
            + * + * int32 max_size_gb = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxSizeGb. + */ @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - path_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 16: - { - port_ = input.readInt32(); - bitField0_ |= 0x00000002; - break; - } // case 16 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; + public int getMaxSizeGb() { + return maxSizeGb_; } - private int bitField0_; + public static final int SOURCE_SNAPSHOT_FIELD_NUMBER = 2; - private java.lang.Object path_ = ""; + @SuppressWarnings("serial") + private volatile java.lang.Object sourceSnapshot_ = ""; /** * * *
            -       * Optional. Path to which the request should be sent.
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
                    * 
            * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The path. + * @return The sourceSnapshot. */ - public java.lang.String getPath() { - java.lang.Object ref = path_; - if (!(ref instanceof java.lang.String)) { + @java.lang.Override + public java.lang.String getSourceSnapshot() { + java.lang.Object ref = sourceSnapshot_; + 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(); - path_ = s; + sourceSnapshot_ = s; return s; - } else { - return (java.lang.String) ref; } } @@ -12405,2765 +14617,14152 @@ public java.lang.String getPath() { * * *
            -       * Optional. Path to which the request should be sent.
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
                    * 
            * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The bytes for path. + * @return The bytes for sourceSnapshot. */ - public com.google.protobuf.ByteString getPathBytes() { - java.lang.Object ref = path_; - if (ref instanceof String) { + @java.lang.Override + public com.google.protobuf.ByteString getSourceSnapshotBytes() { + java.lang.Object ref = sourceSnapshot_; + if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - path_ = b; + sourceSnapshot_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } + public static final int RECLAIM_POLICY_FIELD_NUMBER = 3; + private int reclaimPolicy_ = 0; + /** * * *
            -       * Optional. Path to which the request should be sent.
            -       * 
            - * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The path to set. - * @return This builder for chaining. - */ - public Builder setPath(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - path_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - - /** - * - * - *
            -       * Optional. Path to which the request should be sent.
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
                    * 
            * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return This builder for chaining. + * @return The enum numeric value on the wire for reclaimPolicy. */ - public Builder clearPath() { - path_ = getDefaultInstance().getPath(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; + @java.lang.Override + public int getReclaimPolicyValue() { + return reclaimPolicy_; } /** * * *
            -       * Optional. Path to which the request should be sent.
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
                    * 
            * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param value The bytes for path to set. - * @return This builder for chaining. + * @return The reclaimPolicy. */ - public Builder setPathBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - path_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy + getReclaimPolicy() { + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy + result = + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy.forNumber(reclaimPolicy_); + return result == null + ? com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy.UNRECOGNIZED + : result; } - private int port_; + public static final int ARCHIVE_TIMEOUT_FIELD_NUMBER = 4; + private com.google.protobuf.Duration archiveTimeout_; /** * * *
            -       * Optional. Port to which the request should be sent.
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
                    * 
            * - * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The port. + * @return Whether the archiveTimeout field is set. */ @java.lang.Override - public int getPort() { - return port_; + public boolean hasArchiveTimeout() { + return ((bitField0_ & 0x00000001) != 0); } /** * * *
            -       * Optional. Port to which the request should be sent.
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
                    * 
            * - * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param value The port to set. - * @return This builder for chaining. + * @return The archiveTimeout. */ - public Builder setPort(int value) { - - port_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; + @java.lang.Override + public com.google.protobuf.Duration getArchiveTimeout() { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; } /** * * *
            -       * Optional. Port to which the request should be sent.
            -       * 
            + * Optional. Number of seconds to wait after initially creating or + * subsequently shutting down the workstation before converting its disk + * into a snapshot. This generally saves costs at the expense of greater + * startup time on next workstation start, as the service will need to + * create a disk from the archival snapshot. * - * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * A value of `"0s"` indicates that the disk will never be archived. + *
            * - * @return This builder for chaining. + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder clearPort() { - bitField0_ = (bitField0_ & ~0x00000002); - port_ = 0; - onChanged(); - return this; + @java.lang.Override + public com.google.protobuf.DurationOrBuilder getArchiveTimeoutOrBuilder() { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; } - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) - } + private byte memoizedIsInitialized = -1; - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) - private static final com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck - DEFAULT_INSTANCE; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - static { - DEFAULT_INSTANCE = new com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck(); - } + memoizedIsInitialized = 1; + return true; + } - public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck - getDefaultInstance() { - return DEFAULT_INSTANCE; - } + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (sizeGb_ != 0) { + output.writeInt32(1, sizeGb_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, sourceSnapshot_); + } + if (reclaimPolicy_ + != com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy.RECLAIM_POLICY_UNSPECIFIED + .getNumber()) { + output.writeEnum(3, reclaimPolicy_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(4, getArchiveTimeout()); + } + if (maxSizeGb_ != 0) { + output.writeInt32(5, maxSizeGb_); + } + getUnknownFields().writeTo(output); + } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public ReadinessCheck parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); - } - }; + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - public static com.google.protobuf.Parser parser() { - return PARSER; - } + size = 0; + if (sizeGb_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, sizeGb_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, sourceSnapshot_); + } + if (reclaimPolicy_ + != com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy.RECLAIM_POLICY_UNSPECIFIED + .getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(3, reclaimPolicy_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, getArchiveTimeout()); + } + if (maxSizeGb_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(5, maxSizeGb_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + other = + (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + obj; - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + if (getSizeGb() != other.getSizeGb()) return false; + if (getMaxSizeGb() != other.getMaxSizeGb()) return false; + if (!getSourceSnapshot().equals(other.getSourceSnapshot())) return false; + if (reclaimPolicy_ != other.reclaimPolicy_) return false; + if (hasArchiveTimeout() != other.hasArchiveTimeout()) return false; + if (hasArchiveTimeout()) { + if (!getArchiveTimeout().equals(other.getArchiveTimeout())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - private int bitField0_; - public static final int NAME_FIELD_NUMBER = 1; + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + SIZE_GB_FIELD_NUMBER; + hash = (53 * hash) + getSizeGb(); + hash = (37 * hash) + MAX_SIZE_GB_FIELD_NUMBER; + hash = (53 * hash) + getMaxSizeGb(); + hash = (37 * hash) + SOURCE_SNAPSHOT_FIELD_NUMBER; + hash = (53 * hash) + getSourceSnapshot().hashCode(); + hash = (37 * hash) + RECLAIM_POLICY_FIELD_NUMBER; + hash = (53 * hash) + reclaimPolicy_; + if (hasArchiveTimeout()) { + hash = (37 * hash) + ARCHIVE_TIMEOUT_FIELD_NUMBER; + hash = (53 * hash) + getArchiveTimeout().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - @SuppressWarnings("serial") - private volatile java.lang.Object name_ = ""; + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - /** - * - * - *
            -   * Full name of this workstation configuration.
            -   * 
            - * - * string name = 1; - * - * @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; - } - } + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - /** - * - * - *
            -   * Full name of this workstation configuration.
            -   * 
            - * - * string name = 1; - * - * @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 com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - public static final int DISPLAY_NAME_FIELD_NUMBER = 2; + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - @SuppressWarnings("serial") - private volatile java.lang.Object displayName_ = ""; + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - /** - * - * - *
            -   * Optional. Human-readable name for this workstation configuration.
            -   * 
            - * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The displayName. - */ - @java.lang.Override - public java.lang.String getDisplayName() { - java.lang.Object ref = displayName_; - 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(); - displayName_ = s; - return s; - } - } + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - /** - * - * - *
            -   * Optional. Human-readable name for this workstation configuration.
            -   * 
            - * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for displayName. - */ - @java.lang.Override - public com.google.protobuf.ByteString getDisplayNameBytes() { - java.lang.Object ref = displayName_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - displayName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - public static final int UID_FIELD_NUMBER = 3; + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } - @SuppressWarnings("serial") - private volatile java.lang.Object uid_ = ""; + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } - /** - * - * - *
            -   * Output only. A system-assigned unique identifier for this workstation
            -   * configuration.
            -   * 
            - * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The uid. - */ - @java.lang.Override - public java.lang.String getUid() { - java.lang.Object ref = uid_; - 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(); - uid_ = s; - return s; - } - } + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -   * Output only. A system-assigned unique identifier for this workstation
            -   * configuration.
            -   * 
            - * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for uid. - */ - @java.lang.Override - public com.google.protobuf.ByteString getUidBytes() { - java.lang.Object ref = uid_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - uid_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - public static final int RECONCILING_FIELD_NUMBER = 4; - private boolean reconciling_ = false; + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -   * Output only. Indicates whether this workstation configuration is currently
            -   * being updated to match its intended state.
            -   * 
            - * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The reconciling. - */ - @java.lang.Override - public boolean getReconciling() { - return reconciling_; - } + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } - public static final int ANNOTATIONS_FIELD_NUMBER = 5; + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } - private static final class AnnotationsDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_AnnotationsEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + public static Builder newBuilder( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - @SuppressWarnings("serial") - private com.google.protobuf.MapField annotations_; + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } - private com.google.protobuf.MapField - internalGetAnnotations() { - if (annotations_ == null) { - return com.google.protobuf.MapField.emptyMapField(AnnotationsDefaultEntryHolder.defaultEntry); - } - return annotations_; - } + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } - public int getAnnotationsCount() { - return internalGetAnnotations().getMap().size(); - } - - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public boolean containsAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - return internalGetAnnotations().getMap().containsKey(key); - } - - /** Use {@link #getAnnotationsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getAnnotations() { - return getAnnotationsMap(); - } + /** + * + * + *
            +       * A Persistent Directory backed by a Compute Engine
            +       * [Hyperdisk Balanced High Availability
            +       * Disk](https://cloud.google.com/compute/docs/disks/hd-types/hyperdisk-balanced-ha).
            +       * This is a high-availability block storage solution that offers a balance
            +       * between performance and cost for most general-purpose workloads.
            +       * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability) + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailabilityOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_descriptor; + } - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.Map getAnnotationsMap() { - return internalGetAnnotations().getMap(); - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.class, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.Builder.class); + } - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public /* nullable */ java.lang.String getAnnotationsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetAnnotations().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } + // Construct using + // com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.lang.String getAnnotationsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetAnnotations().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); - } - return map.get(key); - } + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } - public static final int LABELS_FIELD_NUMBER = 18; + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetArchiveTimeoutFieldBuilder(); + } + } - private static final class LabelsDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_LabelsEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + sizeGb_ = 0; + maxSizeGb_ = 0; + sourceSnapshot_ = ""; + reclaimPolicy_ = 0; + archiveTimeout_ = null; + if (archiveTimeoutBuilder_ != null) { + archiveTimeoutBuilder_.dispose(); + archiveTimeoutBuilder_ = null; + } + return this; + } - @SuppressWarnings("serial") - private com.google.protobuf.MapField labels_; + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_descriptor; + } - private com.google.protobuf.MapField internalGetLabels() { - if (labels_ == null) { - return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); - } - return labels_; - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance(); + } - public int getLabelsCount() { - return internalGetLabels().getMap().size(); - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + build() { + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation configuration and that are also propagated
            -   * to the underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public boolean containsLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - return internalGetLabels().getMap().containsKey(key); - } + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + buildPartial() { + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + result = + new com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - /** Use {@link #getLabelsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getLabels() { - return getLabelsMap(); - } + private void buildPartial0( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.sizeGb_ = sizeGb_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.maxSizeGb_ = maxSizeGb_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.sourceSnapshot_ = sourceSnapshot_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.reclaimPolicy_ = reclaimPolicy_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000010) != 0)) { + result.archiveTimeout_ = + archiveTimeoutBuilder_ == null ? archiveTimeout_ : archiveTimeoutBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation configuration and that are also propagated
            -   * to the underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.util.Map getLabelsMap() { - return internalGetLabels().getMap(); - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) { + return mergeFrom( + (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + other); + } else { + super.mergeFrom(other); + return this; + } + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation configuration and that are also propagated
            -   * to the underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public /* nullable */ java.lang.String getLabelsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetLabels().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } + public Builder mergeFrom( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + other) { + if (other + == com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance()) return this; + if (other.getSizeGb() != 0) { + setSizeGb(other.getSizeGb()); + } + if (other.getMaxSizeGb() != 0) { + setMaxSizeGb(other.getMaxSizeGb()); + } + if (!other.getSourceSnapshot().isEmpty()) { + sourceSnapshot_ = other.sourceSnapshot_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.reclaimPolicy_ != 0) { + setReclaimPolicyValue(other.getReclaimPolicyValue()); + } + if (other.hasArchiveTimeout()) { + mergeArchiveTimeout(other.getArchiveTimeout()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation configuration and that are also propagated
            -   * to the underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.lang.String getLabelsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetLabels().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); - } - return map.get(key); - } + @java.lang.Override + public final boolean isInitialized() { + return true; + } - public static final int CREATE_TIME_FIELD_NUMBER = 6; - private com.google.protobuf.Timestamp createTime_; + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + sizeGb_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: + { + sourceSnapshot_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 18 + case 24: + { + reclaimPolicy_ = input.readEnum(); + bitField0_ |= 0x00000008; + break; + } // case 24 + case 34: + { + input.readMessage( + internalGetArchiveTimeoutFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000010; + break; + } // case 34 + case 40: + { + maxSizeGb_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 40 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } - /** - * - * - *
            -   * Output only. Time when this workstation configuration was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the createTime field is set. - */ - @java.lang.Override - public boolean hasCreateTime() { - return ((bitField0_ & 0x00000001) != 0); - } + private int bitField0_; - /** - * - * - *
            -   * Output only. Time when this workstation configuration was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The createTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getCreateTime() { - return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; - } + private int sizeGb_; - /** - * - * - *
            -   * Output only. Time when this workstation configuration was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { - return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; - } + /** + * + * + *
            +         * Optional. The GB capacity of a persistent home directory for each
            +         * workstation created with this configuration. Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.source_snapshot]
            +         * is set.
            +         *
            +         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +         * Defaults to `200`.
            +         * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sizeGb. + */ + @java.lang.Override + public int getSizeGb() { + return sizeGb_; + } - public static final int UPDATE_TIME_FIELD_NUMBER = 7; - private com.google.protobuf.Timestamp updateTime_; + /** + * + * + *
            +         * Optional. The GB capacity of a persistent home directory for each
            +         * workstation created with this configuration. Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.source_snapshot]
            +         * is set.
            +         *
            +         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +         * Defaults to `200`.
            +         * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sizeGb to set. + * @return This builder for chaining. + */ + public Builder setSizeGb(int value) { - /** - * - * - *
            -   * Output only. Time when this workstation configuration was most recently
            -   * updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the updateTime field is set. - */ - @java.lang.Override - public boolean hasUpdateTime() { - return ((bitField0_ & 0x00000002) != 0); - } + sizeGb_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } - /** - * - * - *
            -   * Output only. Time when this workstation configuration was most recently
            -   * updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The updateTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getUpdateTime() { - return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; - } - - /** - * - * - *
            -   * Output only. Time when this workstation configuration was most recently
            -   * updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { - return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; - } + /** + * + * + *
            +         * Optional. The GB capacity of a persistent home directory for each
            +         * workstation created with this configuration. Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.source_snapshot]
            +         * is set.
            +         *
            +         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +         * Defaults to `200`.
            +         * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSizeGb() { + bitField0_ = (bitField0_ & ~0x00000001); + sizeGb_ = 0; + onChanged(); + return this; + } - public static final int DELETE_TIME_FIELD_NUMBER = 8; - private com.google.protobuf.Timestamp deleteTime_; + private int maxSizeGb_; - /** - * - * - *
            -   * Output only. Time when this workstation configuration was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the deleteTime field is set. - */ - @java.lang.Override - public boolean hasDeleteTime() { - return ((bitField0_ & 0x00000004) != 0); - } + /** + * + * + *
            +         * Optional. Maximum size in GB to which this persistent directory can be
            +         * resized. Defaults to unlimited if not set.
            +         * 
            + * + * int32 max_size_gb = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxSizeGb. + */ + @java.lang.Override + public int getMaxSizeGb() { + return maxSizeGb_; + } - /** - * - * - *
            -   * Output only. Time when this workstation configuration was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The deleteTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getDeleteTime() { - return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; - } + /** + * + * + *
            +         * Optional. Maximum size in GB to which this persistent directory can be
            +         * resized. Defaults to unlimited if not set.
            +         * 
            + * + * int32 max_size_gb = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The maxSizeGb to set. + * @return This builder for chaining. + */ + public Builder setMaxSizeGb(int value) { - /** - * - * - *
            -   * Output only. Time when this workstation configuration was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { - return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; - } + maxSizeGb_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - public static final int ETAG_FIELD_NUMBER = 9; + /** + * + * + *
            +         * Optional. Maximum size in GB to which this persistent directory can be
            +         * resized. Defaults to unlimited if not set.
            +         * 
            + * + * int32 max_size_gb = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearMaxSizeGb() { + bitField0_ = (bitField0_ & ~0x00000002); + maxSizeGb_ = 0; + onChanged(); + return this; + } - @SuppressWarnings("serial") - private volatile java.lang.Object etag_ = ""; + private java.lang.Object sourceSnapshot_ = ""; - /** - * - * - *
            -   * Optional. Checksum computed by the server. May be sent on update and delete
            -   * requests to make sure that the client has an up-to-date value before
            -   * proceeding.
            -   * 
            - * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The etag. - */ - @java.lang.Override - public java.lang.String getEtag() { - java.lang.Object ref = etag_; - 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(); - etag_ = s; - return s; - } - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceSnapshot. + */ + public java.lang.String getSourceSnapshot() { + java.lang.Object ref = sourceSnapshot_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceSnapshot_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } - /** - * - * - *
            -   * Optional. Checksum computed by the server. May be sent on update and delete
            -   * requests to make sure that the client has an up-to-date value before
            -   * proceeding.
            -   * 
            - * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for etag. - */ - @java.lang.Override - public com.google.protobuf.ByteString getEtagBytes() { - java.lang.Object ref = etag_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - etag_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceSnapshot. + */ + public com.google.protobuf.ByteString getSourceSnapshotBytes() { + java.lang.Object ref = sourceSnapshot_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceSnapshot_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - public static final int IDLE_TIMEOUT_FIELD_NUMBER = 10; - private com.google.protobuf.Duration idleTimeout_; + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sourceSnapshot to set. + * @return This builder for chaining. + */ + public Builder setSourceSnapshot(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + sourceSnapshot_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } - /** - * - * - *
            -   * Optional. Number of seconds to wait before automatically stopping a
            -   * workstation after it last received user traffic.
            -   *
            -   * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -   * configuration should never time out due to idleness.
            -   * Provide
            -   * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -   * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -   * The default is `"1200s"` (20 minutes).
            -   * 
            - * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the idleTimeout field is set. - */ - @java.lang.Override - public boolean hasIdleTimeout() { - return ((bitField0_ & 0x00000008) != 0); - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSourceSnapshot() { + sourceSnapshot_ = getDefaultInstance().getSourceSnapshot(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } - /** - * - * - *
            -   * Optional. Number of seconds to wait before automatically stopping a
            -   * workstation after it last received user traffic.
            -   *
            -   * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -   * configuration should never time out due to idleness.
            -   * Provide
            -   * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -   * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -   * The default is `"1200s"` (20 minutes).
            -   * 
            - * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The idleTimeout. - */ - @java.lang.Override - public com.google.protobuf.Duration getIdleTimeout() { - return idleTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : idleTimeout_; - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for sourceSnapshot to set. + * @return This builder for chaining. + */ + public Builder setSourceSnapshotBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + sourceSnapshot_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } - /** - * - * - *
            -   * Optional. Number of seconds to wait before automatically stopping a
            -   * workstation after it last received user traffic.
            -   *
            -   * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -   * configuration should never time out due to idleness.
            -   * Provide
            -   * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -   * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -   * The default is `"1200s"` (20 minutes).
            -   * 
            - * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder() { - return idleTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : idleTimeout_; - } + private int reclaimPolicy_ = 0; - public static final int RUNNING_TIMEOUT_FIELD_NUMBER = 11; - private com.google.protobuf.Duration runningTimeout_; + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for reclaimPolicy. + */ + @java.lang.Override + public int getReclaimPolicyValue() { + return reclaimPolicy_; + } - /** - * - * - *
            -   * Optional. Number of seconds that a workstation can run until it is
            -   * automatically shut down. We recommend that workstations be shut down daily
            -   * to reduce costs and so that security updates can be applied upon restart.
            -   * The
            -   * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            -   * and
            -   * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -   * fields are independent of each other. Note that the
            -   * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -   * field shuts down VMs after the specified time, regardless of whether or not
            -   * the VMs are idle.
            -   *
            -   * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -   * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -   * that workstations using this configuration should never time out. If
            -   * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            -   * is set, it must be greater than `"0s"` and less than
            -   * `"86400s"` (24 hours).
            -   *
            -   * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -   * with this configuration have no maximum running time. This is strongly
            -   * discouraged because you incur costs and will not pick up security updates.
            -   * 
            - * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the runningTimeout field is set. - */ - @java.lang.Override - public boolean hasRunningTimeout() { - return ((bitField0_ & 0x00000010) != 0); - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The enum numeric value on the wire for reclaimPolicy to set. + * @return This builder for chaining. + */ + public Builder setReclaimPolicyValue(int value) { + reclaimPolicy_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } - /** - * - * - *
            -   * Optional. Number of seconds that a workstation can run until it is
            -   * automatically shut down. We recommend that workstations be shut down daily
            -   * to reduce costs and so that security updates can be applied upon restart.
            -   * The
            -   * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            -   * and
            -   * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -   * fields are independent of each other. Note that the
            -   * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -   * field shuts down VMs after the specified time, regardless of whether or not
            -   * the VMs are idle.
            -   *
            -   * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -   * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -   * that workstations using this configuration should never time out. If
            -   * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            -   * is set, it must be greater than `"0s"` and less than
            -   * `"86400s"` (24 hours).
            -   *
            -   * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -   * with this configuration have no maximum running time. This is strongly
            -   * discouraged because you incur costs and will not pick up security updates.
            -   * 
            - * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The runningTimeout. - */ - @java.lang.Override - public com.google.protobuf.Duration getRunningTimeout() { - return runningTimeout_ == null - ? com.google.protobuf.Duration.getDefaultInstance() - : runningTimeout_; - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The reclaimPolicy. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy + getReclaimPolicy() { + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy + result = + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy.forNumber(reclaimPolicy_); + return result == null + ? com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy.UNRECOGNIZED + : result; + } - /** - * - * - *
            -   * Optional. Number of seconds that a workstation can run until it is
            -   * automatically shut down. We recommend that workstations be shut down daily
            -   * to reduce costs and so that security updates can be applied upon restart.
            -   * The
            -   * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            -   * and
            -   * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -   * fields are independent of each other. Note that the
            -   * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -   * field shuts down VMs after the specified time, regardless of whether or not
            -   * the VMs are idle.
            -   *
            -   * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -   * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -   * that workstations using this configuration should never time out. If
            -   * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            -   * is set, it must be greater than `"0s"` and less than
            -   * `"86400s"` (24 hours).
            -   *
            -   * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -   * with this configuration have no maximum running time. This is strongly
            -   * discouraged because you incur costs and will not pick up security updates.
            -   * 
            - * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.protobuf.DurationOrBuilder getRunningTimeoutOrBuilder() { - return runningTimeout_ == null - ? com.google.protobuf.Duration.getDefaultInstance() - : runningTimeout_; - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The reclaimPolicy to set. + * @return This builder for chaining. + */ + public Builder setReclaimPolicy( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy + value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000008; + reclaimPolicy_ = value.getNumber(); + onChanged(); + return this; + } - public static final int HOST_FIELD_NUMBER = 12; - private com.google.cloud.workstations.v1.WorkstationConfig.Host host_; + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearReclaimPolicy() { + bitField0_ = (bitField0_ & ~0x00000008); + reclaimPolicy_ = 0; + onChanged(); + return this; + } - /** - * - * - *
            -   * Optional. Runtime host for the workstation.
            -   * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the host field is set. - */ - @java.lang.Override - public boolean hasHost() { - return ((bitField0_ & 0x00000020) != 0); - } + private com.google.protobuf.Duration archiveTimeout_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + archiveTimeoutBuilder_; - /** - * - * - *
            -   * Optional. Runtime host for the workstation.
            -   * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The host. - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Host getHost() { - return host_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Host.getDefaultInstance() - : host_; - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the archiveTimeout field is set. + */ + public boolean hasArchiveTimeout() { + return ((bitField0_ & 0x00000010) != 0); + } - /** - * - * - *
            -   * Optional. Runtime host for the workstation.
            -   * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.HostOrBuilder getHostOrBuilder() { - return host_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Host.getDefaultInstance() - : host_; - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The archiveTimeout. + */ + public com.google.protobuf.Duration getArchiveTimeout() { + if (archiveTimeoutBuilder_ == null) { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; + } else { + return archiveTimeoutBuilder_.getMessage(); + } + } - public static final int PERSISTENT_DIRECTORIES_FIELD_NUMBER = 13; + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setArchiveTimeout(com.google.protobuf.Duration value) { + if (archiveTimeoutBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + archiveTimeout_ = value; + } else { + archiveTimeoutBuilder_.setMessage(value); + } + bitField0_ |= 0x00000010; + onChanged(); + return this; + } - @SuppressWarnings("serial") - private java.util.List - persistentDirectories_; + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setArchiveTimeout(com.google.protobuf.Duration.Builder builderForValue) { + if (archiveTimeoutBuilder_ == null) { + archiveTimeout_ = builderForValue.build(); + } else { + archiveTimeoutBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000010; + onChanged(); + return this; + } - /** - * - * - *
            -   * Optional. Directories to persist across workstation sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.List - getPersistentDirectoriesList() { - return persistentDirectories_; - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeArchiveTimeout(com.google.protobuf.Duration value) { + if (archiveTimeoutBuilder_ == null) { + if (((bitField0_ & 0x00000010) != 0) + && archiveTimeout_ != null + && archiveTimeout_ != com.google.protobuf.Duration.getDefaultInstance()) { + getArchiveTimeoutBuilder().mergeFrom(value); + } else { + archiveTimeout_ = value; + } + } else { + archiveTimeoutBuilder_.mergeFrom(value); + } + if (archiveTimeout_ != null) { + bitField0_ |= 0x00000010; + onChanged(); + } + return this; + } - /** - * - * - *
            -   * Optional. Directories to persist across workstation sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.List< - ? extends com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder> - getPersistentDirectoriesOrBuilderList() { - return persistentDirectories_; - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearArchiveTimeout() { + bitField0_ = (bitField0_ & ~0x00000010); + archiveTimeout_ = null; + if (archiveTimeoutBuilder_ != null) { + archiveTimeoutBuilder_.dispose(); + archiveTimeoutBuilder_ = null; + } + onChanged(); + return this; + } - /** - * - * - *
            -   * Optional. Directories to persist across workstation sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public int getPersistentDirectoriesCount() { - return persistentDirectories_.size(); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.protobuf.Duration.Builder getArchiveTimeoutBuilder() { + bitField0_ |= 0x00000010; + onChanged(); + return internalGetArchiveTimeoutFieldBuilder().getBuilder(); + } - /** - * - * - *
            -   * Optional. Directories to persist across workstation sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - getPersistentDirectories(int index) { - return persistentDirectories_.get(index); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.protobuf.DurationOrBuilder getArchiveTimeoutOrBuilder() { + if (archiveTimeoutBuilder_ != null) { + return archiveTimeoutBuilder_.getMessageOrBuilder(); + } else { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; + } + } - /** - * - * - *
            -   * Optional. Directories to persist across workstation sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder - getPersistentDirectoriesOrBuilder(int index) { - return persistentDirectories_.get(index); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + internalGetArchiveTimeoutFieldBuilder() { + if (archiveTimeoutBuilder_ == null) { + archiveTimeoutBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder>( + getArchiveTimeout(), getParentForChildren(), isClean()); + archiveTimeout_ = null; + } + return archiveTimeoutBuilder_; + } - public static final int CONTAINER_FIELD_NUMBER = 14; - private com.google.cloud.workstations.v1.WorkstationConfig.Container container_; + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability) + } - /** - * - * - *
            -   * Optional. Container that runs upon startup for each workstation using this
            -   * workstation configuration.
            -   * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the container field is set. - */ - @java.lang.Override - public boolean hasContainer() { - return ((bitField0_ & 0x00000040) != 0); - } + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability) + private static final com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + DEFAULT_INSTANCE; - /** - * - * - *
            -   * Optional. Container that runs upon startup for each workstation using this
            -   * workstation configuration.
            -   * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The container. - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.Container getContainer() { - return container_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Container.getDefaultInstance() - : container_; - } + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability(); + } - /** - * - * - *
            -   * Optional. Container that runs upon startup for each workstation using this
            -   * workstation configuration.
            -   * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.ContainerOrBuilder - getContainerOrBuilder() { - return container_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Container.getDefaultInstance() - : container_; - } + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + getDefaultInstance() { + return DEFAULT_INSTANCE; + } - public static final int ENCRYPTION_KEY_FIELD_NUMBER = 17; - private com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryptionKey_; + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GceHyperdiskBalancedHighAvailability parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; - /** - * - * - *
            -   * Immutable. Encrypts resources of this workstation configuration using a
            -   * customer-managed encryption key (CMEK).
            -   *
            -   * If specified, the boot disk of the Compute Engine instance and the
            -   * persistent disk are encrypted using this encryption key. If
            -   * this field is not set, the disks are encrypted using a generated
            -   * key. Customer-managed encryption keys do not protect disk metadata.
            -   *
            -   * If the customer-managed encryption key is rotated, when the workstation
            -   * instance is stopped, the system attempts to recreate the
            -   * persistent disk with the new version of the key. Be sure to keep
            -   * older versions of the key until the persistent disk is recreated.
            -   * Otherwise, data on the persistent disk might be lost.
            -   *
            -   * If the encryption key is revoked, the workstation session automatically
            -   * stops within 7 hours.
            -   *
            -   * Immutable after the workstation configuration is created.
            -   * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; - * - * - * @return Whether the encryptionKey field is set. - */ - @java.lang.Override - public boolean hasEncryptionKey() { - return ((bitField0_ & 0x00000080) != 0); - } + public static com.google.protobuf.Parser parser() { + return PARSER; + } - /** - * - * - *
            -   * Immutable. Encrypts resources of this workstation configuration using a
            -   * customer-managed encryption key (CMEK).
            -   *
            -   * If specified, the boot disk of the Compute Engine instance and the
            -   * persistent disk are encrypted using this encryption key. If
            -   * this field is not set, the disks are encrypted using a generated
            -   * key. Customer-managed encryption keys do not protect disk metadata.
            -   *
            -   * If the customer-managed encryption key is rotated, when the workstation
            -   * instance is stopped, the system attempts to recreate the
            -   * persistent disk with the new version of the key. Be sure to keep
            -   * older versions of the key until the persistent disk is recreated.
            -   * Otherwise, data on the persistent disk might be lost.
            -   *
            -   * If the encryption key is revoked, the workstation session automatically
            -   * stops within 7 hours.
            -   *
            -   * Immutable after the workstation configuration is created.
            -   * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; - * - * - * @return The encryptionKey. - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - getEncryptionKey() { - return encryptionKey_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - .getDefaultInstance() - : encryptionKey_; - } + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } - /** - * - * - *
            -   * Immutable. Encrypts resources of this workstation configuration using a
            -   * customer-managed encryption key (CMEK).
            -   *
            -   * If specified, the boot disk of the Compute Engine instance and the
            -   * persistent disk are encrypted using this encryption key. If
            -   * this field is not set, the disks are encrypted using a generated
            -   * key. Customer-managed encryption keys do not protect disk metadata.
            -   *
            -   * If the customer-managed encryption key is rotated, when the workstation
            -   * instance is stopped, the system attempts to recreate the
            -   * persistent disk with the new version of the key. Be sure to keep
            -   * older versions of the key until the persistent disk is recreated.
            -   * Otherwise, data on the persistent disk might be lost.
            -   *
            -   * If the encryption key is revoked, the workstation session automatically
            -   * stops within 7 hours.
            -   *
            -   * Immutable after the workstation configuration is created.
            -   * 
            - * - * - * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKeyOrBuilder - getEncryptionKeyOrBuilder() { - return encryptionKey_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - .getDefaultInstance() - : encryptionKey_; - } - - public static final int READINESS_CHECKS_FIELD_NUMBER = 19; + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } - @SuppressWarnings("serial") - private java.util.List - readinessChecks_; + private int directoryTypeCase_ = 0; - /** - * - * - *
            -   * Optional. Readiness checks to perform when starting a workstation using
            -   * this workstation configuration. Mark a workstation as running only after
            -   * all specified readiness checks return 200 status codes.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.List - getReadinessChecksList() { - return readinessChecks_; - } + @SuppressWarnings("serial") + private java.lang.Object directoryType_; - /** - * - * - *
            -   * Optional. Readiness checks to perform when starting a workstation using
            -   * this workstation configuration. Mark a workstation as running only after
            -   * all specified readiness checks return 200 status codes.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.List< - ? extends com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder> - getReadinessChecksOrBuilderList() { - return readinessChecks_; - } + public enum DirectoryTypeCase + implements + com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + GCE_PD(2), + GCE_HD(3), + DIRECTORYTYPE_NOT_SET(0); + private final int value; - /** - * - * - *
            -   * Optional. Readiness checks to perform when starting a workstation using
            -   * this workstation configuration. Mark a workstation as running only after
            -   * all specified readiness checks return 200 status codes.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public int getReadinessChecksCount() { - return readinessChecks_.size(); - } + private DirectoryTypeCase(int value) { + this.value = value; + } - /** - * - * - *
            -   * Optional. Readiness checks to perform when starting a workstation using
            -   * this workstation configuration. Mark a workstation as running only after
            -   * all specified readiness checks return 200 status codes.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck getReadinessChecks( - int index) { - return readinessChecks_.get(index); - } + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static DirectoryTypeCase valueOf(int value) { + return forNumber(value); + } - /** - * - * - *
            -   * Optional. Readiness checks to perform when starting a workstation using
            -   * this workstation configuration. Mark a workstation as running only after
            -   * all specified readiness checks return 200 status codes.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder - getReadinessChecksOrBuilder(int index) { - return readinessChecks_.get(index); - } + public static DirectoryTypeCase forNumber(int value) { + switch (value) { + case 2: + return GCE_PD; + case 3: + return GCE_HD; + case 0: + return DIRECTORYTYPE_NOT_SET; + default: + return null; + } + } - public static final int REPLICA_ZONES_FIELD_NUMBER = 23; + public int getNumber() { + return this.value; + } + }; - @SuppressWarnings("serial") - private com.google.protobuf.LazyStringArrayList replicaZones_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + public DirectoryTypeCase getDirectoryTypeCase() { + return DirectoryTypeCase.forNumber(directoryTypeCase_); + } - /** - * - * - *
            -   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -   * resources within the region. If set, exactly two zones within the
            -   * workstation cluster's region must be specified—for example,
            -   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -   * zones within the region are used.
            -   *
            -   * Immutable after the workstation configuration is created.
            -   * 
            - * - * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; - * - * - * @return A list containing the replicaZones. - */ - public com.google.protobuf.ProtocolStringList getReplicaZonesList() { - return replicaZones_; - } + public static final int GCE_PD_FIELD_NUMBER = 2; - /** - * - * - *
            -   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -   * resources within the region. If set, exactly two zones within the
            -   * workstation cluster's region must be specified—for example,
            -   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -   * zones within the region are used.
            -   *
            -   * Immutable after the workstation configuration is created.
            -   * 
            - * - * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; - * - * - * @return The count of replicaZones. - */ - public int getReplicaZonesCount() { - return replicaZones_.size(); - } + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + * + * @return Whether the gcePd field is set. + */ + @java.lang.Override + public boolean hasGcePd() { + return directoryTypeCase_ == 2; + } - /** - * - * - *
            -   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -   * resources within the region. If set, exactly two zones within the
            -   * workstation cluster's region must be specified—for example,
            -   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -   * zones within the region are used.
            -   *
            -   * Immutable after the workstation configuration is created.
            -   * 
            - * - * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; - * - * - * @param index The index of the element to return. - * @return The replicaZones at the given index. - */ - public java.lang.String getReplicaZones(int index) { - return replicaZones_.get(index); - } + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + * + * @return The gcePd. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + getGcePd() { + if (directoryTypeCase_ == 2) { + return (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance(); + } - /** - * - * - *
            -   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -   * resources within the region. If set, exactly two zones within the
            -   * workstation cluster's region must be specified—for example,
            -   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -   * zones within the region are used.
            -   *
            -   * Immutable after the workstation configuration is created.
            -   * 
            - * - * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; - * - * - * @param index The index of the value to return. - * @return The bytes of the replicaZones at the given index. - */ - public com.google.protobuf.ByteString getReplicaZonesBytes(int index) { - return replicaZones_.getByteString(index); - } + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDiskOrBuilder + getGcePdOrBuilder() { + if (directoryTypeCase_ == 2) { + return (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance(); + } - public static final int DEGRADED_FIELD_NUMBER = 15; - private boolean degraded_ = false; + public static final int GCE_HD_FIELD_NUMBER = 3; - /** - * - * - *
            -   * Output only. Whether this resource is degraded, in which case it may
            -   * require user action to restore full functionality. See also the
            -   * [conditions][google.cloud.workstations.v1.WorkstationConfig.conditions]
            -   * field.
            -   * 
            - * - * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The degraded. - */ - @java.lang.Override - public boolean getDegraded() { - return degraded_; - } + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +     * availability disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + * + * @return Whether the gceHd field is set. + */ + @java.lang.Override + public boolean hasGceHd() { + return directoryTypeCase_ == 3; + } - public static final int CONDITIONS_FIELD_NUMBER = 16; + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +     * availability disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + * + * @return The gceHd. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + getGceHd() { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance(); + } - @SuppressWarnings("serial") - private java.util.List conditions_; + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +     * availability disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailabilityOrBuilder + getGceHdOrBuilder() { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance(); + } - /** - * - * - *
            -   * Output only. Status conditions describing the current resource state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public java.util.List getConditionsList() { - return conditions_; - } + public static final int MOUNT_PATH_FIELD_NUMBER = 1; - /** - * - * - *
            -   * Output only. Status conditions describing the current resource state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public java.util.List getConditionsOrBuilderList() { - return conditions_; - } + @SuppressWarnings("serial") + private volatile java.lang.Object mountPath_ = ""; - /** - * - * - *
            -   * Output only. Status conditions describing the current resource state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public int getConditionsCount() { - return conditions_.size(); - } + /** + * + * + *
            +     * Optional. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The mountPath. + */ + @java.lang.Override + public java.lang.String getMountPath() { + java.lang.Object ref = mountPath_; + 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(); + mountPath_ = s; + return s; + } + } - /** - * - * - *
            -   * Output only. Status conditions describing the current resource state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.rpc.Status getConditions(int index) { - return conditions_.get(index); - } + /** + * + * + *
            +     * Optional. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for mountPath. + */ + @java.lang.Override + public com.google.protobuf.ByteString getMountPathBytes() { + java.lang.Object ref = mountPath_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + mountPath_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - /** - * - * - *
            -   * Output only. Status conditions describing the current resource state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { - return conditions_.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; + private byte memoizedIsInitialized = -1; - memoizedIsInitialized = 1; - return true; - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - @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(displayName_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, displayName_); + memoizedIsInitialized = 1; + return true; } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 3, uid_); + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mountPath_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, mountPath_); + } + if (directoryTypeCase_ == 2) { + output.writeMessage( + 2, + (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_); + } + if (directoryTypeCase_ == 3) { + output.writeMessage( + 3, + (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_); + } + getUnknownFields().writeTo(output); } - if (reconciling_ != false) { - output.writeBool(4, reconciling_); + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mountPath_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, mountPath_); + } + if (directoryTypeCase_ == 2) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 2, + (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_); + } + if (directoryTypeCase_ == 3) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 3, + (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetAnnotations(), AnnotationsDefaultEntryHolder.defaultEntry, 5); - if (((bitField0_ & 0x00000001) != 0)) { - output.writeMessage(6, getCreateTime()); + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory other = + (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) obj; + + if (!getMountPath().equals(other.getMountPath())) return false; + if (!getDirectoryTypeCase().equals(other.getDirectoryTypeCase())) return false; + switch (directoryTypeCase_) { + case 2: + if (!getGcePd().equals(other.getGcePd())) return false; + break; + case 3: + if (!getGceHd().equals(other.getGceHd())) return false; + break; + case 0: + default: + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; } - if (((bitField0_ & 0x00000002) != 0)) { - output.writeMessage(7, getUpdateTime()); + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + MOUNT_PATH_FIELD_NUMBER; + hash = (53 * hash) + getMountPath().hashCode(); + switch (directoryTypeCase_) { + case 2: + hash = (37 * hash) + GCE_PD_FIELD_NUMBER; + hash = (53 * hash) + getGcePd().hashCode(); + break; + case 3: + hash = (37 * hash) + GCE_HD_FIELD_NUMBER; + hash = (53 * hash) + getGceHd().hashCode(); + break; + case 0: + default: + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - if (((bitField0_ & 0x00000004) != 0)) { - output.writeMessage(8, getDeleteTime()); + + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 9, etag_); + + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - if (((bitField0_ & 0x00000008) != 0)) { - output.writeMessage(10, getIdleTimeout()); + + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - if (((bitField0_ & 0x00000010) != 0)) { - output.writeMessage(11, getRunningTimeout()); + + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - if (((bitField0_ & 0x00000020) != 0)) { - output.writeMessage(12, getHost()); + + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - for (int i = 0; i < persistentDirectories_.size(); i++) { - output.writeMessage(13, persistentDirectories_.get(i)); + + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - if (((bitField0_ & 0x00000040) != 0)) { - output.writeMessage(14, getContainer()); + + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - if (degraded_ != false) { - output.writeBool(15, degraded_); + + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - for (int i = 0; i < conditions_.size(); i++) { - output.writeMessage(16, conditions_.get(i)); + + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); } - if (((bitField0_ & 0x00000080) != 0)) { - output.writeMessage(17, getEncryptionKey()); + + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); } - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 18); - for (int i = 0; i < readinessChecks_.size(); i++) { - output.writeMessage(19, readinessChecks_.get(i)); + + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - for (int i = 0; i < replicaZones_.size(); i++) { - com.google.protobuf.GeneratedMessage.writeString(output, 23, replicaZones_.getRaw(i)); + + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - getUnknownFields().writeTo(output); - } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_); + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(2, displayName_); + + public static Builder newBuilder( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(3, uid_); + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } - if (reconciling_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, reconciling_); + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; } - for (java.util.Map.Entry entry : - internalGetAnnotations().getMap().entrySet()) { - com.google.protobuf.MapEntry annotations__ = - AnnotationsDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) + + /** + * + * + *
            +     * A directory to persist across workstation sessions. Updates to this field
            +     * will not update existing workstations and will only take effect on new
            +     * workstations.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.class, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder + .class); + } + + // Construct using + // com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (gcePdBuilder_ != null) { + gcePdBuilder_.clear(); + } + if (gceHdBuilder_ != null) { + gceHdBuilder_.clear(); + } + mountPath_ = ""; + directoryTypeCase_ = 0; + directoryType_ = null; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory build() { + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory buildPartial() { + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory result = + new com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + buildPartialOneofs(result); + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000004) != 0)) { + result.mountPath_ = mountPath_; + } + } + + private void buildPartialOneofs( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory result) { + result.directoryTypeCase_ = directoryTypeCase_; + result.directoryType_ = this.directoryType_; + if (directoryTypeCase_ == 2 && gcePdBuilder_ != null) { + result.directoryType_ = gcePdBuilder_.build(); + } + if (directoryTypeCase_ == 3 && gceHdBuilder_ != null) { + result.directoryType_ = gceHdBuilder_.build(); + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) { + return mergeFrom( + (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory other) { + if (other + == com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .getDefaultInstance()) return this; + if (!other.getMountPath().isEmpty()) { + mountPath_ = other.mountPath_; + bitField0_ |= 0x00000004; + onChanged(); + } + switch (other.getDirectoryTypeCase()) { + case GCE_PD: + { + mergeGcePd(other.getGcePd()); + break; + } + case GCE_HD: + { + mergeGceHd(other.getGceHd()); + break; + } + case DIRECTORYTYPE_NOT_SET: + { + break; + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + mountPath_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 10 + case 18: + { + input.readMessage(internalGetGcePdFieldBuilder().getBuilder(), extensionRegistry); + directoryTypeCase_ = 2; + break; + } // case 18 + case 26: + { + input.readMessage(internalGetGceHdFieldBuilder().getBuilder(), extensionRegistry); + directoryTypeCase_ = 3; + break; + } // case 26 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int directoryTypeCase_ = 0; + private java.lang.Object directoryType_; + + public DirectoryTypeCase getDirectoryTypeCase() { + return DirectoryTypeCase.forNumber(directoryTypeCase_); + } + + public Builder clearDirectoryType() { + directoryTypeCase_ = 0; + directoryType_ = null; + onChanged(); + return this; + } + + private int bitField0_; + + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDiskOrBuilder> + gcePdBuilder_; + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + * + * @return Whether the gcePd field is set. + */ + @java.lang.Override + public boolean hasGcePd() { + return directoryTypeCase_ == 2; + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + * + * @return The gcePd. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + getGcePd() { + if (gcePdBuilder_ == null) { + if (directoryTypeCase_ == 2) { + return (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance(); + } else { + if (directoryTypeCase_ == 2) { + return gcePdBuilder_.getMessage(); + } + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance(); + } + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + */ + public Builder setGcePd( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + value) { + if (gcePdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + directoryType_ = value; + onChanged(); + } else { + gcePdBuilder_.setMessage(value); + } + directoryTypeCase_ = 2; + return this; + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + */ + public Builder setGcePd( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.Builder + builderForValue) { + if (gcePdBuilder_ == null) { + directoryType_ = builderForValue.build(); + onChanged(); + } else { + gcePdBuilder_.setMessage(builderForValue.build()); + } + directoryTypeCase_ = 2; + return this; + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + */ + public Builder mergeGcePd( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + value) { + if (gcePdBuilder_ == null) { + if (directoryTypeCase_ == 2 + && directoryType_ + != com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance()) { + directoryType_ = + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.newBuilder( + (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_) + .mergeFrom(value) + .buildPartial(); + } else { + directoryType_ = value; + } + onChanged(); + } else { + if (directoryTypeCase_ == 2) { + gcePdBuilder_.mergeFrom(value); + } else { + gcePdBuilder_.setMessage(value); + } + } + directoryTypeCase_ = 2; + return this; + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + */ + public Builder clearGcePd() { + if (gcePdBuilder_ == null) { + if (directoryTypeCase_ == 2) { + directoryTypeCase_ = 0; + directoryType_ = null; + onChanged(); + } + } else { + if (directoryTypeCase_ == 2) { + directoryTypeCase_ = 0; + directoryType_ = null; + } + gcePdBuilder_.clear(); + } + return this; + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.Builder + getGcePdBuilder() { + return internalGetGcePdFieldBuilder().getBuilder(); + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDiskOrBuilder + getGcePdOrBuilder() { + if ((directoryTypeCase_ == 2) && (gcePdBuilder_ != null)) { + return gcePdBuilder_.getMessageOrBuilder(); + } else { + if (directoryTypeCase_ == 2) { + return (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance(); + } + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDiskOrBuilder> + internalGetGcePdFieldBuilder() { + if (gcePdBuilder_ == null) { + if (!(directoryTypeCase_ == 2)) { + directoryType_ = + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance(); + } + gcePdBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDiskOrBuilder>( + (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_, + getParentForChildren(), + isClean()); + directoryType_ = null; + } + directoryTypeCase_ = 2; + onChanged(); + return gcePdBuilder_; + } + + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailabilityOrBuilder> + gceHdBuilder_; + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + * + * @return Whether the gceHd field is set. + */ + @java.lang.Override + public boolean hasGceHd() { + return directoryTypeCase_ == 3; + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + * + * @return The gceHd. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + getGceHd() { + if (gceHdBuilder_ == null) { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance(); + } else { + if (directoryTypeCase_ == 3) { + return gceHdBuilder_.getMessage(); + } + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance(); + } + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + public Builder setGceHd( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + value) { + if (gceHdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + directoryType_ = value; + onChanged(); + } else { + gceHdBuilder_.setMessage(value); + } + directoryTypeCase_ = 3; + return this; + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + public Builder setGceHd( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.Builder + builderForValue) { + if (gceHdBuilder_ == null) { + directoryType_ = builderForValue.build(); + onChanged(); + } else { + gceHdBuilder_.setMessage(builderForValue.build()); + } + directoryTypeCase_ = 3; + return this; + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + public Builder mergeGceHd( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + value) { + if (gceHdBuilder_ == null) { + if (directoryTypeCase_ == 3 + && directoryType_ + != com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance()) { + directoryType_ = + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.newBuilder( + (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_) + .mergeFrom(value) + .buildPartial(); + } else { + directoryType_ = value; + } + onChanged(); + } else { + if (directoryTypeCase_ == 3) { + gceHdBuilder_.mergeFrom(value); + } else { + gceHdBuilder_.setMessage(value); + } + } + directoryTypeCase_ = 3; + return this; + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + public Builder clearGceHd() { + if (gceHdBuilder_ == null) { + if (directoryTypeCase_ == 3) { + directoryTypeCase_ = 0; + directoryType_ = null; + onChanged(); + } + } else { + if (directoryTypeCase_ == 3) { + directoryTypeCase_ = 0; + directoryType_ = null; + } + gceHdBuilder_.clear(); + } + return this; + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.Builder + getGceHdBuilder() { + return internalGetGceHdFieldBuilder().getBuilder(); + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailabilityOrBuilder + getGceHdOrBuilder() { + if ((directoryTypeCase_ == 3) && (gceHdBuilder_ != null)) { + return gceHdBuilder_.getMessageOrBuilder(); + } else { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance(); + } + } + + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailabilityOrBuilder> + internalGetGceHdFieldBuilder() { + if (gceHdBuilder_ == null) { + if (!(directoryTypeCase_ == 3)) { + directoryType_ = + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance(); + } + gceHdBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailabilityOrBuilder>( + (com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_, + getParentForChildren(), + isClean()); + directoryType_ = null; + } + directoryTypeCase_ = 3; + onChanged(); + return gceHdBuilder_; + } + + private java.lang.Object mountPath_ = ""; + + /** + * + * + *
            +       * Optional. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The mountPath. + */ + public java.lang.String getMountPath() { + java.lang.Object ref = mountPath_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + mountPath_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Optional. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for mountPath. + */ + public com.google.protobuf.ByteString getMountPathBytes() { + java.lang.Object ref = mountPath_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + mountPath_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Optional. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The mountPath to set. + * @return This builder for chaining. + */ + public Builder setMountPath(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + mountPath_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearMountPath() { + mountPath_ = getDefaultInstance().getMountPath(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for mountPath to set. + * @return This builder for chaining. + */ + public Builder setMountPathBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + mountPath_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory) + private static final com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory(); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public PersistentDirectory parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface EphemeralDirectoryOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + * + * @return Whether the gcePd field is set. + */ + boolean hasGcePd(); + + /** + * + * + *
            +     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + * + * @return The gcePd. + */ + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + getGcePd(); + + /** + * + * + *
            +     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDiskOrBuilder + getGcePdOrBuilder(); + + /** + * + * + *
            +     * Required. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The mountPath. + */ + java.lang.String getMountPath(); + + /** + * + * + *
            +     * Required. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for mountPath. + */ + com.google.protobuf.ByteString getMountPathBytes(); + + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.DirectoryTypeCase + getDirectoryTypeCase(); + } + + /** + * + * + *
            +   * An ephemeral directory which won't persist across workstation sessions. It
            +   * is freshly created on every workstation start operation.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory} + */ + public static final class EphemeralDirectory extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory) + EphemeralDirectoryOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "EphemeralDirectory"); + } + + // Use EphemeralDirectory.newBuilder() to construct. + private EphemeralDirectory(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private EphemeralDirectory() { + mountPath_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.class, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.Builder.class); + } + + public interface GcePersistentDiskOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +       * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +       * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The diskType. + */ + java.lang.String getDiskType(); + + /** + * + * + *
            +       * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +       * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for diskType. + */ + com.google.protobuf.ByteString getDiskTypeBytes(); + + /** + * + * + *
            +       * Optional. Name of the snapshot to use as the source for the disk. Must
            +       * be empty if
            +       * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * is set. Must be empty if
            +       * [read_only][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +       * is false. Updating
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, see
            +       * [the filesystems available in Container-Optimized
            +       * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceSnapshot. + */ + java.lang.String getSourceSnapshot(); + + /** + * + * + *
            +       * Optional. Name of the snapshot to use as the source for the disk. Must
            +       * be empty if
            +       * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * is set. Must be empty if
            +       * [read_only][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +       * is false. Updating
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, see
            +       * [the filesystems available in Container-Optimized
            +       * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceSnapshot. + */ + com.google.protobuf.ByteString getSourceSnapshotBytes(); + + /** + * + * + *
            +       * Optional. Name of the disk image to use as the source for the disk.
            +       * Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * is set. Updating
            +       * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, please
            +       * refer to the [COS
            +       * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceImage. + */ + java.lang.String getSourceImage(); + + /** + * + * + *
            +       * Optional. Name of the disk image to use as the source for the disk.
            +       * Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * is set. Updating
            +       * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, please
            +       * refer to the [COS
            +       * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceImage. + */ + com.google.protobuf.ByteString getSourceImageBytes(); + + /** + * + * + *
            +       * Optional. Whether the disk is read only. If true, the disk may be
            +       * shared by multiple VMs and
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * must be set.
            +       * 
            + * + * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The readOnly. + */ + boolean getReadOnly(); + } + + /** + * + * + *
            +     * An EphemeralDirectory is backed by a Compute Engine persistent disk.
            +     * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk} + */ + public static final class GcePersistentDisk extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) + GcePersistentDiskOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "GcePersistentDisk"); + } + + // Use GcePersistentDisk.newBuilder() to construct. + private GcePersistentDisk(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private GcePersistentDisk() { + diskType_ = ""; + sourceSnapshot_ = ""; + sourceImage_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.class, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.Builder.class); + } + + public static final int DISK_TYPE_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object diskType_ = ""; + + /** + * + * + *
            +       * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +       * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The diskType. + */ + @java.lang.Override + public java.lang.String getDiskType() { + java.lang.Object ref = diskType_; + 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(); + diskType_ = s; + return s; + } + } + + /** + * + * + *
            +       * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +       * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for diskType. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDiskTypeBytes() { + java.lang.Object ref = diskType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + diskType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SOURCE_SNAPSHOT_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object sourceSnapshot_ = ""; + + /** + * + * + *
            +       * Optional. Name of the snapshot to use as the source for the disk. Must
            +       * be empty if
            +       * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * is set. Must be empty if
            +       * [read_only][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +       * is false. Updating
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, see
            +       * [the filesystems available in Container-Optimized
            +       * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceSnapshot. + */ + @java.lang.Override + public java.lang.String getSourceSnapshot() { + java.lang.Object ref = sourceSnapshot_; + 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(); + sourceSnapshot_ = s; + return s; + } + } + + /** + * + * + *
            +       * Optional. Name of the snapshot to use as the source for the disk. Must
            +       * be empty if
            +       * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * is set. Must be empty if
            +       * [read_only][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +       * is false. Updating
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, see
            +       * [the filesystems available in Container-Optimized
            +       * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceSnapshot. + */ + @java.lang.Override + public com.google.protobuf.ByteString getSourceSnapshotBytes() { + java.lang.Object ref = sourceSnapshot_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceSnapshot_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SOURCE_IMAGE_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object sourceImage_ = ""; + + /** + * + * + *
            +       * Optional. Name of the disk image to use as the source for the disk.
            +       * Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * is set. Updating
            +       * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, please
            +       * refer to the [COS
            +       * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceImage. + */ + @java.lang.Override + public java.lang.String getSourceImage() { + java.lang.Object ref = sourceImage_; + 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(); + sourceImage_ = s; + return s; + } + } + + /** + * + * + *
            +       * Optional. Name of the disk image to use as the source for the disk.
            +       * Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * is set. Updating
            +       * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, please
            +       * refer to the [COS
            +       * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceImage. + */ + @java.lang.Override + public com.google.protobuf.ByteString getSourceImageBytes() { + java.lang.Object ref = sourceImage_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceImage_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int READ_ONLY_FIELD_NUMBER = 4; + private boolean readOnly_ = false; + + /** + * + * + *
            +       * Optional. Whether the disk is read only. If true, the disk may be
            +       * shared by multiple VMs and
            +       * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * must be set.
            +       * 
            + * + * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The readOnly. + */ + @java.lang.Override + public boolean getReadOnly() { + return readOnly_; + } + + 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(diskType_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, diskType_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, sourceSnapshot_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceImage_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, sourceImage_); + } + if (readOnly_ != false) { + output.writeBool(4, readOnly_); + } + 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(diskType_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, diskType_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, sourceSnapshot_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceImage_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, sourceImage_); + } + if (readOnly_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, readOnly_); + } + 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.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + other = + (com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + obj; + + if (!getDiskType().equals(other.getDiskType())) return false; + if (!getSourceSnapshot().equals(other.getSourceSnapshot())) return false; + if (!getSourceImage().equals(other.getSourceImage())) return false; + if (getReadOnly() != other.getReadOnly()) 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) + DISK_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getDiskType().hashCode(); + hash = (37 * hash) + SOURCE_SNAPSHOT_FIELD_NUMBER; + hash = (53 * hash) + getSourceSnapshot().hashCode(); + hash = (37 * hash) + SOURCE_IMAGE_FIELD_NUMBER; + hash = (53 * hash) + getSourceImage().hashCode(); + hash = (37 * hash) + READ_ONLY_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReadOnly()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + 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.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + 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.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + 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.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + 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.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + 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; + } + + /** + * + * + *
            +       * An EphemeralDirectory is backed by a Compute Engine persistent disk.
            +       * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDiskOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.class, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.Builder.class); + } + + // Construct using + // com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + diskType_ = ""; + sourceSnapshot_ = ""; + sourceImage_ = ""; + readOnly_ = false; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + build() { + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + buildPartial() { + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + result = + new com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.diskType_ = diskType_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.sourceSnapshot_ = sourceSnapshot_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.sourceImage_ = sourceImage_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.readOnly_ = readOnly_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) { + return mergeFrom( + (com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + other) { + if (other + == com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance()) return this; + if (!other.getDiskType().isEmpty()) { + diskType_ = other.diskType_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getSourceSnapshot().isEmpty()) { + sourceSnapshot_ = other.sourceSnapshot_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getSourceImage().isEmpty()) { + sourceImage_ = other.sourceImage_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getReadOnly() != false) { + setReadOnly(other.getReadOnly()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + diskType_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + sourceSnapshot_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + sourceImage_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: + { + readOnly_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object diskType_ = ""; + + /** + * + * + *
            +         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The diskType. + */ + public java.lang.String getDiskType() { + java.lang.Object ref = diskType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + diskType_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for diskType. + */ + public com.google.protobuf.ByteString getDiskTypeBytes() { + java.lang.Object ref = diskType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + diskType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The diskType to set. + * @return This builder for chaining. + */ + public Builder setDiskType(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + diskType_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearDiskType() { + diskType_ = getDefaultInstance().getDiskType(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for diskType to set. + * @return This builder for chaining. + */ + public Builder setDiskTypeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + diskType_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object sourceSnapshot_ = ""; + + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. Must
            +         * be empty if
            +         * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * is set. Must be empty if
            +         * [read_only][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +         * is false. Updating
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, see
            +         * [the filesystems available in Container-Optimized
            +         * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceSnapshot. + */ + public java.lang.String getSourceSnapshot() { + java.lang.Object ref = sourceSnapshot_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceSnapshot_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. Must
            +         * be empty if
            +         * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * is set. Must be empty if
            +         * [read_only][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +         * is false. Updating
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, see
            +         * [the filesystems available in Container-Optimized
            +         * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceSnapshot. + */ + public com.google.protobuf.ByteString getSourceSnapshotBytes() { + java.lang.Object ref = sourceSnapshot_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceSnapshot_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. Must
            +         * be empty if
            +         * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * is set. Must be empty if
            +         * [read_only][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +         * is false. Updating
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, see
            +         * [the filesystems available in Container-Optimized
            +         * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sourceSnapshot to set. + * @return This builder for chaining. + */ + public Builder setSourceSnapshot(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + sourceSnapshot_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. Must
            +         * be empty if
            +         * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * is set. Must be empty if
            +         * [read_only][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +         * is false. Updating
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, see
            +         * [the filesystems available in Container-Optimized
            +         * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSourceSnapshot() { + sourceSnapshot_ = getDefaultInstance().getSourceSnapshot(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. Must
            +         * be empty if
            +         * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * is set. Must be empty if
            +         * [read_only][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +         * is false. Updating
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, see
            +         * [the filesystems available in Container-Optimized
            +         * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for sourceSnapshot to set. + * @return This builder for chaining. + */ + public Builder setSourceSnapshotBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + sourceSnapshot_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object sourceImage_ = ""; + + /** + * + * + *
            +         * Optional. Name of the disk image to use as the source for the disk.
            +         * Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * is set. Updating
            +         * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, please
            +         * refer to the [COS
            +         * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceImage. + */ + public java.lang.String getSourceImage() { + java.lang.Object ref = sourceImage_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceImage_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +         * Optional. Name of the disk image to use as the source for the disk.
            +         * Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * is set. Updating
            +         * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, please
            +         * refer to the [COS
            +         * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceImage. + */ + public com.google.protobuf.ByteString getSourceImageBytes() { + java.lang.Object ref = sourceImage_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceImage_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +         * Optional. Name of the disk image to use as the source for the disk.
            +         * Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * is set. Updating
            +         * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, please
            +         * refer to the [COS
            +         * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sourceImage to set. + * @return This builder for chaining. + */ + public Builder setSourceImage(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + sourceImage_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Name of the disk image to use as the source for the disk.
            +         * Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * is set. Updating
            +         * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, please
            +         * refer to the [COS
            +         * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSourceImage() { + sourceImage_ = getDefaultInstance().getSourceImage(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Name of the disk image to use as the source for the disk.
            +         * Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * is set. Updating
            +         * [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, please
            +         * refer to the [COS
            +         * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for sourceImage to set. + * @return This builder for chaining. + */ + public Builder setSourceImageBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + sourceImage_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private boolean readOnly_; + + /** + * + * + *
            +         * Optional. Whether the disk is read only. If true, the disk may be
            +         * shared by multiple VMs and
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * must be set.
            +         * 
            + * + * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The readOnly. + */ + @java.lang.Override + public boolean getReadOnly() { + return readOnly_; + } + + /** + * + * + *
            +         * Optional. Whether the disk is read only. If true, the disk may be
            +         * shared by multiple VMs and
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * must be set.
            +         * 
            + * + * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The readOnly to set. + * @return This builder for chaining. + */ + public Builder setReadOnly(boolean value) { + + readOnly_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Whether the disk is read only. If true, the disk may be
            +         * shared by multiple VMs and
            +         * [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * must be set.
            +         * 
            + * + * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearReadOnly() { + bitField0_ = (bitField0_ & ~0x00000008); + readOnly_ = false; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) + private static final com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk(); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GcePersistentDisk parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + private int directoryTypeCase_ = 0; + + @SuppressWarnings("serial") + private java.lang.Object directoryType_; + + public enum DirectoryTypeCase + implements + com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + GCE_PD(3), + DIRECTORYTYPE_NOT_SET(0); + private final int value; + + private DirectoryTypeCase(int value) { + this.value = value; + } + + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static DirectoryTypeCase valueOf(int value) { + return forNumber(value); + } + + public static DirectoryTypeCase forNumber(int value) { + switch (value) { + case 3: + return GCE_PD; + case 0: + return DIRECTORYTYPE_NOT_SET; + default: + return null; + } + } + + public int getNumber() { + return this.value; + } + }; + + public DirectoryTypeCase getDirectoryTypeCase() { + return DirectoryTypeCase.forNumber(directoryTypeCase_); + } + + public static final int GCE_PD_FIELD_NUMBER = 3; + + /** + * + * + *
            +     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + * + * @return Whether the gcePd field is set. + */ + @java.lang.Override + public boolean hasGcePd() { + return directoryTypeCase_ == 3; + } + + /** + * + * + *
            +     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + * + * @return The gcePd. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + getGcePd() { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + .getDefaultInstance(); + } + + /** + * + * + *
            +     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDiskOrBuilder + getGcePdOrBuilder() { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + .getDefaultInstance(); + } + + public static final int MOUNT_PATH_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object mountPath_ = ""; + + /** + * + * + *
            +     * Required. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The mountPath. + */ + @java.lang.Override + public java.lang.String getMountPath() { + java.lang.Object ref = mountPath_; + 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(); + mountPath_ = s; + return s; + } + } + + /** + * + * + *
            +     * Required. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for mountPath. + */ + @java.lang.Override + public com.google.protobuf.ByteString getMountPathBytes() { + java.lang.Object ref = mountPath_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + mountPath_ = 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(mountPath_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, mountPath_); + } + if (directoryTypeCase_ == 3) { + output.writeMessage( + 3, + (com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_); + } + 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(mountPath_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, mountPath_); + } + if (directoryTypeCase_ == 3) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 3, + (com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_); + } + 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.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory other = + (com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory) obj; + + if (!getMountPath().equals(other.getMountPath())) return false; + if (!getDirectoryTypeCase().equals(other.getDirectoryTypeCase())) return false; + switch (directoryTypeCase_) { + case 3: + if (!getGcePd().equals(other.getGcePd())) 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(); + hash = (37 * hash) + MOUNT_PATH_FIELD_NUMBER; + hash = (53 * hash) + getMountPath().hashCode(); + switch (directoryTypeCase_) { + case 3: + hash = (37 * hash) + GCE_PD_FIELD_NUMBER; + hash = (53 * hash) + getGcePd().hashCode(); + break; + case 0: + default: + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory 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.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory 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.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + 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.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory 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.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory 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; + } + + /** + * + * + *
            +     * An ephemeral directory which won't persist across workstation sessions. It
            +     * is freshly created on every workstation start operation.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory) + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectoryOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.class, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.Builder + .class); + } + + // Construct using + // com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (gcePdBuilder_ != null) { + gcePdBuilder_.clear(); + } + mountPath_ = ""; + directoryTypeCase_ = 0; + directoryType_ = null; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory build() { + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory buildPartial() { + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory result = + new com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + buildPartialOneofs(result); + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.mountPath_ = mountPath_; + } + } + + private void buildPartialOneofs( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory result) { + result.directoryTypeCase_ = directoryTypeCase_; + result.directoryType_ = this.directoryType_; + if (directoryTypeCase_ == 3 && gcePdBuilder_ != null) { + result.directoryType_ = gcePdBuilder_.build(); + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory) { + return mergeFrom( + (com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory other) { + if (other + == com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .getDefaultInstance()) return this; + if (!other.getMountPath().isEmpty()) { + mountPath_ = other.mountPath_; + bitField0_ |= 0x00000002; + onChanged(); + } + switch (other.getDirectoryTypeCase()) { + case GCE_PD: + { + mergeGcePd(other.getGcePd()); + break; + } + case DIRECTORYTYPE_NOT_SET: + { + break; + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + mountPath_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 10 + case 26: + { + input.readMessage(internalGetGcePdFieldBuilder().getBuilder(), extensionRegistry); + directoryTypeCase_ = 3; + break; + } // case 26 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int directoryTypeCase_ = 0; + private java.lang.Object directoryType_; + + public DirectoryTypeCase getDirectoryTypeCase() { + return DirectoryTypeCase.forNumber(directoryTypeCase_); + } + + public Builder clearDirectoryType() { + directoryTypeCase_ = 0; + directoryType_ = null; + onChanged(); + return this; + } + + private int bitField0_; + + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDiskOrBuilder> + gcePdBuilder_; + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + * + * @return Whether the gcePd field is set. + */ + @java.lang.Override + public boolean hasGcePd() { + return directoryTypeCase_ == 3; + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + * + * @return The gcePd. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + getGcePd() { + if (gcePdBuilder_ == null) { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance(); + } else { + if (directoryTypeCase_ == 3) { + return gcePdBuilder_.getMessage(); + } + return com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance(); + } + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + public Builder setGcePd( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + value) { + if (gcePdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + directoryType_ = value; + onChanged(); + } else { + gcePdBuilder_.setMessage(value); + } + directoryTypeCase_ = 3; + return this; + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + public Builder setGcePd( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + .Builder + builderForValue) { + if (gcePdBuilder_ == null) { + directoryType_ = builderForValue.build(); + onChanged(); + } else { + gcePdBuilder_.setMessage(builderForValue.build()); + } + directoryTypeCase_ = 3; + return this; + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + public Builder mergeGcePd( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + value) { + if (gcePdBuilder_ == null) { + if (directoryTypeCase_ == 3 + && directoryType_ + != com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance()) { + directoryType_ = + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.newBuilder( + (com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_) + .mergeFrom(value) + .buildPartial(); + } else { + directoryType_ = value; + } + onChanged(); + } else { + if (directoryTypeCase_ == 3) { + gcePdBuilder_.mergeFrom(value); + } else { + gcePdBuilder_.setMessage(value); + } + } + directoryTypeCase_ = 3; + return this; + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + public Builder clearGcePd() { + if (gcePdBuilder_ == null) { + if (directoryTypeCase_ == 3) { + directoryTypeCase_ = 0; + directoryType_ = null; + onChanged(); + } + } else { + if (directoryTypeCase_ == 3) { + directoryTypeCase_ = 0; + directoryType_ = null; + } + gcePdBuilder_.clear(); + } + return this; + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + .Builder + getGcePdBuilder() { + return internalGetGcePdFieldBuilder().getBuilder(); + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDiskOrBuilder + getGcePdOrBuilder() { + if ((directoryTypeCase_ == 3) && (gcePdBuilder_ != null)) { + return gcePdBuilder_.getMessageOrBuilder(); + } else { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_; + } + return com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance(); + } + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDiskOrBuilder> + internalGetGcePdFieldBuilder() { + if (gcePdBuilder_ == null) { + if (!(directoryTypeCase_ == 3)) { + directoryType_ = + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance(); + } + gcePdBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDiskOrBuilder>( + (com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_, + getParentForChildren(), + isClean()); + directoryType_ = null; + } + directoryTypeCase_ = 3; + onChanged(); + return gcePdBuilder_; + } + + private java.lang.Object mountPath_ = ""; + + /** + * + * + *
            +       * Required. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The mountPath. + */ + public java.lang.String getMountPath() { + java.lang.Object ref = mountPath_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + mountPath_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Required. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for mountPath. + */ + public com.google.protobuf.ByteString getMountPathBytes() { + java.lang.Object ref = mountPath_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + mountPath_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Required. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The mountPath to set. + * @return This builder for chaining. + */ + public Builder setMountPath(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + mountPath_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Required. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearMountPath() { + mountPath_ = getDefaultInstance().getMountPath(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Required. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The bytes for mountPath to set. + * @return This builder for chaining. + */ + public Builder setMountPathBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + mountPath_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory) + private static final com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory(); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public EphemeralDirectory parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface ContainerOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.Container) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +     * Optional. A Docker container image that defines a custom environment.
            +     *
            +     * Cloud Workstations provides a number of
            +     * [preconfigured
            +     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +     * but you can create your own
            +     * [custom container
            +     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +     * If using a private image, the `host.gceInstance.serviceAccount` field
            +     * must be specified in the workstation configuration.
            +     * If using a custom container image, the service account must have
            +     * [Artifact Registry
            +     * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +     * permission to pull the specified image. Otherwise, the image must be
            +     * publicly accessible.
            +     * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The image. + */ + java.lang.String getImage(); + + /** + * + * + *
            +     * Optional. A Docker container image that defines a custom environment.
            +     *
            +     * Cloud Workstations provides a number of
            +     * [preconfigured
            +     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +     * but you can create your own
            +     * [custom container
            +     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +     * If using a private image, the `host.gceInstance.serviceAccount` field
            +     * must be specified in the workstation configuration.
            +     * If using a custom container image, the service account must have
            +     * [Artifact Registry
            +     * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +     * permission to pull the specified image. Otherwise, the image must be
            +     * publicly accessible.
            +     * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for image. + */ + com.google.protobuf.ByteString getImageBytes(); + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the command. + */ + java.util.List getCommandList(); + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of command. + */ + int getCommandCount(); + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The command at the given index. + */ + java.lang.String getCommand(int index); + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the command at the given index. + */ + com.google.protobuf.ByteString getCommandBytes(int index); + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the args. + */ + java.util.List getArgsList(); + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of args. + */ + int getArgsCount(); + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The args at the given index. + */ + java.lang.String getArgs(int index); + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the args at the given index. + */ + com.google.protobuf.ByteString getArgsBytes(int index); + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + int getEnvCount(); + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + boolean containsEnv(java.lang.String key); + + /** Use {@link #getEnvMap()} instead. */ + @java.lang.Deprecated + java.util.Map getEnv(); + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + java.util.Map getEnvMap(); + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + /* nullable */ + java.lang.String getEnvOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue); + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + java.lang.String getEnvOrThrow(java.lang.String key); + + /** + * + * + *
            +     * Optional. If set, overrides the default DIR specified by the image.
            +     * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The workingDir. + */ + java.lang.String getWorkingDir(); + + /** + * + * + *
            +     * Optional. If set, overrides the default DIR specified by the image.
            +     * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for workingDir. + */ + com.google.protobuf.ByteString getWorkingDirBytes(); + + /** + * + * + *
            +     * Optional. If set, overrides the USER specified in the image with the
            +     * given uid.
            +     * 
            + * + * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The runAsUser. + */ + int getRunAsUser(); + } + + /** + * + * + *
            +   * A Docker container.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.Container} + */ + public static final class Container extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.Container) + ContainerOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "Container"); + } + + // Use Container.newBuilder() to construct. + private Container(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private Container() { + image_ = ""; + command_ = com.google.protobuf.LazyStringArrayList.emptyList(); + args_ = com.google.protobuf.LazyStringArrayList.emptyList(); + workingDir_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_descriptor; + } + + @SuppressWarnings({"rawtypes"}) + @java.lang.Override + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 4: + return internalGetEnv(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.Container.class, + com.google.cloud.workstations.v1.WorkstationConfig.Container.Builder.class); + } + + public static final int IMAGE_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object image_ = ""; + + /** + * + * + *
            +     * Optional. A Docker container image that defines a custom environment.
            +     *
            +     * Cloud Workstations provides a number of
            +     * [preconfigured
            +     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +     * but you can create your own
            +     * [custom container
            +     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +     * If using a private image, the `host.gceInstance.serviceAccount` field
            +     * must be specified in the workstation configuration.
            +     * If using a custom container image, the service account must have
            +     * [Artifact Registry
            +     * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +     * permission to pull the specified image. Otherwise, the image must be
            +     * publicly accessible.
            +     * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The image. + */ + @java.lang.Override + public java.lang.String getImage() { + java.lang.Object ref = image_; + 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(); + image_ = s; + return s; + } + } + + /** + * + * + *
            +     * Optional. A Docker container image that defines a custom environment.
            +     *
            +     * Cloud Workstations provides a number of
            +     * [preconfigured
            +     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +     * but you can create your own
            +     * [custom container
            +     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +     * If using a private image, the `host.gceInstance.serviceAccount` field
            +     * must be specified in the workstation configuration.
            +     * If using a custom container image, the service account must have
            +     * [Artifact Registry
            +     * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +     * permission to pull the specified image. Otherwise, the image must be
            +     * publicly accessible.
            +     * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for image. + */ + @java.lang.Override + public com.google.protobuf.ByteString getImageBytes() { + java.lang.Object ref = image_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + image_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int COMMAND_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList command_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the command. + */ + public com.google.protobuf.ProtocolStringList getCommandList() { + return command_; + } + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of command. + */ + public int getCommandCount() { + return command_.size(); + } + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The command at the given index. + */ + public java.lang.String getCommand(int index) { + return command_.get(index); + } + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the command at the given index. + */ + public com.google.protobuf.ByteString getCommandBytes(int index) { + return command_.getByteString(index); + } + + public static final int ARGS_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList args_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the args. + */ + public com.google.protobuf.ProtocolStringList getArgsList() { + return args_; + } + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of args. + */ + public int getArgsCount() { + return args_.size(); + } + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The args at the given index. + */ + public java.lang.String getArgs(int index) { + return args_.get(index); + } + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the args at the given index. + */ + public com.google.protobuf.ByteString getArgsBytes(int index) { + return args_.getByteString(index); + } + + public static final int ENV_FIELD_NUMBER = 4; + + private static final class EnvDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_EnvEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField env_; + + private com.google.protobuf.MapField internalGetEnv() { + if (env_ == null) { + return com.google.protobuf.MapField.emptyMapField(EnvDefaultEntryHolder.defaultEntry); + } + return env_; + } + + public int getEnvCount() { + return internalGetEnv().getMap().size(); + } + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsEnv(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetEnv().getMap().containsKey(key); + } + + /** Use {@link #getEnvMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getEnv() { + return getEnvMap(); + } + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getEnvMap() { + return internalGetEnv().getMap(); + } + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getEnvOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetEnv().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getEnvOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetEnv().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int WORKING_DIR_FIELD_NUMBER = 5; + + @SuppressWarnings("serial") + private volatile java.lang.Object workingDir_ = ""; + + /** + * + * + *
            +     * Optional. If set, overrides the default DIR specified by the image.
            +     * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The workingDir. + */ + @java.lang.Override + public java.lang.String getWorkingDir() { + java.lang.Object ref = workingDir_; + 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(); + workingDir_ = s; + return s; + } + } + + /** + * + * + *
            +     * Optional. If set, overrides the default DIR specified by the image.
            +     * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for workingDir. + */ + @java.lang.Override + public com.google.protobuf.ByteString getWorkingDirBytes() { + java.lang.Object ref = workingDir_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + workingDir_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int RUN_AS_USER_FIELD_NUMBER = 6; + private int runAsUser_ = 0; + + /** + * + * + *
            +     * Optional. If set, overrides the USER specified in the image with the
            +     * given uid.
            +     * 
            + * + * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The runAsUser. + */ + @java.lang.Override + public int getRunAsUser() { + return runAsUser_; + } + + 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(image_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, image_); + } + for (int i = 0; i < command_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, command_.getRaw(i)); + } + for (int i = 0; i < args_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, args_.getRaw(i)); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetEnv(), EnvDefaultEntryHolder.defaultEntry, 4); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workingDir_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 5, workingDir_); + } + if (runAsUser_ != 0) { + output.writeInt32(6, runAsUser_); + } + 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(image_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, image_); + } + { + int dataSize = 0; + for (int i = 0; i < command_.size(); i++) { + dataSize += computeStringSizeNoTag(command_.getRaw(i)); + } + size += dataSize; + size += 1 * getCommandList().size(); + } + { + int dataSize = 0; + for (int i = 0; i < args_.size(); i++) { + dataSize += computeStringSizeNoTag(args_.getRaw(i)); + } + size += dataSize; + size += 1 * getArgsList().size(); + } + for (java.util.Map.Entry entry : + internalGetEnv().getMap().entrySet()) { + com.google.protobuf.MapEntry env__ = + EnvDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, env__); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workingDir_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(5, workingDir_); + } + if (runAsUser_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(6, runAsUser_); + } + 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.cloud.workstations.v1.WorkstationConfig.Container)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationConfig.Container other = + (com.google.cloud.workstations.v1.WorkstationConfig.Container) obj; + + if (!getImage().equals(other.getImage())) return false; + if (!getCommandList().equals(other.getCommandList())) return false; + if (!getArgsList().equals(other.getArgsList())) return false; + if (!internalGetEnv().equals(other.internalGetEnv())) return false; + if (!getWorkingDir().equals(other.getWorkingDir())) return false; + if (getRunAsUser() != other.getRunAsUser()) 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) + IMAGE_FIELD_NUMBER; + hash = (53 * hash) + getImage().hashCode(); + if (getCommandCount() > 0) { + hash = (37 * hash) + COMMAND_FIELD_NUMBER; + hash = (53 * hash) + getCommandList().hashCode(); + } + if (getArgsCount() > 0) { + hash = (37 * hash) + ARGS_FIELD_NUMBER; + hash = (53 * hash) + getArgsList().hashCode(); + } + if (!internalGetEnv().getMap().isEmpty()) { + hash = (37 * hash) + ENV_FIELD_NUMBER; + hash = (53 * hash) + internalGetEnv().hashCode(); + } + hash = (37 * hash) + WORKING_DIR_FIELD_NUMBER; + hash = (53 * hash) + getWorkingDir().hashCode(); + hash = (37 * hash) + RUN_AS_USER_FIELD_NUMBER; + hash = (53 * hash) + getRunAsUser(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Container parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Container parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Container parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Container 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.cloud.workstations.v1.WorkstationConfig.Container parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Container parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Container parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Container 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.cloud.workstations.v1.WorkstationConfig.Container parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Container 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.cloud.workstations.v1.WorkstationConfig.Container parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Container 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.cloud.workstations.v1.WorkstationConfig.Container 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 Docker container.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.Container} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.Container) + com.google.cloud.workstations.v1.WorkstationConfig.ContainerOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_descriptor; + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 4: + return internalGetEnv(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( + int number) { + switch (number) { + case 4: + return internalGetMutableEnv(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.Container.class, + com.google.cloud.workstations.v1.WorkstationConfig.Container.Builder.class); + } + + // Construct using com.google.cloud.workstations.v1.WorkstationConfig.Container.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + image_ = ""; + command_ = com.google.protobuf.LazyStringArrayList.emptyList(); + args_ = com.google.protobuf.LazyStringArrayList.emptyList(); + internalGetMutableEnv().clear(); + workingDir_ = ""; + runAsUser_ = 0; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Container + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationConfig.Container.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Container build() { + com.google.cloud.workstations.v1.WorkstationConfig.Container result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Container buildPartial() { + com.google.cloud.workstations.v1.WorkstationConfig.Container result = + new com.google.cloud.workstations.v1.WorkstationConfig.Container(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1.WorkstationConfig.Container result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.image_ = image_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + command_.makeImmutable(); + result.command_ = command_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + args_.makeImmutable(); + result.args_ = args_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.env_ = internalGetEnv(); + result.env_.makeImmutable(); + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.workingDir_ = workingDir_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.runAsUser_ = runAsUser_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1.WorkstationConfig.Container) { + return mergeFrom((com.google.cloud.workstations.v1.WorkstationConfig.Container) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.workstations.v1.WorkstationConfig.Container other) { + if (other + == com.google.cloud.workstations.v1.WorkstationConfig.Container.getDefaultInstance()) + return this; + if (!other.getImage().isEmpty()) { + image_ = other.image_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.command_.isEmpty()) { + if (command_.isEmpty()) { + command_ = other.command_; + bitField0_ |= 0x00000002; + } else { + ensureCommandIsMutable(); + command_.addAll(other.command_); + } + onChanged(); + } + if (!other.args_.isEmpty()) { + if (args_.isEmpty()) { + args_ = other.args_; + bitField0_ |= 0x00000004; + } else { + ensureArgsIsMutable(); + args_.addAll(other.args_); + } + onChanged(); + } + internalGetMutableEnv().mergeFrom(other.internalGetEnv()); + bitField0_ |= 0x00000008; + if (!other.getWorkingDir().isEmpty()) { + workingDir_ = other.workingDir_; + bitField0_ |= 0x00000010; + onChanged(); + } + if (other.getRunAsUser() != 0) { + setRunAsUser(other.getRunAsUser()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + image_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureCommandIsMutable(); + command_.add(s); + break; + } // case 18 + case 26: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureArgsIsMutable(); + args_.add(s); + break; + } // case 26 + case 34: + { + com.google.protobuf.MapEntry env__ = + input.readMessage( + EnvDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); + internalGetMutableEnv().getMutableMap().put(env__.getKey(), env__.getValue()); + bitField0_ |= 0x00000008; + break; + } // case 34 + case 42: + { + workingDir_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 48: + { + runAsUser_ = input.readInt32(); + bitField0_ |= 0x00000020; + break; + } // case 48 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object image_ = ""; + + /** + * + * + *
            +       * Optional. A Docker container image that defines a custom environment.
            +       *
            +       * Cloud Workstations provides a number of
            +       * [preconfigured
            +       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +       * but you can create your own
            +       * [custom container
            +       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +       * If using a private image, the `host.gceInstance.serviceAccount` field
            +       * must be specified in the workstation configuration.
            +       * If using a custom container image, the service account must have
            +       * [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image. Otherwise, the image must be
            +       * publicly accessible.
            +       * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The image. + */ + public java.lang.String getImage() { + java.lang.Object ref = image_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + image_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Optional. A Docker container image that defines a custom environment.
            +       *
            +       * Cloud Workstations provides a number of
            +       * [preconfigured
            +       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +       * but you can create your own
            +       * [custom container
            +       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +       * If using a private image, the `host.gceInstance.serviceAccount` field
            +       * must be specified in the workstation configuration.
            +       * If using a custom container image, the service account must have
            +       * [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image. Otherwise, the image must be
            +       * publicly accessible.
            +       * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for image. + */ + public com.google.protobuf.ByteString getImageBytes() { + java.lang.Object ref = image_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + image_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Optional. A Docker container image that defines a custom environment.
            +       *
            +       * Cloud Workstations provides a number of
            +       * [preconfigured
            +       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +       * but you can create your own
            +       * [custom container
            +       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +       * If using a private image, the `host.gceInstance.serviceAccount` field
            +       * must be specified in the workstation configuration.
            +       * If using a custom container image, the service account must have
            +       * [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image. Otherwise, the image must be
            +       * publicly accessible.
            +       * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The image to set. + * @return This builder for chaining. + */ + public Builder setImage(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + image_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. A Docker container image that defines a custom environment.
            +       *
            +       * Cloud Workstations provides a number of
            +       * [preconfigured
            +       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +       * but you can create your own
            +       * [custom container
            +       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +       * If using a private image, the `host.gceInstance.serviceAccount` field
            +       * must be specified in the workstation configuration.
            +       * If using a custom container image, the service account must have
            +       * [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image. Otherwise, the image must be
            +       * publicly accessible.
            +       * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearImage() { + image_ = getDefaultInstance().getImage(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. A Docker container image that defines a custom environment.
            +       *
            +       * Cloud Workstations provides a number of
            +       * [preconfigured
            +       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +       * but you can create your own
            +       * [custom container
            +       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +       * If using a private image, the `host.gceInstance.serviceAccount` field
            +       * must be specified in the workstation configuration.
            +       * If using a custom container image, the service account must have
            +       * [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image. Otherwise, the image must be
            +       * publicly accessible.
            +       * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for image to set. + * @return This builder for chaining. + */ + public Builder setImageBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + image_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList command_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureCommandIsMutable() { + if (!command_.isModifiable()) { + command_ = new com.google.protobuf.LazyStringArrayList(command_); + } + bitField0_ |= 0x00000002; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the command. + */ + public com.google.protobuf.ProtocolStringList getCommandList() { + command_.makeImmutable(); + return command_; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of command. + */ + public int getCommandCount() { + return command_.size(); + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The command at the given index. + */ + public java.lang.String getCommand(int index) { + return command_.get(index); + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the command at the given index. + */ + public com.google.protobuf.ByteString getCommandBytes(int index) { + return command_.getByteString(index); + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index to set the value at. + * @param value The command to set. + * @return This builder for chaining. + */ + public Builder setCommand(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureCommandIsMutable(); + command_.set(index, value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The command to add. + * @return This builder for chaining. + */ + public Builder addCommand(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureCommandIsMutable(); + command_.add(value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param values The command to add. + * @return This builder for chaining. + */ + public Builder addAllCommand(java.lang.Iterable values) { + ensureCommandIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, command_); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearCommand() { + command_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + ; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes of the command to add. + * @return This builder for chaining. + */ + public Builder addCommandBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureCommandIsMutable(); + command_.add(value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList args_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureArgsIsMutable() { + if (!args_.isModifiable()) { + args_ = new com.google.protobuf.LazyStringArrayList(args_); + } + bitField0_ |= 0x00000004; + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the args. + */ + public com.google.protobuf.ProtocolStringList getArgsList() { + args_.makeImmutable(); + return args_; + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of args. + */ + public int getArgsCount() { + return args_.size(); + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The args at the given index. + */ + public java.lang.String getArgs(int index) { + return args_.get(index); + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the args at the given index. + */ + public com.google.protobuf.ByteString getArgsBytes(int index) { + return args_.getByteString(index); + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index to set the value at. + * @param value The args to set. + * @return This builder for chaining. + */ + public Builder setArgs(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureArgsIsMutable(); + args_.set(index, value); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The args to add. + * @return This builder for chaining. + */ + public Builder addArgs(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureArgsIsMutable(); + args_.add(value); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param values The args to add. + * @return This builder for chaining. + */ + public Builder addAllArgs(java.lang.Iterable values) { + ensureArgsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, args_); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearArgs() { + args_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + ; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes of the args to add. + * @return This builder for chaining. + */ + public Builder addArgsBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureArgsIsMutable(); + args_.add(value); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private com.google.protobuf.MapField env_; + + private com.google.protobuf.MapField internalGetEnv() { + if (env_ == null) { + return com.google.protobuf.MapField.emptyMapField(EnvDefaultEntryHolder.defaultEntry); + } + return env_; + } + + private com.google.protobuf.MapField + internalGetMutableEnv() { + if (env_ == null) { + env_ = com.google.protobuf.MapField.newMapField(EnvDefaultEntryHolder.defaultEntry); + } + if (!env_.isMutable()) { + env_ = env_.copy(); + } + bitField0_ |= 0x00000008; + onChanged(); + return env_; + } + + public int getEnvCount() { + return internalGetEnv().getMap().size(); + } + + /** + * + * + *
            +       * Optional. Environment variables passed to the container's entrypoint.
            +       * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsEnv(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetEnv().getMap().containsKey(key); + } + + /** Use {@link #getEnvMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getEnv() { + return getEnvMap(); + } + + /** + * + * + *
            +       * Optional. Environment variables passed to the container's entrypoint.
            +       * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getEnvMap() { + return internalGetEnv().getMap(); + } + + /** + * + * + *
            +       * Optional. Environment variables passed to the container's entrypoint.
            +       * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getEnvOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetEnv().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +       * Optional. Environment variables passed to the container's entrypoint.
            +       * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getEnvOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetEnv().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public Builder clearEnv() { + bitField0_ = (bitField0_ & ~0x00000008); + internalGetMutableEnv().getMutableMap().clear(); + return this; + } + + /** + * + * + *
            +       * Optional. Environment variables passed to the container's entrypoint.
            +       * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder removeEnv(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableEnv().getMutableMap().remove(key); + return this; + } + + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableEnv() { + bitField0_ |= 0x00000008; + return internalGetMutableEnv().getMutableMap(); + } + + /** + * + * + *
            +       * Optional. Environment variables passed to the container's entrypoint.
            +       * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder putEnv(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableEnv().getMutableMap().put(key, value); + bitField0_ |= 0x00000008; + return this; + } + + /** + * + * + *
            +       * Optional. Environment variables passed to the container's entrypoint.
            +       * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder putAllEnv(java.util.Map values) { + internalGetMutableEnv().getMutableMap().putAll(values); + bitField0_ |= 0x00000008; + return this; + } + + private java.lang.Object workingDir_ = ""; + + /** + * + * + *
            +       * Optional. If set, overrides the default DIR specified by the image.
            +       * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The workingDir. + */ + public java.lang.String getWorkingDir() { + java.lang.Object ref = workingDir_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + workingDir_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Optional. If set, overrides the default DIR specified by the image.
            +       * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for workingDir. + */ + public com.google.protobuf.ByteString getWorkingDirBytes() { + java.lang.Object ref = workingDir_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + workingDir_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Optional. If set, overrides the default DIR specified by the image.
            +       * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The workingDir to set. + * @return This builder for chaining. + */ + public Builder setWorkingDir(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + workingDir_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default DIR specified by the image.
            +       * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearWorkingDir() { + workingDir_ = getDefaultInstance().getWorkingDir(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default DIR specified by the image.
            +       * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for workingDir to set. + * @return This builder for chaining. + */ + public Builder setWorkingDirBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + workingDir_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + private int runAsUser_; + + /** + * + * + *
            +       * Optional. If set, overrides the USER specified in the image with the
            +       * given uid.
            +       * 
            + * + * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The runAsUser. + */ + @java.lang.Override + public int getRunAsUser() { + return runAsUser_; + } + + /** + * + * + *
            +       * Optional. If set, overrides the USER specified in the image with the
            +       * given uid.
            +       * 
            + * + * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The runAsUser to set. + * @return This builder for chaining. + */ + public Builder setRunAsUser(int value) { + + runAsUser_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. If set, overrides the USER specified in the image with the
            +       * given uid.
            +       * 
            + * + * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearRunAsUser() { + bitField0_ = (bitField0_ & ~0x00000020); + runAsUser_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.Container) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.Container) + private static final com.google.cloud.workstations.v1.WorkstationConfig.Container + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1.WorkstationConfig.Container(); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.Container + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Container parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Container + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface CustomerEncryptionKeyOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +     * The key must be in the same region as the workstation configuration.
            +     * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The kmsKey. + */ + java.lang.String getKmsKey(); + + /** + * + * + *
            +     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +     * The key must be in the same region as the workstation configuration.
            +     * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for kmsKey. + */ + com.google.protobuf.ByteString getKmsKeyBytes(); + + /** + * + * + *
            +     * Immutable. The service account to use with the specified
            +     * KMS key. We recommend that you use a separate service account
            +     * and follow KMS best practices. For more information, see
            +     * [Separation of
            +     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +     * `gcloud kms keys add-iam-policy-binding`
            +     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +     * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The kmsKeyServiceAccount. + */ + java.lang.String getKmsKeyServiceAccount(); + + /** + * + * + *
            +     * Immutable. The service account to use with the specified
            +     * KMS key. We recommend that you use a separate service account
            +     * and follow KMS best practices. For more information, see
            +     * [Separation of
            +     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +     * `gcloud kms keys add-iam-policy-binding`
            +     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +     * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for kmsKeyServiceAccount. + */ + com.google.protobuf.ByteString getKmsKeyServiceAccountBytes(); + } + + /** + * + * + *
            +   * A customer-managed encryption key (CMEK) for the Compute Engine
            +   * resources of the associated workstation configuration. Specify the name of
            +   * your Cloud KMS encryption key and the default service account.
            +   * We recommend that you use a separate service account and follow
            +   * [Cloud KMS best
            +   * practices](https://cloud.google.com/kms/docs/separation-of-duties).
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey} + */ + public static final class CustomerEncryptionKey extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) + CustomerEncryptionKeyOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "CustomerEncryptionKey"); + } + + // Use CustomerEncryptionKey.newBuilder() to construct. + private CustomerEncryptionKey(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private CustomerEncryptionKey() { + kmsKey_ = ""; + kmsKeyServiceAccount_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_CustomerEncryptionKey_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_CustomerEncryptionKey_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.class, + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.Builder + .class); + } + + public static final int KMS_KEY_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object kmsKey_ = ""; + + /** + * + * + *
            +     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +     * The key must be in the same region as the workstation configuration.
            +     * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The kmsKey. + */ + @java.lang.Override + public java.lang.String getKmsKey() { + java.lang.Object ref = kmsKey_; + 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(); + kmsKey_ = s; + return s; + } + } + + /** + * + * + *
            +     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +     * The key must be in the same region as the workstation configuration.
            +     * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for kmsKey. + */ + @java.lang.Override + public com.google.protobuf.ByteString getKmsKeyBytes() { + java.lang.Object ref = kmsKey_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int KMS_KEY_SERVICE_ACCOUNT_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object kmsKeyServiceAccount_ = ""; + + /** + * + * + *
            +     * Immutable. The service account to use with the specified
            +     * KMS key. We recommend that you use a separate service account
            +     * and follow KMS best practices. For more information, see
            +     * [Separation of
            +     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +     * `gcloud kms keys add-iam-policy-binding`
            +     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +     * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The kmsKeyServiceAccount. + */ + @java.lang.Override + public java.lang.String getKmsKeyServiceAccount() { + java.lang.Object ref = kmsKeyServiceAccount_; + 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(); + kmsKeyServiceAccount_ = s; + return s; + } + } + + /** + * + * + *
            +     * Immutable. The service account to use with the specified
            +     * KMS key. We recommend that you use a separate service account
            +     * and follow KMS best practices. For more information, see
            +     * [Separation of
            +     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +     * `gcloud kms keys add-iam-policy-binding`
            +     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +     * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for kmsKeyServiceAccount. + */ + @java.lang.Override + public com.google.protobuf.ByteString getKmsKeyServiceAccountBytes() { + java.lang.Object ref = kmsKeyServiceAccount_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKeyServiceAccount_ = 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(kmsKey_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, kmsKey_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kmsKeyServiceAccount_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, kmsKeyServiceAccount_); + } + 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(kmsKey_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, kmsKey_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kmsKeyServiceAccount_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, kmsKeyServiceAccount_); + } + 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.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey other = + (com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) obj; + + if (!getKmsKey().equals(other.getKmsKey())) return false; + if (!getKmsKeyServiceAccount().equals(other.getKmsKeyServiceAccount())) 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) + KMS_KEY_FIELD_NUMBER; + hash = (53 * hash) + getKmsKey().hashCode(); + hash = (37 * hash) + KMS_KEY_SERVICE_ACCOUNT_FIELD_NUMBER; + hash = (53 * hash) + getKmsKeyServiceAccount().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + 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.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + 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.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + 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.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + 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.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey 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 customer-managed encryption key (CMEK) for the Compute Engine
            +     * resources of the associated workstation configuration. Specify the name of
            +     * your Cloud KMS encryption key and the default service account.
            +     * We recommend that you use a separate service account and follow
            +     * [Cloud KMS best
            +     * practices](https://cloud.google.com/kms/docs/separation-of-duties).
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKeyOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_CustomerEncryptionKey_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_CustomerEncryptionKey_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.class, + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.Builder + .class); + } + + // Construct using + // com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + kmsKey_ = ""; + kmsKeyServiceAccount_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_CustomerEncryptionKey_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey build() { + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + buildPartial() { + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey result = + new com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.kmsKey_ = kmsKey_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.kmsKeyServiceAccount_ = kmsKeyServiceAccount_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) { + return mergeFrom( + (com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey other) { + if (other + == com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + .getDefaultInstance()) return this; + if (!other.getKmsKey().isEmpty()) { + kmsKey_ = other.kmsKey_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getKmsKeyServiceAccount().isEmpty()) { + kmsKeyServiceAccount_ = other.kmsKeyServiceAccount_; + bitField0_ |= 0x00000002; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + kmsKey_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + kmsKeyServiceAccount_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object kmsKey_ = ""; + + /** + * + * + *
            +       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +       * The key must be in the same region as the workstation configuration.
            +       * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The kmsKey. + */ + public java.lang.String getKmsKey() { + java.lang.Object ref = kmsKey_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + kmsKey_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +       * The key must be in the same region as the workstation configuration.
            +       * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for kmsKey. + */ + public com.google.protobuf.ByteString getKmsKeyBytes() { + java.lang.Object ref = kmsKey_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +       * The key must be in the same region as the workstation configuration.
            +       * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The kmsKey to set. + * @return This builder for chaining. + */ + public Builder setKmsKey(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + kmsKey_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +       * The key must be in the same region as the workstation configuration.
            +       * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return This builder for chaining. + */ + public Builder clearKmsKey() { + kmsKey_ = getDefaultInstance().getKmsKey(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +       * The key must be in the same region as the workstation configuration.
            +       * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The bytes for kmsKey to set. + * @return This builder for chaining. + */ + public Builder setKmsKeyBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + kmsKey_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object kmsKeyServiceAccount_ = ""; + + /** + * + * + *
            +       * Immutable. The service account to use with the specified
            +       * KMS key. We recommend that you use a separate service account
            +       * and follow KMS best practices. For more information, see
            +       * [Separation of
            +       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +       * `gcloud kms keys add-iam-policy-binding`
            +       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +       * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The kmsKeyServiceAccount. + */ + public java.lang.String getKmsKeyServiceAccount() { + java.lang.Object ref = kmsKeyServiceAccount_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + kmsKeyServiceAccount_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Immutable. The service account to use with the specified
            +       * KMS key. We recommend that you use a separate service account
            +       * and follow KMS best practices. For more information, see
            +       * [Separation of
            +       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +       * `gcloud kms keys add-iam-policy-binding`
            +       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +       * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for kmsKeyServiceAccount. + */ + public com.google.protobuf.ByteString getKmsKeyServiceAccountBytes() { + java.lang.Object ref = kmsKeyServiceAccount_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKeyServiceAccount_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Immutable. The service account to use with the specified
            +       * KMS key. We recommend that you use a separate service account
            +       * and follow KMS best practices. For more information, see
            +       * [Separation of
            +       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +       * `gcloud kms keys add-iam-policy-binding`
            +       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +       * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The kmsKeyServiceAccount to set. + * @return This builder for chaining. + */ + public Builder setKmsKeyServiceAccount(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + kmsKeyServiceAccount_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Immutable. The service account to use with the specified
            +       * KMS key. We recommend that you use a separate service account
            +       * and follow KMS best practices. For more information, see
            +       * [Separation of
            +       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +       * `gcloud kms keys add-iam-policy-binding`
            +       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +       * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return This builder for chaining. + */ + public Builder clearKmsKeyServiceAccount() { + kmsKeyServiceAccount_ = getDefaultInstance().getKmsKeyServiceAccount(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Immutable. The service account to use with the specified
            +       * KMS key. We recommend that you use a separate service account
            +       * and follow KMS best practices. For more information, see
            +       * [Separation of
            +       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +       * `gcloud kms keys add-iam-policy-binding`
            +       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +       * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The bytes for kmsKeyServiceAccount to set. + * @return This builder for chaining. + */ + public Builder setKmsKeyServiceAccountBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + kmsKeyServiceAccount_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey) + private static final com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey(); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CustomerEncryptionKey parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface ReadinessCheckOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +     * Optional. Path to which the request should be sent.
            +     * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The path. + */ + java.lang.String getPath(); + + /** + * + * + *
            +     * Optional. Path to which the request should be sent.
            +     * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for path. + */ + com.google.protobuf.ByteString getPathBytes(); + + /** + * + * + *
            +     * Optional. Port to which the request should be sent.
            +     * 
            + * + * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The port. + */ + int getPort(); + } + + /** + * + * + *
            +   * A readiness check to be performed on a workstation.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck} + */ + public static final class ReadinessCheck extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) + ReadinessCheckOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "ReadinessCheck"); + } + + // Use ReadinessCheck.newBuilder() to construct. + private ReadinessCheck(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private ReadinessCheck() { + path_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.class, + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder.class); + } + + public static final int PATH_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object path_ = ""; + + /** + * + * + *
            +     * Optional. Path to which the request should be sent.
            +     * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The path. + */ + @java.lang.Override + public java.lang.String getPath() { + java.lang.Object ref = path_; + 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(); + path_ = s; + return s; + } + } + + /** + * + * + *
            +     * Optional. Path to which the request should be sent.
            +     * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for path. + */ + @java.lang.Override + public com.google.protobuf.ByteString getPathBytes() { + java.lang.Object ref = path_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + path_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PORT_FIELD_NUMBER = 2; + private int port_ = 0; + + /** + * + * + *
            +     * Optional. Port to which the request should be sent.
            +     * 
            + * + * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The port. + */ + @java.lang.Override + public int getPort() { + return port_; + } + + 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(path_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, path_); + } + if (port_ != 0) { + output.writeInt32(2, port_); + } + 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(path_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, path_); + } + if (port_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, port_); + } + 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.cloud.workstations.v1.WorkstationConfig.ReadinessCheck)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck other = + (com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) obj; + + if (!getPath().equals(other.getPath())) return false; + if (getPort() != other.getPort()) 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) + PATH_FIELD_NUMBER; + hash = (53 * hash) + getPath().hashCode(); + hash = (37 * hash) + PORT_FIELD_NUMBER; + hash = (53 * hash) + getPort(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck 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.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck 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.cloud.workstations.v1.WorkstationConfig.ReadinessCheck + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck + 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.cloud.workstations.v1.WorkstationConfig.ReadinessCheck parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck 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.cloud.workstations.v1.WorkstationConfig.ReadinessCheck 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 readiness check to be performed on a workstation.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.class, + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder.class); + } + + // Construct using + // com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + path_ = ""; + port_ = 0; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck build() { + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck buildPartial() { + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck result = + new com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.path_ = path_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.port_ = port_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) { + return mergeFrom( + (com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck other) { + if (other + == com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck + .getDefaultInstance()) return this; + if (!other.getPath().isEmpty()) { + path_ = other.path_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.getPort() != 0) { + setPort(other.getPort()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + path_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 16: + { + port_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object path_ = ""; + + /** + * + * + *
            +       * Optional. Path to which the request should be sent.
            +       * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The path. + */ + public java.lang.String getPath() { + java.lang.Object ref = path_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + path_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Optional. Path to which the request should be sent.
            +       * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for path. + */ + public com.google.protobuf.ByteString getPathBytes() { + java.lang.Object ref = path_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + path_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Optional. Path to which the request should be sent.
            +       * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The path to set. + * @return This builder for chaining. + */ + public Builder setPath(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + path_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Path to which the request should be sent.
            +       * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearPath() { + path_ = getDefaultInstance().getPath(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Path to which the request should be sent.
            +       * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for path to set. + * @return This builder for chaining. + */ + public Builder setPathBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + path_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private int port_; + + /** + * + * + *
            +       * Optional. Port to which the request should be sent.
            +       * 
            + * + * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The port. + */ + @java.lang.Override + public int getPort() { + return port_; + } + + /** + * + * + *
            +       * Optional. Port to which the request should be sent.
            +       * 
            + * + * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The port to set. + * @return This builder for chaining. + */ + public Builder setPort(int value) { + + port_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Port to which the request should be sent.
            +       * 
            + * + * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearPort() { + bitField0_ = (bitField0_ & ~0x00000002); + port_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck) + private static final com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck(); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public ReadinessCheck parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface PortRangeOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1.WorkstationConfig.PortRange) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +     * Required. Starting port number for the current range of ports.
            +     * Valid ports are 22, 80, and ports within the range 1024-65535.
            +     * 
            + * + * int32 first = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The first. + */ + int getFirst(); + + /** + * + * + *
            +     * Required. Ending port number for the current range of ports.
            +     * Valid ports are 22, 80, and ports within the range 1024-65535.
            +     * 
            + * + * int32 last = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The last. + */ + int getLast(); + } + + /** + * + * + *
            +   * A PortRange defines a range of ports. Both
            +   * [first][google.cloud.workstations.v1.WorkstationConfig.PortRange.first] and
            +   * [last][google.cloud.workstations.v1.WorkstationConfig.PortRange.last] are
            +   * inclusive.
            +   * To specify a single port, both
            +   * [first][google.cloud.workstations.v1.WorkstationConfig.PortRange.first] and
            +   * [last][google.cloud.workstations.v1.WorkstationConfig.PortRange.last]
            +   * should be the same.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.PortRange} + */ + public static final class PortRange extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1.WorkstationConfig.PortRange) + PortRangeOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "PortRange"); + } + + // Use PortRange.newBuilder() to construct. + private PortRange(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private PortRange() {} + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PortRange_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PortRange_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.PortRange.class, + com.google.cloud.workstations.v1.WorkstationConfig.PortRange.Builder.class); + } + + public static final int FIRST_FIELD_NUMBER = 1; + private int first_ = 0; + + /** + * + * + *
            +     * Required. Starting port number for the current range of ports.
            +     * Valid ports are 22, 80, and ports within the range 1024-65535.
            +     * 
            + * + * int32 first = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The first. + */ + @java.lang.Override + public int getFirst() { + return first_; + } + + public static final int LAST_FIELD_NUMBER = 2; + private int last_ = 0; + + /** + * + * + *
            +     * Required. Ending port number for the current range of ports.
            +     * Valid ports are 22, 80, and ports within the range 1024-65535.
            +     * 
            + * + * int32 last = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The last. + */ + @java.lang.Override + public int getLast() { + return last_; + } + + 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 (first_ != 0) { + output.writeInt32(1, first_); + } + if (last_ != 0) { + output.writeInt32(2, last_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (first_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, first_); + } + if (last_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, last_); + } + 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.cloud.workstations.v1.WorkstationConfig.PortRange)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationConfig.PortRange other = + (com.google.cloud.workstations.v1.WorkstationConfig.PortRange) obj; + + if (getFirst() != other.getFirst()) return false; + if (getLast() != other.getLast()) 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) + FIRST_FIELD_NUMBER; + hash = (53 * hash) + getFirst(); + hash = (37 * hash) + LAST_FIELD_NUMBER; + hash = (53 * hash) + getLast(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.PortRange parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.PortRange parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.PortRange parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.PortRange 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.cloud.workstations.v1.WorkstationConfig.PortRange parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.PortRange parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.PortRange parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.PortRange 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.cloud.workstations.v1.WorkstationConfig.PortRange parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.PortRange 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.cloud.workstations.v1.WorkstationConfig.PortRange parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.PortRange 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.cloud.workstations.v1.WorkstationConfig.PortRange 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 PortRange defines a range of ports. Both
            +     * [first][google.cloud.workstations.v1.WorkstationConfig.PortRange.first] and
            +     * [last][google.cloud.workstations.v1.WorkstationConfig.PortRange.last] are
            +     * inclusive.
            +     * To specify a single port, both
            +     * [first][google.cloud.workstations.v1.WorkstationConfig.PortRange.first] and
            +     * [last][google.cloud.workstations.v1.WorkstationConfig.PortRange.last]
            +     * should be the same.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig.PortRange} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig.PortRange) + com.google.cloud.workstations.v1.WorkstationConfig.PortRangeOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PortRange_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PortRange_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.PortRange.class, + com.google.cloud.workstations.v1.WorkstationConfig.PortRange.Builder.class); + } + + // Construct using com.google.cloud.workstations.v1.WorkstationConfig.PortRange.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + first_ = 0; + last_ = 0; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_PortRange_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PortRange + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationConfig.PortRange.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PortRange build() { + com.google.cloud.workstations.v1.WorkstationConfig.PortRange result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PortRange buildPartial() { + com.google.cloud.workstations.v1.WorkstationConfig.PortRange result = + new com.google.cloud.workstations.v1.WorkstationConfig.PortRange(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1.WorkstationConfig.PortRange result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.first_ = first_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.last_ = last_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1.WorkstationConfig.PortRange) { + return mergeFrom((com.google.cloud.workstations.v1.WorkstationConfig.PortRange) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.workstations.v1.WorkstationConfig.PortRange other) { + if (other + == com.google.cloud.workstations.v1.WorkstationConfig.PortRange.getDefaultInstance()) + return this; + if (other.getFirst() != 0) { + setFirst(other.getFirst()); + } + if (other.getLast() != 0) { + setLast(other.getLast()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + first_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: + { + last_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private int first_; + + /** + * + * + *
            +       * Required. Starting port number for the current range of ports.
            +       * Valid ports are 22, 80, and ports within the range 1024-65535.
            +       * 
            + * + * int32 first = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The first. + */ + @java.lang.Override + public int getFirst() { + return first_; + } + + /** + * + * + *
            +       * Required. Starting port number for the current range of ports.
            +       * Valid ports are 22, 80, and ports within the range 1024-65535.
            +       * 
            + * + * int32 first = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The first to set. + * @return This builder for chaining. + */ + public Builder setFirst(int value) { + + first_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Required. Starting port number for the current range of ports.
            +       * Valid ports are 22, 80, and ports within the range 1024-65535.
            +       * 
            + * + * int32 first = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearFirst() { + bitField0_ = (bitField0_ & ~0x00000001); + first_ = 0; + onChanged(); + return this; + } + + private int last_; + + /** + * + * + *
            +       * Required. Ending port number for the current range of ports.
            +       * Valid ports are 22, 80, and ports within the range 1024-65535.
            +       * 
            + * + * int32 last = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The last. + */ + @java.lang.Override + public int getLast() { + return last_; + } + + /** + * + * + *
            +       * Required. Ending port number for the current range of ports.
            +       * Valid ports are 22, 80, and ports within the range 1024-65535.
            +       * 
            + * + * int32 last = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The last to set. + * @return This builder for chaining. + */ + public Builder setLast(int value) { + + last_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Required. Ending port number for the current range of ports.
            +       * Valid ports are 22, 80, and ports within the range 1024-65535.
            +       * 
            + * + * int32 last = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearLast() { + bitField0_ = (bitField0_ & ~0x00000002); + last_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig.PortRange) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1.WorkstationConfig.PortRange) + private static final com.google.cloud.workstations.v1.WorkstationConfig.PortRange + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1.WorkstationConfig.PortRange(); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig.PortRange + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public PortRange parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PortRange + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + private int bitField0_; + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + + /** + * + * + *
            +   * Identifier. Full name of this workstation configuration.
            +   * 
            + * + * 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. Full name of this workstation configuration.
            +   * 
            + * + * 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 DISPLAY_NAME_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object displayName_ = ""; + + /** + * + * + *
            +   * Optional. Human-readable name for this workstation configuration.
            +   * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The displayName. + */ + @java.lang.Override + public java.lang.String getDisplayName() { + java.lang.Object ref = displayName_; + 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(); + displayName_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Human-readable name for this workstation configuration.
            +   * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for displayName. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDisplayNameBytes() { + java.lang.Object ref = displayName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + displayName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int UID_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object uid_ = ""; + + /** + * + * + *
            +   * Output only. A system-assigned unique identifier for this workstation
            +   * configuration.
            +   * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The uid. + */ + @java.lang.Override + public java.lang.String getUid() { + java.lang.Object ref = uid_; + 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(); + uid_ = s; + return s; + } + } + + /** + * + * + *
            +   * Output only. A system-assigned unique identifier for this workstation
            +   * configuration.
            +   * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The bytes for uid. + */ + @java.lang.Override + public com.google.protobuf.ByteString getUidBytes() { + java.lang.Object ref = uid_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int RECONCILING_FIELD_NUMBER = 4; + private boolean reconciling_ = false; + + /** + * + * + *
            +   * Output only. Indicates whether this workstation configuration is currently
            +   * being updated to match its intended state.
            +   * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The reconciling. + */ + @java.lang.Override + public boolean getReconciling() { + return reconciling_; + } + + public static final int ANNOTATIONS_FIELD_NUMBER = 5; + + private static final class AnnotationsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_AnnotationsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField annotations_; + + private com.google.protobuf.MapField + internalGetAnnotations() { + if (annotations_ == null) { + return com.google.protobuf.MapField.emptyMapField(AnnotationsDefaultEntryHolder.defaultEntry); + } + return annotations_; + } + + public int getAnnotationsCount() { + return internalGetAnnotations().getMap().size(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetAnnotations().getMap().containsKey(key); + } + + /** Use {@link #getAnnotationsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getAnnotations() { + return getAnnotationsMap(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getAnnotationsMap() { + return internalGetAnnotations().getMap(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getAnnotationsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getAnnotationsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int LABELS_FIELD_NUMBER = 18; + + private static final class LabelsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_LabelsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField labels_; + + private com.google.protobuf.MapField internalGetLabels() { + if (labels_ == null) { + return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); + } + return labels_; + } + + public int getLabelsCount() { + return internalGetLabels().getMap().size(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation configuration and that are also propagated
            +   * to the underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetLabels().getMap().containsKey(key); + } + + /** Use {@link #getLabelsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getLabels() { + return getLabelsMap(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation configuration and that are also propagated
            +   * to the underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getLabelsMap() { + return internalGetLabels().getMap(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation configuration and that are also propagated
            +   * to the underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getLabelsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation configuration and that are also propagated
            +   * to the underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getLabelsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int CREATE_TIME_FIELD_NUMBER = 6; + private com.google.protobuf.Timestamp createTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the createTime field is set. + */ + @java.lang.Override + public boolean hasCreateTime() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The createTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getCreateTime() { + return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { + return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; + } + + public static final int UPDATE_TIME_FIELD_NUMBER = 7; + private com.google.protobuf.Timestamp updateTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was most recently
            +   * updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the updateTime field is set. + */ + @java.lang.Override + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was most recently
            +   * updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The updateTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getUpdateTime() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was most recently
            +   * updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + public static final int DELETE_TIME_FIELD_NUMBER = 8; + private com.google.protobuf.Timestamp deleteTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the deleteTime field is set. + */ + @java.lang.Override + public boolean hasDeleteTime() { + return ((bitField0_ & 0x00000004) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The deleteTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getDeleteTime() { + return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { + return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; + } + + public static final int ETAG_FIELD_NUMBER = 9; + + @SuppressWarnings("serial") + private volatile java.lang.Object etag_ = ""; + + /** + * + * + *
            +   * Optional. Checksum computed by the server. May be sent on update and delete
            +   * requests to make sure that the client has an up-to-date value before
            +   * proceeding.
            +   * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The etag. + */ + @java.lang.Override + public java.lang.String getEtag() { + java.lang.Object ref = etag_; + 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(); + etag_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Checksum computed by the server. May be sent on update and delete
            +   * requests to make sure that the client has an up-to-date value before
            +   * proceeding.
            +   * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for etag. + */ + @java.lang.Override + public com.google.protobuf.ByteString getEtagBytes() { + java.lang.Object ref = etag_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + etag_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int IDLE_TIMEOUT_FIELD_NUMBER = 10; + private com.google.protobuf.Duration idleTimeout_; + + /** + * + * + *
            +   * Optional. Number of seconds to wait before automatically stopping a
            +   * workstation after it last received user traffic.
            +   *
            +   * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +   * configuration should never time out due to idleness.
            +   * Provide
            +   * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +   * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +   * The default is `"1200s"` (20 minutes).
            +   * 
            + * + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the idleTimeout field is set. + */ + @java.lang.Override + public boolean hasIdleTimeout() { + return ((bitField0_ & 0x00000008) != 0); + } + + /** + * + * + *
            +   * Optional. Number of seconds to wait before automatically stopping a
            +   * workstation after it last received user traffic.
            +   *
            +   * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +   * configuration should never time out due to idleness.
            +   * Provide
            +   * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +   * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +   * The default is `"1200s"` (20 minutes).
            +   * 
            + * + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The idleTimeout. + */ + @java.lang.Override + public com.google.protobuf.Duration getIdleTimeout() { + return idleTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : idleTimeout_; + } + + /** + * + * + *
            +   * Optional. Number of seconds to wait before automatically stopping a
            +   * workstation after it last received user traffic.
            +   *
            +   * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +   * configuration should never time out due to idleness.
            +   * Provide
            +   * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +   * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +   * The default is `"1200s"` (20 minutes).
            +   * 
            + * + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder() { + return idleTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : idleTimeout_; + } + + public static final int RUNNING_TIMEOUT_FIELD_NUMBER = 11; + private com.google.protobuf.Duration runningTimeout_; + + /** + * + * + *
            +   * Optional. Number of seconds that a workstation can run until it is
            +   * automatically shut down. We recommend that workstations be shut down daily
            +   * to reduce costs and so that security updates can be applied upon restart.
            +   * The
            +   * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            +   * and
            +   * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +   * fields are independent of each other. Note that the
            +   * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +   * field shuts down VMs after the specified time, regardless of whether or not
            +   * the VMs are idle.
            +   *
            +   * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +   * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +   * that workstations using this configuration should never time out. If
            +   * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            +   * is set, it must be greater than `"0s"` and less than
            +   * `"86400s"` (24 hours).
            +   *
            +   * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +   * with this configuration have no maximum running time. This is strongly
            +   * discouraged because you incur costs and will not pick up security updates.
            +   * 
            + * + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the runningTimeout field is set. + */ + @java.lang.Override + public boolean hasRunningTimeout() { + return ((bitField0_ & 0x00000010) != 0); + } + + /** + * + * + *
            +   * Optional. Number of seconds that a workstation can run until it is
            +   * automatically shut down. We recommend that workstations be shut down daily
            +   * to reduce costs and so that security updates can be applied upon restart.
            +   * The
            +   * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            +   * and
            +   * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +   * fields are independent of each other. Note that the
            +   * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +   * field shuts down VMs after the specified time, regardless of whether or not
            +   * the VMs are idle.
            +   *
            +   * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +   * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +   * that workstations using this configuration should never time out. If
            +   * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            +   * is set, it must be greater than `"0s"` and less than
            +   * `"86400s"` (24 hours).
            +   *
            +   * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +   * with this configuration have no maximum running time. This is strongly
            +   * discouraged because you incur costs and will not pick up security updates.
            +   * 
            + * + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The runningTimeout. + */ + @java.lang.Override + public com.google.protobuf.Duration getRunningTimeout() { + return runningTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : runningTimeout_; + } + + /** + * + * + *
            +   * Optional. Number of seconds that a workstation can run until it is
            +   * automatically shut down. We recommend that workstations be shut down daily
            +   * to reduce costs and so that security updates can be applied upon restart.
            +   * The
            +   * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            +   * and
            +   * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +   * fields are independent of each other. Note that the
            +   * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +   * field shuts down VMs after the specified time, regardless of whether or not
            +   * the VMs are idle.
            +   *
            +   * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +   * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +   * that workstations using this configuration should never time out. If
            +   * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            +   * is set, it must be greater than `"0s"` and less than
            +   * `"86400s"` (24 hours).
            +   *
            +   * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +   * with this configuration have no maximum running time. This is strongly
            +   * discouraged because you incur costs and will not pick up security updates.
            +   * 
            + * + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.protobuf.DurationOrBuilder getRunningTimeoutOrBuilder() { + return runningTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : runningTimeout_; + } + + public static final int MAX_USABLE_WORKSTATIONS_FIELD_NUMBER = 28; + private int maxUsableWorkstations_ = 0; + + /** + * + * + *
            +   * Optional. Maximum number of workstations under this configuration a user
            +   * can have `workstations.workstation.use` permission on.
            +   *
            +   * Only enforced on CreateWorkstation API calls on the user issuing the API
            +   * request. Can be overridden by:
            +   *
            +   * - granting a user
            +   * workstations.workstationConfigs.exemptMaxUsableWorkstationLimit permission,
            +   * or
            +   * - having a user with that permission create a workstation and
            +   * granting another user `workstations.workstation.use` permission on
            +   * that workstation.
            +   *
            +   * If not specified, defaults to `0`, which indicates unlimited.
            +   * 
            + * + * int32 max_usable_workstations = 28 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxUsableWorkstations. + */ + @java.lang.Override + public int getMaxUsableWorkstations() { + return maxUsableWorkstations_; + } + + public static final int HOST_FIELD_NUMBER = 12; + private com.google.cloud.workstations.v1.WorkstationConfig.Host host_; + + /** + * + * + *
            +   * Optional. Runtime host for the workstation.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the host field is set. + */ + @java.lang.Override + public boolean hasHost() { + return ((bitField0_ & 0x00000020) != 0); + } + + /** + * + * + *
            +   * Optional. Runtime host for the workstation.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The host. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Host getHost() { + return host_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Host.getDefaultInstance() + : host_; + } + + /** + * + * + *
            +   * Optional. Runtime host for the workstation.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.HostOrBuilder getHostOrBuilder() { + return host_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Host.getDefaultInstance() + : host_; + } + + public static final int PERSISTENT_DIRECTORIES_FIELD_NUMBER = 13; + + @SuppressWarnings("serial") + private java.util.List + persistentDirectories_; + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getPersistentDirectoriesList() { + return persistentDirectories_; + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder> + getPersistentDirectoriesOrBuilderList() { + return persistentDirectories_; + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getPersistentDirectoriesCount() { + return persistentDirectories_.size(); + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + getPersistentDirectories(int index) { + return persistentDirectories_.get(index); + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder + getPersistentDirectoriesOrBuilder(int index) { + return persistentDirectories_.get(index); + } + + public static final int EPHEMERAL_DIRECTORIES_FIELD_NUMBER = 22; + + @SuppressWarnings("serial") + private java.util.List + ephemeralDirectories_; + + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getEphemeralDirectoriesList() { + return ephemeralDirectories_; + } + + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectoryOrBuilder> + getEphemeralDirectoriesOrBuilderList() { + return ephemeralDirectories_; + } + + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getEphemeralDirectoriesCount() { + return ephemeralDirectories_.size(); + } + + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + getEphemeralDirectories(int index) { + return ephemeralDirectories_.get(index); + } + + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectoryOrBuilder + getEphemeralDirectoriesOrBuilder(int index) { + return ephemeralDirectories_.get(index); + } + + public static final int CONTAINER_FIELD_NUMBER = 14; + private com.google.cloud.workstations.v1.WorkstationConfig.Container container_; + + /** + * + * + *
            +   * Optional. Container that runs upon startup for each workstation using this
            +   * workstation configuration.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the container field is set. + */ + @java.lang.Override + public boolean hasContainer() { + return ((bitField0_ & 0x00000040) != 0); + } + + /** + * + * + *
            +   * Optional. Container that runs upon startup for each workstation using this
            +   * workstation configuration.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The container. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.Container getContainer() { + return container_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Container.getDefaultInstance() + : container_; + } + + /** + * + * + *
            +   * Optional. Container that runs upon startup for each workstation using this
            +   * workstation configuration.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.ContainerOrBuilder + getContainerOrBuilder() { + return container_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Container.getDefaultInstance() + : container_; + } + + public static final int ENCRYPTION_KEY_FIELD_NUMBER = 17; + private com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryptionKey_; + + /** + * + * + *
            +   * Immutable. Encrypts resources of this workstation configuration using a
            +   * customer-managed encryption key (CMEK).
            +   *
            +   * If specified, the boot disk of the Compute Engine instance and the
            +   * persistent disk are encrypted using this encryption key. If
            +   * this field is not set, the disks are encrypted using a generated
            +   * key. Customer-managed encryption keys do not protect disk metadata.
            +   *
            +   * If the customer-managed encryption key is rotated, when the workstation
            +   * instance is stopped, the system attempts to recreate the
            +   * persistent disk with the new version of the key. Be sure to keep
            +   * older versions of the key until the persistent disk is recreated.
            +   * Otherwise, data on the persistent disk might be lost.
            +   *
            +   * If the encryption key is revoked, the workstation session automatically
            +   * stops within 7 hours.
            +   *
            +   * Immutable after the workstation configuration is created.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * + * + * @return Whether the encryptionKey field is set. + */ + @java.lang.Override + public boolean hasEncryptionKey() { + return ((bitField0_ & 0x00000080) != 0); + } + + /** + * + * + *
            +   * Immutable. Encrypts resources of this workstation configuration using a
            +   * customer-managed encryption key (CMEK).
            +   *
            +   * If specified, the boot disk of the Compute Engine instance and the
            +   * persistent disk are encrypted using this encryption key. If
            +   * this field is not set, the disks are encrypted using a generated
            +   * key. Customer-managed encryption keys do not protect disk metadata.
            +   *
            +   * If the customer-managed encryption key is rotated, when the workstation
            +   * instance is stopped, the system attempts to recreate the
            +   * persistent disk with the new version of the key. Be sure to keep
            +   * older versions of the key until the persistent disk is recreated.
            +   * Otherwise, data on the persistent disk might be lost.
            +   *
            +   * If the encryption key is revoked, the workstation session automatically
            +   * stops within 7 hours.
            +   *
            +   * Immutable after the workstation configuration is created.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * + * + * @return The encryptionKey. + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + getEncryptionKey() { + return encryptionKey_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + .getDefaultInstance() + : encryptionKey_; + } + + /** + * + * + *
            +   * Immutable. Encrypts resources of this workstation configuration using a
            +   * customer-managed encryption key (CMEK).
            +   *
            +   * If specified, the boot disk of the Compute Engine instance and the
            +   * persistent disk are encrypted using this encryption key. If
            +   * this field is not set, the disks are encrypted using a generated
            +   * key. Customer-managed encryption keys do not protect disk metadata.
            +   *
            +   * If the customer-managed encryption key is rotated, when the workstation
            +   * instance is stopped, the system attempts to recreate the
            +   * persistent disk with the new version of the key. Be sure to keep
            +   * older versions of the key until the persistent disk is recreated.
            +   * Otherwise, data on the persistent disk might be lost.
            +   *
            +   * If the encryption key is revoked, the workstation session automatically
            +   * stops within 7 hours.
            +   *
            +   * Immutable after the workstation configuration is created.
            +   * 
            + * + * + * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKeyOrBuilder + getEncryptionKeyOrBuilder() { + return encryptionKey_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + .getDefaultInstance() + : encryptionKey_; + } + + public static final int READINESS_CHECKS_FIELD_NUMBER = 19; + + @SuppressWarnings("serial") + private java.util.List + readinessChecks_; + + /** + * + * + *
            +   * Optional. Readiness checks to perform when starting a workstation using
            +   * this workstation configuration. Mark a workstation as running only after
            +   * all specified readiness checks return 200 status codes.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getReadinessChecksList() { + return readinessChecks_; + } + + /** + * + * + *
            +   * Optional. Readiness checks to perform when starting a workstation using
            +   * this workstation configuration. Mark a workstation as running only after
            +   * all specified readiness checks return 200 status codes.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder> + getReadinessChecksOrBuilderList() { + return readinessChecks_; + } + + /** + * + * + *
            +   * Optional. Readiness checks to perform when starting a workstation using
            +   * this workstation configuration. Mark a workstation as running only after
            +   * all specified readiness checks return 200 status codes.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getReadinessChecksCount() { + return readinessChecks_.size(); + } + + /** + * + * + *
            +   * Optional. Readiness checks to perform when starting a workstation using
            +   * this workstation configuration. Mark a workstation as running only after
            +   * all specified readiness checks return 200 status codes.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck getReadinessChecks( + int index) { + return readinessChecks_.get(index); + } + + /** + * + * + *
            +   * Optional. Readiness checks to perform when starting a workstation using
            +   * this workstation configuration. Mark a workstation as running only after
            +   * all specified readiness checks return 200 status codes.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder + getReadinessChecksOrBuilder(int index) { + return readinessChecks_.get(index); + } + + public static final int REPLICA_ZONES_FIELD_NUMBER = 23; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList replicaZones_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + /** + * + * + *
            +   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +   * resources within the region. If set, exactly two zones within the
            +   * workstation cluster's region must be specified—for example,
            +   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +   * zones within the region are used.
            +   *
            +   * Immutable after the workstation configuration is created.
            +   * 
            + * + * + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * + * + * @return A list containing the replicaZones. + */ + public com.google.protobuf.ProtocolStringList getReplicaZonesList() { + return replicaZones_; + } + + /** + * + * + *
            +   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +   * resources within the region. If set, exactly two zones within the
            +   * workstation cluster's region must be specified—for example,
            +   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +   * zones within the region are used.
            +   *
            +   * Immutable after the workstation configuration is created.
            +   * 
            + * + * + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * + * + * @return The count of replicaZones. + */ + public int getReplicaZonesCount() { + return replicaZones_.size(); + } + + /** + * + * + *
            +   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +   * resources within the region. If set, exactly two zones within the
            +   * workstation cluster's region must be specified—for example,
            +   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +   * zones within the region are used.
            +   *
            +   * Immutable after the workstation configuration is created.
            +   * 
            + * + * + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * + * + * @param index The index of the element to return. + * @return The replicaZones at the given index. + */ + public java.lang.String getReplicaZones(int index) { + return replicaZones_.get(index); + } + + /** + * + * + *
            +   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +   * resources within the region. If set, exactly two zones within the
            +   * workstation cluster's region must be specified—for example,
            +   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +   * zones within the region are used.
            +   *
            +   * Immutable after the workstation configuration is created.
            +   * 
            + * + * + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * + * + * @param index The index of the value to return. + * @return The bytes of the replicaZones at the given index. + */ + public com.google.protobuf.ByteString getReplicaZonesBytes(int index) { + return replicaZones_.getByteString(index); + } + + public static final int DEGRADED_FIELD_NUMBER = 15; + private boolean degraded_ = false; + + /** + * + * + *
            +   * Output only. Whether this workstation configuration is in degraded mode, in
            +   * which case it may require user action to restore full functionality. The
            +   * [conditions][google.cloud.workstations.v1.WorkstationConfig.conditions]
            +   * field contains detailed information about the status of the configuration.
            +   * 
            + * + * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The degraded. + */ + @java.lang.Override + public boolean getDegraded() { + return degraded_; + } + + public static final int CONDITIONS_FIELD_NUMBER = 16; + + @SuppressWarnings("serial") + private java.util.List conditions_; + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getConditionsList() { + return conditions_; + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getConditionsOrBuilderList() { + return conditions_; + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getConditionsCount() { + return conditions_.size(); + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.rpc.Status getConditions(int index) { + return conditions_.get(index); + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { + return conditions_.get(index); + } + + public static final int ENABLE_AUDIT_AGENT_FIELD_NUMBER = 20; + private boolean enableAuditAgent_ = false; + + /** + * + * + *
            +   * Optional. Whether to enable Linux `auditd` logging on the workstation. When
            +   * enabled, a
            +   * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account]
            +   * must also be specified that has `roles/logging.logWriter` and
            +   * `roles/monitoring.metricWriter` on the project. Operating system audit
            +   * logging is distinct from [Cloud Audit
            +   * Logs](https://cloud.google.com/workstations/docs/audit-logging) and
            +   * [Container output
            +   * logging](https://cloud.google.com/workstations/docs/container-output-logging#overview).
            +   * Operating system audit logs are available in the
            +   * [Cloud Logging](https://cloud.google.com/logging/docs) console by querying:
            +   *
            +   * resource.type="gce_instance"
            +   * log_name:"/logs/linux-auditd"
            +   * 
            + * + * bool enable_audit_agent = 20 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enableAuditAgent. + */ + @java.lang.Override + public boolean getEnableAuditAgent() { + return enableAuditAgent_; + } + + public static final int DISABLE_TCP_CONNECTIONS_FIELD_NUMBER = 24; + private boolean disableTcpConnections_ = false; + + /** + * + * + *
            +   * Optional. Disables support for plain TCP connections in the workstation.
            +   * By default the service supports TCP connections through a websocket relay.
            +   * Setting this option to true disables that relay, which prevents the usage
            +   * of services that require plain TCP connections, such as SSH.
            +   * When enabled, all communication must occur over HTTPS or WSS.
            +   * 
            + * + * bool disable_tcp_connections = 24 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The disableTcpConnections. + */ + @java.lang.Override + public boolean getDisableTcpConnections() { + return disableTcpConnections_; + } + + public static final int ALLOWED_PORTS_FIELD_NUMBER = 25; + + @SuppressWarnings("serial") + private java.util.List + allowedPorts_; + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getAllowedPortsList() { + return allowedPorts_; + } + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.cloud.workstations.v1.WorkstationConfig.PortRangeOrBuilder> + getAllowedPortsOrBuilderList() { + return allowedPorts_; + } + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getAllowedPortsCount() { + return allowedPorts_.size(); + } + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PortRange getAllowedPorts(int index) { + return allowedPorts_.get(index); + } + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig.PortRangeOrBuilder + getAllowedPortsOrBuilder(int index) { + return allowedPorts_.get(index); + } + + public static final int GRANT_WORKSTATION_ADMIN_ROLE_ON_CREATE_FIELD_NUMBER = 29; + private boolean grantWorkstationAdminRoleOnCreate_ = false; + + /** + * + * + *
            +   * Optional. Grant creator of a workstation `roles/workstations.policyAdmin`
            +   * role along with `roles/workstations.user` role on the workstation created
            +   * by them. This allows workstation users to share access to either their
            +   * entire workstation, or individual ports. Defaults to false.
            +   * 
            + * + * + * bool grant_workstation_admin_role_on_create = 29 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The grantWorkstationAdminRoleOnCreate. + */ + @java.lang.Override + public boolean getGrantWorkstationAdminRoleOnCreate() { + return grantWorkstationAdminRoleOnCreate_; + } + + 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(displayName_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, displayName_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, uid_); + } + if (reconciling_ != false) { + output.writeBool(4, reconciling_); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetAnnotations(), AnnotationsDefaultEntryHolder.defaultEntry, 5); + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(6, getCreateTime()); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(7, getUpdateTime()); + } + if (((bitField0_ & 0x00000004) != 0)) { + output.writeMessage(8, getDeleteTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 9, etag_); + } + if (((bitField0_ & 0x00000008) != 0)) { + output.writeMessage(10, getIdleTimeout()); + } + if (((bitField0_ & 0x00000010) != 0)) { + output.writeMessage(11, getRunningTimeout()); + } + if (((bitField0_ & 0x00000020) != 0)) { + output.writeMessage(12, getHost()); + } + for (int i = 0; i < persistentDirectories_.size(); i++) { + output.writeMessage(13, persistentDirectories_.get(i)); + } + if (((bitField0_ & 0x00000040) != 0)) { + output.writeMessage(14, getContainer()); + } + if (degraded_ != false) { + output.writeBool(15, degraded_); + } + for (int i = 0; i < conditions_.size(); i++) { + output.writeMessage(16, conditions_.get(i)); + } + if (((bitField0_ & 0x00000080) != 0)) { + output.writeMessage(17, getEncryptionKey()); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 18); + for (int i = 0; i < readinessChecks_.size(); i++) { + output.writeMessage(19, readinessChecks_.get(i)); + } + if (enableAuditAgent_ != false) { + output.writeBool(20, enableAuditAgent_); + } + for (int i = 0; i < ephemeralDirectories_.size(); i++) { + output.writeMessage(22, ephemeralDirectories_.get(i)); + } + for (int i = 0; i < replicaZones_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString(output, 23, replicaZones_.getRaw(i)); + } + if (disableTcpConnections_ != false) { + output.writeBool(24, disableTcpConnections_); + } + for (int i = 0; i < allowedPorts_.size(); i++) { + output.writeMessage(25, allowedPorts_.get(i)); + } + if (maxUsableWorkstations_ != 0) { + output.writeInt32(28, maxUsableWorkstations_); + } + if (grantWorkstationAdminRoleOnCreate_ != false) { + output.writeBool(29, grantWorkstationAdminRoleOnCreate_); + } + 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(displayName_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, displayName_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, uid_); + } + if (reconciling_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, reconciling_); + } + for (java.util.Map.Entry entry : + internalGetAnnotations().getMap().entrySet()) { + com.google.protobuf.MapEntry annotations__ = + AnnotationsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) .build(); size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, annotations__); } - if (((bitField0_ & 0x00000001) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getCreateTime()); + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getCreateTime()); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getUpdateTime()); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getDeleteTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(9, etag_); + } + if (((bitField0_ & 0x00000008) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(10, getIdleTimeout()); + } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(11, getRunningTimeout()); + } + if (((bitField0_ & 0x00000020) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, getHost()); + } + for (int i = 0; i < persistentDirectories_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 13, persistentDirectories_.get(i)); + } + if (((bitField0_ & 0x00000040) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, getContainer()); + } + if (degraded_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(15, degraded_); + } + for (int i = 0; i < conditions_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(16, conditions_.get(i)); + } + if (((bitField0_ & 0x00000080) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(17, getEncryptionKey()); + } + for (java.util.Map.Entry entry : + internalGetLabels().getMap().entrySet()) { + com.google.protobuf.MapEntry labels__ = + LabelsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(18, labels__); + } + for (int i = 0; i < readinessChecks_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(19, readinessChecks_.get(i)); + } + if (enableAuditAgent_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(20, enableAuditAgent_); + } + for (int i = 0; i < ephemeralDirectories_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 22, ephemeralDirectories_.get(i)); + } + { + int dataSize = 0; + for (int i = 0; i < replicaZones_.size(); i++) { + dataSize += computeStringSizeNoTag(replicaZones_.getRaw(i)); + } + size += dataSize; + size += 2 * getReplicaZonesList().size(); + } + if (disableTcpConnections_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(24, disableTcpConnections_); + } + for (int i = 0; i < allowedPorts_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(25, allowedPorts_.get(i)); + } + if (maxUsableWorkstations_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(28, maxUsableWorkstations_); + } + if (grantWorkstationAdminRoleOnCreate_ != false) { + size += + com.google.protobuf.CodedOutputStream.computeBoolSize( + 29, grantWorkstationAdminRoleOnCreate_); + } + 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.cloud.workstations.v1.WorkstationConfig)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1.WorkstationConfig other = + (com.google.cloud.workstations.v1.WorkstationConfig) obj; + + if (!getName().equals(other.getName())) return false; + if (!getDisplayName().equals(other.getDisplayName())) return false; + if (!getUid().equals(other.getUid())) return false; + if (getReconciling() != other.getReconciling()) return false; + if (!internalGetAnnotations().equals(other.internalGetAnnotations())) return false; + if (!internalGetLabels().equals(other.internalGetLabels())) return false; + if (hasCreateTime() != other.hasCreateTime()) return false; + if (hasCreateTime()) { + if (!getCreateTime().equals(other.getCreateTime())) return false; + } + if (hasUpdateTime() != other.hasUpdateTime()) return false; + if (hasUpdateTime()) { + if (!getUpdateTime().equals(other.getUpdateTime())) return false; + } + if (hasDeleteTime() != other.hasDeleteTime()) return false; + if (hasDeleteTime()) { + if (!getDeleteTime().equals(other.getDeleteTime())) return false; + } + if (!getEtag().equals(other.getEtag())) return false; + if (hasIdleTimeout() != other.hasIdleTimeout()) return false; + if (hasIdleTimeout()) { + if (!getIdleTimeout().equals(other.getIdleTimeout())) return false; + } + if (hasRunningTimeout() != other.hasRunningTimeout()) return false; + if (hasRunningTimeout()) { + if (!getRunningTimeout().equals(other.getRunningTimeout())) return false; + } + if (getMaxUsableWorkstations() != other.getMaxUsableWorkstations()) return false; + if (hasHost() != other.hasHost()) return false; + if (hasHost()) { + if (!getHost().equals(other.getHost())) return false; + } + if (!getPersistentDirectoriesList().equals(other.getPersistentDirectoriesList())) return false; + if (!getEphemeralDirectoriesList().equals(other.getEphemeralDirectoriesList())) return false; + if (hasContainer() != other.hasContainer()) return false; + if (hasContainer()) { + if (!getContainer().equals(other.getContainer())) return false; + } + if (hasEncryptionKey() != other.hasEncryptionKey()) return false; + if (hasEncryptionKey()) { + if (!getEncryptionKey().equals(other.getEncryptionKey())) return false; + } + if (!getReadinessChecksList().equals(other.getReadinessChecksList())) return false; + if (!getReplicaZonesList().equals(other.getReplicaZonesList())) return false; + if (getDegraded() != other.getDegraded()) return false; + if (!getConditionsList().equals(other.getConditionsList())) return false; + if (getEnableAuditAgent() != other.getEnableAuditAgent()) return false; + if (getDisableTcpConnections() != other.getDisableTcpConnections()) return false; + if (!getAllowedPortsList().equals(other.getAllowedPortsList())) return false; + if (getGrantWorkstationAdminRoleOnCreate() != other.getGrantWorkstationAdminRoleOnCreate()) + 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) + DISPLAY_NAME_FIELD_NUMBER; + hash = (53 * hash) + getDisplayName().hashCode(); + hash = (37 * hash) + UID_FIELD_NUMBER; + hash = (53 * hash) + getUid().hashCode(); + hash = (37 * hash) + RECONCILING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReconciling()); + if (!internalGetAnnotations().getMap().isEmpty()) { + hash = (37 * hash) + ANNOTATIONS_FIELD_NUMBER; + hash = (53 * hash) + internalGetAnnotations().hashCode(); + } + if (!internalGetLabels().getMap().isEmpty()) { + hash = (37 * hash) + LABELS_FIELD_NUMBER; + hash = (53 * hash) + internalGetLabels().hashCode(); + } + if (hasCreateTime()) { + hash = (37 * hash) + CREATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getCreateTime().hashCode(); + } + if (hasUpdateTime()) { + hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getUpdateTime().hashCode(); + } + if (hasDeleteTime()) { + hash = (37 * hash) + DELETE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getDeleteTime().hashCode(); + } + hash = (37 * hash) + ETAG_FIELD_NUMBER; + hash = (53 * hash) + getEtag().hashCode(); + if (hasIdleTimeout()) { + hash = (37 * hash) + IDLE_TIMEOUT_FIELD_NUMBER; + hash = (53 * hash) + getIdleTimeout().hashCode(); + } + if (hasRunningTimeout()) { + hash = (37 * hash) + RUNNING_TIMEOUT_FIELD_NUMBER; + hash = (53 * hash) + getRunningTimeout().hashCode(); + } + hash = (37 * hash) + MAX_USABLE_WORKSTATIONS_FIELD_NUMBER; + hash = (53 * hash) + getMaxUsableWorkstations(); + if (hasHost()) { + hash = (37 * hash) + HOST_FIELD_NUMBER; + hash = (53 * hash) + getHost().hashCode(); + } + if (getPersistentDirectoriesCount() > 0) { + hash = (37 * hash) + PERSISTENT_DIRECTORIES_FIELD_NUMBER; + hash = (53 * hash) + getPersistentDirectoriesList().hashCode(); + } + if (getEphemeralDirectoriesCount() > 0) { + hash = (37 * hash) + EPHEMERAL_DIRECTORIES_FIELD_NUMBER; + hash = (53 * hash) + getEphemeralDirectoriesList().hashCode(); + } + if (hasContainer()) { + hash = (37 * hash) + CONTAINER_FIELD_NUMBER; + hash = (53 * hash) + getContainer().hashCode(); + } + if (hasEncryptionKey()) { + hash = (37 * hash) + ENCRYPTION_KEY_FIELD_NUMBER; + hash = (53 * hash) + getEncryptionKey().hashCode(); + } + if (getReadinessChecksCount() > 0) { + hash = (37 * hash) + READINESS_CHECKS_FIELD_NUMBER; + hash = (53 * hash) + getReadinessChecksList().hashCode(); + } + if (getReplicaZonesCount() > 0) { + hash = (37 * hash) + REPLICA_ZONES_FIELD_NUMBER; + hash = (53 * hash) + getReplicaZonesList().hashCode(); + } + hash = (37 * hash) + DEGRADED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDegraded()); + if (getConditionsCount() > 0) { + hash = (37 * hash) + CONDITIONS_FIELD_NUMBER; + hash = (53 * hash) + getConditionsList().hashCode(); + } + hash = (37 * hash) + ENABLE_AUDIT_AGENT_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getEnableAuditAgent()); + hash = (37 * hash) + DISABLE_TCP_CONNECTIONS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDisableTcpConnections()); + if (getAllowedPortsCount() > 0) { + hash = (37 * hash) + ALLOWED_PORTS_FIELD_NUMBER; + hash = (53 * hash) + getAllowedPortsList().hashCode(); + } + hash = (37 * hash) + GRANT_WORKSTATION_ADMIN_ROLE_ON_CREATE_FIELD_NUMBER; + hash = + (53 * hash) + + com.google.protobuf.Internal.hashBoolean(getGrantWorkstationAdminRoleOnCreate()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig 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.cloud.workstations.v1.WorkstationConfig parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig 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.cloud.workstations.v1.WorkstationConfig parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig 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.cloud.workstations.v1.WorkstationConfig parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1.WorkstationConfig 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.cloud.workstations.v1.WorkstationConfig 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 workstation configuration resource in the Cloud Workstations API.
            +   *
            +   * Workstation configurations act as templates for workstations. The workstation
            +   * configuration defines details such as the workstation virtual machine (VM)
            +   * instance type, persistent storage, container image defining environment,
            +   * which IDE or Code Editor to use, and more. Administrators and platform teams
            +   * can also use [Identity and Access Management
            +   * (IAM)](https://cloud.google.com/iam/docs/overview) rules to grant access to
            +   * teams or to individual developers.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig) + com.google.cloud.workstations.v1.WorkstationConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor; + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 5: + return internalGetAnnotations(); + case 18: + return internalGetLabels(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } } - if (((bitField0_ & 0x00000002) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getUpdateTime()); + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( + int number) { + switch (number) { + case 5: + return internalGetMutableAnnotations(); + case 18: + return internalGetMutableLabels(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } } - if (((bitField0_ & 0x00000004) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getDeleteTime()); + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1.WorkstationConfig.class, + com.google.cloud.workstations.v1.WorkstationConfig.Builder.class); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(9, etag_); + + // Construct using com.google.cloud.workstations.v1.WorkstationConfig.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); } - if (((bitField0_ & 0x00000008) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(10, getIdleTimeout()); + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); } - if (((bitField0_ & 0x00000010) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(11, getRunningTimeout()); + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetCreateTimeFieldBuilder(); + internalGetUpdateTimeFieldBuilder(); + internalGetDeleteTimeFieldBuilder(); + internalGetIdleTimeoutFieldBuilder(); + internalGetRunningTimeoutFieldBuilder(); + internalGetHostFieldBuilder(); + internalGetPersistentDirectoriesFieldBuilder(); + internalGetEphemeralDirectoriesFieldBuilder(); + internalGetContainerFieldBuilder(); + internalGetEncryptionKeyFieldBuilder(); + internalGetReadinessChecksFieldBuilder(); + internalGetConditionsFieldBuilder(); + internalGetAllowedPortsFieldBuilder(); + } } - if (((bitField0_ & 0x00000020) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, getHost()); + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + displayName_ = ""; + uid_ = ""; + reconciling_ = false; + internalGetMutableAnnotations().clear(); + internalGetMutableLabels().clear(); + createTime_ = null; + if (createTimeBuilder_ != null) { + createTimeBuilder_.dispose(); + createTimeBuilder_ = null; + } + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; + } + deleteTime_ = null; + if (deleteTimeBuilder_ != null) { + deleteTimeBuilder_.dispose(); + deleteTimeBuilder_ = null; + } + etag_ = ""; + idleTimeout_ = null; + if (idleTimeoutBuilder_ != null) { + idleTimeoutBuilder_.dispose(); + idleTimeoutBuilder_ = null; + } + runningTimeout_ = null; + if (runningTimeoutBuilder_ != null) { + runningTimeoutBuilder_.dispose(); + runningTimeoutBuilder_ = null; + } + maxUsableWorkstations_ = 0; + host_ = null; + if (hostBuilder_ != null) { + hostBuilder_.dispose(); + hostBuilder_ = null; + } + if (persistentDirectoriesBuilder_ == null) { + persistentDirectories_ = java.util.Collections.emptyList(); + } else { + persistentDirectories_ = null; + persistentDirectoriesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00004000); + if (ephemeralDirectoriesBuilder_ == null) { + ephemeralDirectories_ = java.util.Collections.emptyList(); + } else { + ephemeralDirectories_ = null; + ephemeralDirectoriesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00008000); + container_ = null; + if (containerBuilder_ != null) { + containerBuilder_.dispose(); + containerBuilder_ = null; + } + encryptionKey_ = null; + if (encryptionKeyBuilder_ != null) { + encryptionKeyBuilder_.dispose(); + encryptionKeyBuilder_ = null; + } + if (readinessChecksBuilder_ == null) { + readinessChecks_ = java.util.Collections.emptyList(); + } else { + readinessChecks_ = null; + readinessChecksBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00040000); + replicaZones_ = com.google.protobuf.LazyStringArrayList.emptyList(); + degraded_ = false; + if (conditionsBuilder_ == null) { + conditions_ = java.util.Collections.emptyList(); + } else { + conditions_ = null; + conditionsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00200000); + enableAuditAgent_ = false; + disableTcpConnections_ = false; + if (allowedPortsBuilder_ == null) { + allowedPorts_ = java.util.Collections.emptyList(); + } else { + allowedPorts_ = null; + allowedPortsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x01000000); + grantWorkstationAdminRoleOnCreate_ = false; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1.WorkstationsProto + .internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig getDefaultInstanceForType() { + return com.google.cloud.workstations.v1.WorkstationConfig.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig build() { + com.google.cloud.workstations.v1.WorkstationConfig result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; } - for (int i = 0; i < persistentDirectories_.size(); i++) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 13, persistentDirectories_.get(i)); + + @java.lang.Override + public com.google.cloud.workstations.v1.WorkstationConfig buildPartial() { + com.google.cloud.workstations.v1.WorkstationConfig result = + new com.google.cloud.workstations.v1.WorkstationConfig(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; } - if (((bitField0_ & 0x00000040) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, getContainer()); + + private void buildPartialRepeatedFields( + com.google.cloud.workstations.v1.WorkstationConfig result) { + if (persistentDirectoriesBuilder_ == null) { + if (((bitField0_ & 0x00004000) != 0)) { + persistentDirectories_ = java.util.Collections.unmodifiableList(persistentDirectories_); + bitField0_ = (bitField0_ & ~0x00004000); + } + result.persistentDirectories_ = persistentDirectories_; + } else { + result.persistentDirectories_ = persistentDirectoriesBuilder_.build(); + } + if (ephemeralDirectoriesBuilder_ == null) { + if (((bitField0_ & 0x00008000) != 0)) { + ephemeralDirectories_ = java.util.Collections.unmodifiableList(ephemeralDirectories_); + bitField0_ = (bitField0_ & ~0x00008000); + } + result.ephemeralDirectories_ = ephemeralDirectories_; + } else { + result.ephemeralDirectories_ = ephemeralDirectoriesBuilder_.build(); + } + if (readinessChecksBuilder_ == null) { + if (((bitField0_ & 0x00040000) != 0)) { + readinessChecks_ = java.util.Collections.unmodifiableList(readinessChecks_); + bitField0_ = (bitField0_ & ~0x00040000); + } + result.readinessChecks_ = readinessChecks_; + } else { + result.readinessChecks_ = readinessChecksBuilder_.build(); + } + if (conditionsBuilder_ == null) { + if (((bitField0_ & 0x00200000) != 0)) { + conditions_ = java.util.Collections.unmodifiableList(conditions_); + bitField0_ = (bitField0_ & ~0x00200000); + } + result.conditions_ = conditions_; + } else { + result.conditions_ = conditionsBuilder_.build(); + } + if (allowedPortsBuilder_ == null) { + if (((bitField0_ & 0x01000000) != 0)) { + allowedPorts_ = java.util.Collections.unmodifiableList(allowedPorts_); + bitField0_ = (bitField0_ & ~0x01000000); + } + result.allowedPorts_ = allowedPorts_; + } else { + result.allowedPorts_ = allowedPortsBuilder_.build(); + } } - if (degraded_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(15, degraded_); + + private void buildPartial0(com.google.cloud.workstations.v1.WorkstationConfig result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.displayName_ = displayName_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.uid_ = uid_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.reconciling_ = reconciling_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.annotations_ = internalGetAnnotations(); + result.annotations_.makeImmutable(); + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.labels_ = internalGetLabels(); + result.labels_.makeImmutable(); + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000040) != 0)) { + result.createTime_ = createTimeBuilder_ == null ? createTime_ : createTimeBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.updateTime_ = updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.deleteTime_ = deleteTimeBuilder_ == null ? deleteTime_ : deleteTimeBuilder_.build(); + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.etag_ = etag_; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.idleTimeout_ = + idleTimeoutBuilder_ == null ? idleTimeout_ : idleTimeoutBuilder_.build(); + to_bitField0_ |= 0x00000008; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.runningTimeout_ = + runningTimeoutBuilder_ == null ? runningTimeout_ : runningTimeoutBuilder_.build(); + to_bitField0_ |= 0x00000010; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.maxUsableWorkstations_ = maxUsableWorkstations_; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.host_ = hostBuilder_ == null ? host_ : hostBuilder_.build(); + to_bitField0_ |= 0x00000020; + } + if (((from_bitField0_ & 0x00010000) != 0)) { + result.container_ = containerBuilder_ == null ? container_ : containerBuilder_.build(); + to_bitField0_ |= 0x00000040; + } + if (((from_bitField0_ & 0x00020000) != 0)) { + result.encryptionKey_ = + encryptionKeyBuilder_ == null ? encryptionKey_ : encryptionKeyBuilder_.build(); + to_bitField0_ |= 0x00000080; + } + if (((from_bitField0_ & 0x00080000) != 0)) { + replicaZones_.makeImmutable(); + result.replicaZones_ = replicaZones_; + } + if (((from_bitField0_ & 0x00100000) != 0)) { + result.degraded_ = degraded_; + } + if (((from_bitField0_ & 0x00400000) != 0)) { + result.enableAuditAgent_ = enableAuditAgent_; + } + if (((from_bitField0_ & 0x00800000) != 0)) { + result.disableTcpConnections_ = disableTcpConnections_; + } + if (((from_bitField0_ & 0x02000000) != 0)) { + result.grantWorkstationAdminRoleOnCreate_ = grantWorkstationAdminRoleOnCreate_; + } + result.bitField0_ |= to_bitField0_; } - for (int i = 0; i < conditions_.size(); i++) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(16, conditions_.get(i)); + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1.WorkstationConfig) { + return mergeFrom((com.google.cloud.workstations.v1.WorkstationConfig) other); + } else { + super.mergeFrom(other); + return this; + } } - if (((bitField0_ & 0x00000080) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(17, getEncryptionKey()); + + public Builder mergeFrom(com.google.cloud.workstations.v1.WorkstationConfig other) { + if (other == com.google.cloud.workstations.v1.WorkstationConfig.getDefaultInstance()) + return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getDisplayName().isEmpty()) { + displayName_ = other.displayName_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getUid().isEmpty()) { + uid_ = other.uid_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getReconciling() != false) { + setReconciling(other.getReconciling()); + } + internalGetMutableAnnotations().mergeFrom(other.internalGetAnnotations()); + bitField0_ |= 0x00000010; + internalGetMutableLabels().mergeFrom(other.internalGetLabels()); + bitField0_ |= 0x00000020; + if (other.hasCreateTime()) { + mergeCreateTime(other.getCreateTime()); + } + if (other.hasUpdateTime()) { + mergeUpdateTime(other.getUpdateTime()); + } + if (other.hasDeleteTime()) { + mergeDeleteTime(other.getDeleteTime()); + } + if (!other.getEtag().isEmpty()) { + etag_ = other.etag_; + bitField0_ |= 0x00000200; + onChanged(); + } + if (other.hasIdleTimeout()) { + mergeIdleTimeout(other.getIdleTimeout()); + } + if (other.hasRunningTimeout()) { + mergeRunningTimeout(other.getRunningTimeout()); + } + if (other.getMaxUsableWorkstations() != 0) { + setMaxUsableWorkstations(other.getMaxUsableWorkstations()); + } + if (other.hasHost()) { + mergeHost(other.getHost()); + } + if (persistentDirectoriesBuilder_ == null) { + if (!other.persistentDirectories_.isEmpty()) { + if (persistentDirectories_.isEmpty()) { + persistentDirectories_ = other.persistentDirectories_; + bitField0_ = (bitField0_ & ~0x00004000); + } else { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.addAll(other.persistentDirectories_); + } + onChanged(); + } + } else { + if (!other.persistentDirectories_.isEmpty()) { + if (persistentDirectoriesBuilder_.isEmpty()) { + persistentDirectoriesBuilder_.dispose(); + persistentDirectoriesBuilder_ = null; + persistentDirectories_ = other.persistentDirectories_; + bitField0_ = (bitField0_ & ~0x00004000); + persistentDirectoriesBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetPersistentDirectoriesFieldBuilder() + : null; + } else { + persistentDirectoriesBuilder_.addAllMessages(other.persistentDirectories_); + } + } + } + if (ephemeralDirectoriesBuilder_ == null) { + if (!other.ephemeralDirectories_.isEmpty()) { + if (ephemeralDirectories_.isEmpty()) { + ephemeralDirectories_ = other.ephemeralDirectories_; + bitField0_ = (bitField0_ & ~0x00008000); + } else { + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.addAll(other.ephemeralDirectories_); + } + onChanged(); + } + } else { + if (!other.ephemeralDirectories_.isEmpty()) { + if (ephemeralDirectoriesBuilder_.isEmpty()) { + ephemeralDirectoriesBuilder_.dispose(); + ephemeralDirectoriesBuilder_ = null; + ephemeralDirectories_ = other.ephemeralDirectories_; + bitField0_ = (bitField0_ & ~0x00008000); + ephemeralDirectoriesBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetEphemeralDirectoriesFieldBuilder() + : null; + } else { + ephemeralDirectoriesBuilder_.addAllMessages(other.ephemeralDirectories_); + } + } + } + if (other.hasContainer()) { + mergeContainer(other.getContainer()); + } + if (other.hasEncryptionKey()) { + mergeEncryptionKey(other.getEncryptionKey()); + } + if (readinessChecksBuilder_ == null) { + if (!other.readinessChecks_.isEmpty()) { + if (readinessChecks_.isEmpty()) { + readinessChecks_ = other.readinessChecks_; + bitField0_ = (bitField0_ & ~0x00040000); + } else { + ensureReadinessChecksIsMutable(); + readinessChecks_.addAll(other.readinessChecks_); + } + onChanged(); + } + } else { + if (!other.readinessChecks_.isEmpty()) { + if (readinessChecksBuilder_.isEmpty()) { + readinessChecksBuilder_.dispose(); + readinessChecksBuilder_ = null; + readinessChecks_ = other.readinessChecks_; + bitField0_ = (bitField0_ & ~0x00040000); + readinessChecksBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetReadinessChecksFieldBuilder() + : null; + } else { + readinessChecksBuilder_.addAllMessages(other.readinessChecks_); + } + } + } + if (!other.replicaZones_.isEmpty()) { + if (replicaZones_.isEmpty()) { + replicaZones_ = other.replicaZones_; + bitField0_ |= 0x00080000; + } else { + ensureReplicaZonesIsMutable(); + replicaZones_.addAll(other.replicaZones_); + } + onChanged(); + } + if (other.getDegraded() != false) { + setDegraded(other.getDegraded()); + } + if (conditionsBuilder_ == null) { + if (!other.conditions_.isEmpty()) { + if (conditions_.isEmpty()) { + conditions_ = other.conditions_; + bitField0_ = (bitField0_ & ~0x00200000); + } else { + ensureConditionsIsMutable(); + conditions_.addAll(other.conditions_); + } + onChanged(); + } + } else { + if (!other.conditions_.isEmpty()) { + if (conditionsBuilder_.isEmpty()) { + conditionsBuilder_.dispose(); + conditionsBuilder_ = null; + conditions_ = other.conditions_; + bitField0_ = (bitField0_ & ~0x00200000); + conditionsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetConditionsFieldBuilder() + : null; + } else { + conditionsBuilder_.addAllMessages(other.conditions_); + } + } + } + if (other.getEnableAuditAgent() != false) { + setEnableAuditAgent(other.getEnableAuditAgent()); + } + if (other.getDisableTcpConnections() != false) { + setDisableTcpConnections(other.getDisableTcpConnections()); + } + if (allowedPortsBuilder_ == null) { + if (!other.allowedPorts_.isEmpty()) { + if (allowedPorts_.isEmpty()) { + allowedPorts_ = other.allowedPorts_; + bitField0_ = (bitField0_ & ~0x01000000); + } else { + ensureAllowedPortsIsMutable(); + allowedPorts_.addAll(other.allowedPorts_); + } + onChanged(); + } + } else { + if (!other.allowedPorts_.isEmpty()) { + if (allowedPortsBuilder_.isEmpty()) { + allowedPortsBuilder_.dispose(); + allowedPortsBuilder_ = null; + allowedPorts_ = other.allowedPorts_; + bitField0_ = (bitField0_ & ~0x01000000); + allowedPortsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetAllowedPortsFieldBuilder() + : null; + } else { + allowedPortsBuilder_.addAllMessages(other.allowedPorts_); + } + } + } + if (other.getGrantWorkstationAdminRoleOnCreate() != false) { + setGrantWorkstationAdminRoleOnCreate(other.getGrantWorkstationAdminRoleOnCreate()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; } - for (java.util.Map.Entry entry : - internalGetLabels().getMap().entrySet()) { - com.google.protobuf.MapEntry labels__ = - LabelsDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(18, labels__); + + @java.lang.Override + public final boolean isInitialized() { + return true; } - for (int i = 0; i < readinessChecks_.size(); i++) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(19, readinessChecks_.get(i)); + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + name_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + displayName_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + uid_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: + { + reconciling_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 42: + { + com.google.protobuf.MapEntry annotations__ = + input.readMessage( + AnnotationsDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableAnnotations() + .getMutableMap() + .put(annotations__.getKey(), annotations__.getValue()); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 50: + { + input.readMessage( + internalGetCreateTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000040; + break; + } // case 50 + case 58: + { + input.readMessage( + internalGetUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000080; + break; + } // case 58 + case 66: + { + input.readMessage( + internalGetDeleteTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000100; + break; + } // case 66 + case 74: + { + etag_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000200; + break; + } // case 74 + case 82: + { + input.readMessage( + internalGetIdleTimeoutFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000400; + break; + } // case 82 + case 90: + { + input.readMessage( + internalGetRunningTimeoutFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000800; + break; + } // case 90 + case 98: + { + input.readMessage(internalGetHostFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00002000; + break; + } // case 98 + case 106: + { + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory m = + input.readMessage( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .parser(), + extensionRegistry); + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(m); + } else { + persistentDirectoriesBuilder_.addMessage(m); + } + break; + } // case 106 + case 114: + { + input.readMessage( + internalGetContainerFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00010000; + break; + } // case 114 + case 120: + { + degraded_ = input.readBool(); + bitField0_ |= 0x00100000; + break; + } // case 120 + case 130: + { + com.google.rpc.Status m = + input.readMessage(com.google.rpc.Status.parser(), extensionRegistry); + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(m); + } else { + conditionsBuilder_.addMessage(m); + } + break; + } // case 130 + case 138: + { + input.readMessage( + internalGetEncryptionKeyFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00020000; + break; + } // case 138 + case 146: + { + com.google.protobuf.MapEntry labels__ = + input.readMessage( + LabelsDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableLabels() + .getMutableMap() + .put(labels__.getKey(), labels__.getValue()); + bitField0_ |= 0x00000020; + break; + } // case 146 + case 154: + { + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck m = + input.readMessage( + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.parser(), + extensionRegistry); + if (readinessChecksBuilder_ == null) { + ensureReadinessChecksIsMutable(); + readinessChecks_.add(m); + } else { + readinessChecksBuilder_.addMessage(m); + } + break; + } // case 154 + case 160: + { + enableAuditAgent_ = input.readBool(); + bitField0_ |= 0x00400000; + break; + } // case 160 + case 178: + { + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory m = + input.readMessage( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .parser(), + extensionRegistry); + if (ephemeralDirectoriesBuilder_ == null) { + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.add(m); + } else { + ephemeralDirectoriesBuilder_.addMessage(m); + } + break; + } // case 178 + case 186: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureReplicaZonesIsMutable(); + replicaZones_.add(s); + break; + } // case 186 + case 192: + { + disableTcpConnections_ = input.readBool(); + bitField0_ |= 0x00800000; + break; + } // case 192 + case 202: + { + com.google.cloud.workstations.v1.WorkstationConfig.PortRange m = + input.readMessage( + com.google.cloud.workstations.v1.WorkstationConfig.PortRange.parser(), + extensionRegistry); + if (allowedPortsBuilder_ == null) { + ensureAllowedPortsIsMutable(); + allowedPorts_.add(m); + } else { + allowedPortsBuilder_.addMessage(m); + } + break; + } // case 202 + case 224: + { + maxUsableWorkstations_ = input.readInt32(); + bitField0_ |= 0x00001000; + break; + } // case 224 + case 232: + { + grantWorkstationAdminRoleOnCreate_ = input.readBool(); + bitField0_ |= 0x02000000; + break; + } // case 232 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; } - { - int dataSize = 0; - for (int i = 0; i < replicaZones_.size(); i++) { - dataSize += computeStringSizeNoTag(replicaZones_.getRaw(i)); + + private int bitField0_; + + private java.lang.Object name_ = ""; + + /** + * + * + *
            +     * Identifier. Full name of this workstation configuration.
            +     * 
            + * + * 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; } - size += dataSize; - size += 2 * getReplicaZonesList().size(); } - 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.cloud.workstations.v1.WorkstationConfig)) { - return super.equals(obj); + /** + * + * + *
            +     * Identifier. Full name of this workstation configuration.
            +     * 
            + * + * 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; + } } - com.google.cloud.workstations.v1.WorkstationConfig other = - (com.google.cloud.workstations.v1.WorkstationConfig) obj; - if (!getName().equals(other.getName())) return false; - if (!getDisplayName().equals(other.getDisplayName())) return false; - if (!getUid().equals(other.getUid())) return false; - if (getReconciling() != other.getReconciling()) return false; - if (!internalGetAnnotations().equals(other.internalGetAnnotations())) return false; - if (!internalGetLabels().equals(other.internalGetLabels())) return false; - if (hasCreateTime() != other.hasCreateTime()) return false; - if (hasCreateTime()) { - if (!getCreateTime().equals(other.getCreateTime())) return false; - } - if (hasUpdateTime() != other.hasUpdateTime()) return false; - if (hasUpdateTime()) { - if (!getUpdateTime().equals(other.getUpdateTime())) return false; - } - if (hasDeleteTime() != other.hasDeleteTime()) return false; - if (hasDeleteTime()) { - if (!getDeleteTime().equals(other.getDeleteTime())) return false; - } - if (!getEtag().equals(other.getEtag())) return false; - if (hasIdleTimeout() != other.hasIdleTimeout()) return false; - if (hasIdleTimeout()) { - if (!getIdleTimeout().equals(other.getIdleTimeout())) return false; - } - if (hasRunningTimeout() != other.hasRunningTimeout()) return false; - if (hasRunningTimeout()) { - if (!getRunningTimeout().equals(other.getRunningTimeout())) return false; - } - if (hasHost() != other.hasHost()) return false; - if (hasHost()) { - if (!getHost().equals(other.getHost())) return false; - } - if (!getPersistentDirectoriesList().equals(other.getPersistentDirectoriesList())) return false; - if (hasContainer() != other.hasContainer()) return false; - if (hasContainer()) { - if (!getContainer().equals(other.getContainer())) return false; - } - if (hasEncryptionKey() != other.hasEncryptionKey()) return false; - if (hasEncryptionKey()) { - if (!getEncryptionKey().equals(other.getEncryptionKey())) return false; + /** + * + * + *
            +     * Identifier. Full name of this workstation configuration.
            +     * 
            + * + * 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; } - if (!getReadinessChecksList().equals(other.getReadinessChecksList())) return false; - if (!getReplicaZonesList().equals(other.getReplicaZonesList())) return false; - if (getDegraded() != other.getDegraded()) return false; - if (!getConditionsList().equals(other.getConditionsList())) 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) + DISPLAY_NAME_FIELD_NUMBER; - hash = (53 * hash) + getDisplayName().hashCode(); - hash = (37 * hash) + UID_FIELD_NUMBER; - hash = (53 * hash) + getUid().hashCode(); - hash = (37 * hash) + RECONCILING_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReconciling()); - if (!internalGetAnnotations().getMap().isEmpty()) { - hash = (37 * hash) + ANNOTATIONS_FIELD_NUMBER; - hash = (53 * hash) + internalGetAnnotations().hashCode(); - } - if (!internalGetLabels().getMap().isEmpty()) { - hash = (37 * hash) + LABELS_FIELD_NUMBER; - hash = (53 * hash) + internalGetLabels().hashCode(); + /** + * + * + *
            +     * Identifier. Full name of this workstation configuration.
            +     * 
            + * + * 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; } - if (hasCreateTime()) { - hash = (37 * hash) + CREATE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getCreateTime().hashCode(); + + /** + * + * + *
            +     * Identifier. Full name of this workstation configuration.
            +     * 
            + * + * 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; } - if (hasUpdateTime()) { - hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getUpdateTime().hashCode(); + + private java.lang.Object displayName_ = ""; + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation configuration.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The displayName. + */ + public java.lang.String getDisplayName() { + java.lang.Object ref = displayName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + displayName_ = s; + return s; + } else { + return (java.lang.String) ref; + } } - if (hasDeleteTime()) { - hash = (37 * hash) + DELETE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getDeleteTime().hashCode(); + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation configuration.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for displayName. + */ + public com.google.protobuf.ByteString getDisplayNameBytes() { + java.lang.Object ref = displayName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + displayName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - hash = (37 * hash) + ETAG_FIELD_NUMBER; - hash = (53 * hash) + getEtag().hashCode(); - if (hasIdleTimeout()) { - hash = (37 * hash) + IDLE_TIMEOUT_FIELD_NUMBER; - hash = (53 * hash) + getIdleTimeout().hashCode(); + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation configuration.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The displayName to set. + * @return This builder for chaining. + */ + public Builder setDisplayName(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + displayName_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; } - if (hasRunningTimeout()) { - hash = (37 * hash) + RUNNING_TIMEOUT_FIELD_NUMBER; - hash = (53 * hash) + getRunningTimeout().hashCode(); + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation configuration.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearDisplayName() { + displayName_ = getDefaultInstance().getDisplayName(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; } - if (hasHost()) { - hash = (37 * hash) + HOST_FIELD_NUMBER; - hash = (53 * hash) + getHost().hashCode(); + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation configuration.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for displayName to set. + * @return This builder for chaining. + */ + public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + displayName_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; } - if (getPersistentDirectoriesCount() > 0) { - hash = (37 * hash) + PERSISTENT_DIRECTORIES_FIELD_NUMBER; - hash = (53 * hash) + getPersistentDirectoriesList().hashCode(); + + private java.lang.Object uid_ = ""; + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * configuration.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The uid. + */ + public java.lang.String getUid() { + java.lang.Object ref = uid_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + uid_ = s; + return s; + } else { + return (java.lang.String) ref; + } } - if (hasContainer()) { - hash = (37 * hash) + CONTAINER_FIELD_NUMBER; - hash = (53 * hash) + getContainer().hashCode(); + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * configuration.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The bytes for uid. + */ + public com.google.protobuf.ByteString getUidBytes() { + java.lang.Object ref = uid_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - if (hasEncryptionKey()) { - hash = (37 * hash) + ENCRYPTION_KEY_FIELD_NUMBER; - hash = (53 * hash) + getEncryptionKey().hashCode(); + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * configuration.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @param value The uid to set. + * @return This builder for chaining. + */ + public Builder setUid(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + uid_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; } - if (getReadinessChecksCount() > 0) { - hash = (37 * hash) + READINESS_CHECKS_FIELD_NUMBER; - hash = (53 * hash) + getReadinessChecksList().hashCode(); + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * configuration.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearUid() { + uid_ = getDefaultInstance().getUid(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; } - if (getReplicaZonesCount() > 0) { - hash = (37 * hash) + REPLICA_ZONES_FIELD_NUMBER; - hash = (53 * hash) + getReplicaZonesList().hashCode(); + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * configuration.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @param value The bytes for uid to set. + * @return This builder for chaining. + */ + public Builder setUidBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + uid_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; } - hash = (37 * hash) + DEGRADED_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDegraded()); - if (getConditionsCount() > 0) { - hash = (37 * hash) + CONDITIONS_FIELD_NUMBER; - hash = (53 * hash) + getConditionsList().hashCode(); + + private boolean reconciling_; + + /** + * + * + *
            +     * Output only. Indicates whether this workstation configuration is currently
            +     * being updated to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The reconciling. + */ + @java.lang.Override + public boolean getReconciling() { + return reconciling_; } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +     * Output only. Indicates whether this workstation configuration is currently
            +     * being updated to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The reconciling to set. + * @return This builder for chaining. + */ + public Builder setReconciling(boolean value) { + + reconciling_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +     * Output only. Indicates whether this workstation configuration is currently
            +     * being updated to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearReconciling() { + bitField0_ = (bitField0_ & ~0x00000008); + reconciling_ = false; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + private com.google.protobuf.MapField annotations_; - public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + private com.google.protobuf.MapField + internalGetAnnotations() { + if (annotations_ == null) { + return com.google.protobuf.MapField.emptyMapField( + AnnotationsDefaultEntryHolder.defaultEntry); + } + return annotations_; + } - public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + private com.google.protobuf.MapField + internalGetMutableAnnotations() { + if (annotations_ == null) { + annotations_ = + com.google.protobuf.MapField.newMapField(AnnotationsDefaultEntryHolder.defaultEntry); + } + if (!annotations_.isMutable()) { + annotations_ = annotations_.copy(); + } + bitField0_ |= 0x00000010; + onChanged(); + return annotations_; + } - public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + public int getAnnotationsCount() { + return internalGetAnnotations().getMap().size(); + } - public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetAnnotations().getMap().containsKey(key); + } - public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** Use {@link #getAnnotationsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getAnnotations() { + return getAnnotationsMap(); + } - public static com.google.cloud.workstations.v1.WorkstationConfig parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getAnnotationsMap() { + return internalGetAnnotations().getMap(); + } - public static com.google.cloud.workstations.v1.WorkstationConfig parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getAnnotationsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } - public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getAnnotationsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } - public static com.google.cloud.workstations.v1.WorkstationConfig parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + public Builder clearAnnotations() { + bitField0_ = (bitField0_ & ~0x00000010); + internalGetMutableAnnotations().getMutableMap().clear(); + return this; + } - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableAnnotations().getMutableMap().remove(key); + return this; + } - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableAnnotations() { + bitField0_ |= 0x00000010; + return internalGetMutableAnnotations().getMutableMap(); + } - public static Builder newBuilder(com.google.cloud.workstations.v1.WorkstationConfig prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAnnotations(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableAnnotations().getMutableMap().put(key, value); + bitField0_ |= 0x00000010; + return this; + } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAllAnnotations(java.util.Map values) { + internalGetMutableAnnotations().getMutableMap().putAll(values); + bitField0_ |= 0x00000010; + return this; + } - @java.lang.Override - protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } + private com.google.protobuf.MapField labels_; - /** - * - * - *
            -   * A workstation configuration resource in the Cloud Workstations API.
            -   *
            -   * Workstation configurations act as templates for workstations. The workstation
            -   * configuration defines details such as the workstation virtual machine (VM)
            -   * instance type, persistent storage, container image defining environment,
            -   * which IDE or Code Editor to use, and more. Administrators and platform teams
            -   * can also use [Identity and Access Management
            -   * (IAM)](https://cloud.google.com/iam/docs/overview) rules to grant access to
            -   * teams or to individual developers.
            -   * 
            - * - * Protobuf type {@code google.cloud.workstations.v1.WorkstationConfig} - */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1.WorkstationConfig) - com.google.cloud.workstations.v1.WorkstationConfigOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor; + private com.google.protobuf.MapField internalGetLabels() { + if (labels_ == null) { + return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); + } + return labels_; } - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( - int number) { - switch (number) { - case 5: - return internalGetAnnotations(); - case 18: - return internalGetLabels(); - default: - throw new RuntimeException("Invalid map field number: " + number); + private com.google.protobuf.MapField + internalGetMutableLabels() { + if (labels_ == null) { + labels_ = com.google.protobuf.MapField.newMapField(LabelsDefaultEntryHolder.defaultEntry); + } + if (!labels_.isMutable()) { + labels_ = labels_.copy(); } + bitField0_ |= 0x00000020; + onChanged(); + return labels_; } - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( - int number) { - switch (number) { - case 5: - return internalGetMutableAnnotations(); - case 18: - return internalGetMutableLabels(); - default: - throw new RuntimeException("Invalid map field number: " + number); - } + public int getLabelsCount() { + return internalGetLabels().getMap().size(); } + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation configuration and that are also propagated
            +     * to the underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1.WorkstationConfig.class, - com.google.cloud.workstations.v1.WorkstationConfig.Builder.class); + public boolean containsLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetLabels().getMap().containsKey(key); } - // Construct using com.google.cloud.workstations.v1.WorkstationConfig.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); + /** Use {@link #getLabelsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getLabels() { + return getLabelsMap(); } - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation configuration and that are also propagated
            +     * to the underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getLabelsMap() { + return internalGetLabels().getMap(); } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { - internalGetCreateTimeFieldBuilder(); - internalGetUpdateTimeFieldBuilder(); - internalGetDeleteTimeFieldBuilder(); - internalGetIdleTimeoutFieldBuilder(); - internalGetRunningTimeoutFieldBuilder(); - internalGetHostFieldBuilder(); - internalGetPersistentDirectoriesFieldBuilder(); - internalGetContainerFieldBuilder(); - internalGetEncryptionKeyFieldBuilder(); - internalGetReadinessChecksFieldBuilder(); - internalGetConditionsFieldBuilder(); + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation configuration and that are also propagated
            +     * to the underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getLabelsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); } + java.util.Map map = internalGetLabels().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; } + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation configuration and that are also propagated
            +     * to the underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - name_ = ""; - displayName_ = ""; - uid_ = ""; - reconciling_ = false; - internalGetMutableAnnotations().clear(); - internalGetMutableLabels().clear(); - createTime_ = null; - if (createTimeBuilder_ != null) { - createTimeBuilder_.dispose(); - createTimeBuilder_ = null; - } - updateTime_ = null; - if (updateTimeBuilder_ != null) { - updateTimeBuilder_.dispose(); - updateTimeBuilder_ = null; - } - deleteTime_ = null; - if (deleteTimeBuilder_ != null) { - deleteTimeBuilder_.dispose(); - deleteTimeBuilder_ = null; - } - etag_ = ""; - idleTimeout_ = null; - if (idleTimeoutBuilder_ != null) { - idleTimeoutBuilder_.dispose(); - idleTimeoutBuilder_ = null; - } - runningTimeout_ = null; - if (runningTimeoutBuilder_ != null) { - runningTimeoutBuilder_.dispose(); - runningTimeoutBuilder_ = null; - } - host_ = null; - if (hostBuilder_ != null) { - hostBuilder_.dispose(); - hostBuilder_ = null; - } - if (persistentDirectoriesBuilder_ == null) { - persistentDirectories_ = java.util.Collections.emptyList(); - } else { - persistentDirectories_ = null; - persistentDirectoriesBuilder_.clear(); - } - bitField0_ = (bitField0_ & ~0x00002000); - container_ = null; - if (containerBuilder_ != null) { - containerBuilder_.dispose(); - containerBuilder_ = null; - } - encryptionKey_ = null; - if (encryptionKeyBuilder_ != null) { - encryptionKeyBuilder_.dispose(); - encryptionKeyBuilder_ = null; + public java.lang.String getLabelsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - if (readinessChecksBuilder_ == null) { - readinessChecks_ = java.util.Collections.emptyList(); - } else { - readinessChecks_ = null; - readinessChecksBuilder_.clear(); + java.util.Map map = internalGetLabels().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); } - bitField0_ = (bitField0_ & ~0x00010000); - replicaZones_ = com.google.protobuf.LazyStringArrayList.emptyList(); - degraded_ = false; - if (conditionsBuilder_ == null) { - conditions_ = java.util.Collections.emptyList(); - } else { - conditions_ = null; - conditionsBuilder_.clear(); + return map.get(key); + } + + public Builder clearLabels() { + bitField0_ = (bitField0_ & ~0x00000020); + internalGetMutableLabels().getMutableMap().clear(); + return this; + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation configuration and that are also propagated
            +     * to the underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder removeLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - bitField0_ = (bitField0_ & ~0x00080000); + internalGetMutableLabels().getMutableMap().remove(key); return this; } - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1.WorkstationsProto - .internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor; + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableLabels() { + bitField0_ |= 0x00000020; + return internalGetMutableLabels().getMutableMap(); } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig getDefaultInstanceForType() { - return com.google.cloud.workstations.v1.WorkstationConfig.getDefaultInstance(); + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation configuration and that are also propagated
            +     * to the underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder putLabels(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableLabels().getMutableMap().put(key, value); + bitField0_ |= 0x00000020; + return this; } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig build() { - com.google.cloud.workstations.v1.WorkstationConfig result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation configuration and that are also propagated
            +     * to the underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder putAllLabels(java.util.Map values) { + internalGetMutableLabels().getMutableMap().putAll(values); + bitField0_ |= 0x00000020; + return this; } - @java.lang.Override - public com.google.cloud.workstations.v1.WorkstationConfig buildPartial() { - com.google.cloud.workstations.v1.WorkstationConfig result = - new com.google.cloud.workstations.v1.WorkstationConfig(this); - buildPartialRepeatedFields(result); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; + private com.google.protobuf.Timestamp createTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + createTimeBuilder_; + + /** + * + * + *
            +     * Output only. Time when this workstation configuration was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the createTime field is set. + */ + public boolean hasCreateTime() { + return ((bitField0_ & 0x00000040) != 0); } - private void buildPartialRepeatedFields( - com.google.cloud.workstations.v1.WorkstationConfig result) { - if (persistentDirectoriesBuilder_ == null) { - if (((bitField0_ & 0x00002000) != 0)) { - persistentDirectories_ = java.util.Collections.unmodifiableList(persistentDirectories_); - bitField0_ = (bitField0_ & ~0x00002000); - } - result.persistentDirectories_ = persistentDirectories_; + /** + * + * + *
            +     * Output only. Time when this workstation configuration was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The createTime. + */ + public com.google.protobuf.Timestamp getCreateTime() { + if (createTimeBuilder_ == null) { + return createTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : createTime_; } else { - result.persistentDirectories_ = persistentDirectoriesBuilder_.build(); + return createTimeBuilder_.getMessage(); } - if (readinessChecksBuilder_ == null) { - if (((bitField0_ & 0x00010000) != 0)) { - readinessChecks_ = java.util.Collections.unmodifiableList(readinessChecks_); - bitField0_ = (bitField0_ & ~0x00010000); + } + + /** + * + * + *
            +     * Output only. Time when this workstation configuration was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setCreateTime(com.google.protobuf.Timestamp value) { + if (createTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } - result.readinessChecks_ = readinessChecks_; + createTime_ = value; } else { - result.readinessChecks_ = readinessChecksBuilder_.build(); + createTimeBuilder_.setMessage(value); } - if (conditionsBuilder_ == null) { - if (((bitField0_ & 0x00080000) != 0)) { - conditions_ = java.util.Collections.unmodifiableList(conditions_); - bitField0_ = (bitField0_ & ~0x00080000); - } - result.conditions_ = conditions_; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation configuration was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (createTimeBuilder_ == null) { + createTime_ = builderForValue.build(); } else { - result.conditions_ = conditionsBuilder_.build(); + createTimeBuilder_.setMessage(builderForValue.build()); } + bitField0_ |= 0x00000040; + onChanged(); + return this; } - private void buildPartial0(com.google.cloud.workstations.v1.WorkstationConfig result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.name_ = name_; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.displayName_ = displayName_; - } - if (((from_bitField0_ & 0x00000004) != 0)) { - result.uid_ = uid_; - } - if (((from_bitField0_ & 0x00000008) != 0)) { - result.reconciling_ = reconciling_; - } - if (((from_bitField0_ & 0x00000010) != 0)) { - result.annotations_ = internalGetAnnotations(); - result.annotations_.makeImmutable(); - } - if (((from_bitField0_ & 0x00000020) != 0)) { - result.labels_ = internalGetLabels(); - result.labels_.makeImmutable(); - } - int to_bitField0_ = 0; - if (((from_bitField0_ & 0x00000040) != 0)) { - result.createTime_ = createTimeBuilder_ == null ? createTime_ : createTimeBuilder_.build(); - to_bitField0_ |= 0x00000001; - } - if (((from_bitField0_ & 0x00000080) != 0)) { - result.updateTime_ = updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build(); - to_bitField0_ |= 0x00000002; - } - if (((from_bitField0_ & 0x00000100) != 0)) { - result.deleteTime_ = deleteTimeBuilder_ == null ? deleteTime_ : deleteTimeBuilder_.build(); - to_bitField0_ |= 0x00000004; - } - if (((from_bitField0_ & 0x00000200) != 0)) { - result.etag_ = etag_; - } - if (((from_bitField0_ & 0x00000400) != 0)) { - result.idleTimeout_ = - idleTimeoutBuilder_ == null ? idleTimeout_ : idleTimeoutBuilder_.build(); - to_bitField0_ |= 0x00000008; - } - if (((from_bitField0_ & 0x00000800) != 0)) { - result.runningTimeout_ = - runningTimeoutBuilder_ == null ? runningTimeout_ : runningTimeoutBuilder_.build(); - to_bitField0_ |= 0x00000010; - } - if (((from_bitField0_ & 0x00001000) != 0)) { - result.host_ = hostBuilder_ == null ? host_ : hostBuilder_.build(); - to_bitField0_ |= 0x00000020; - } - if (((from_bitField0_ & 0x00004000) != 0)) { - result.container_ = containerBuilder_ == null ? container_ : containerBuilder_.build(); - to_bitField0_ |= 0x00000040; - } - if (((from_bitField0_ & 0x00008000) != 0)) { - result.encryptionKey_ = - encryptionKeyBuilder_ == null ? encryptionKey_ : encryptionKeyBuilder_.build(); - to_bitField0_ |= 0x00000080; - } - if (((from_bitField0_ & 0x00020000) != 0)) { - replicaZones_.makeImmutable(); - result.replicaZones_ = replicaZones_; + /** + * + * + *
            +     * Output only. Time when this workstation configuration was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { + if (createTimeBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0) + && createTime_ != null + && createTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getCreateTimeBuilder().mergeFrom(value); + } else { + createTime_ = value; + } + } else { + createTimeBuilder_.mergeFrom(value); } - if (((from_bitField0_ & 0x00040000) != 0)) { - result.degraded_ = degraded_; + if (createTime_ != null) { + bitField0_ |= 0x00000040; + onChanged(); } - result.bitField0_ |= to_bitField0_; + return this; } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.cloud.workstations.v1.WorkstationConfig) { - return mergeFrom((com.google.cloud.workstations.v1.WorkstationConfig) other); - } else { - super.mergeFrom(other); - return this; + /** + * + * + *
            +     * Output only. Time when this workstation configuration was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearCreateTime() { + bitField0_ = (bitField0_ & ~0x00000040); + createTime_ = null; + if (createTimeBuilder_ != null) { + createTimeBuilder_.dispose(); + createTimeBuilder_ = null; } + onChanged(); + return this; } - public Builder mergeFrom(com.google.cloud.workstations.v1.WorkstationConfig other) { - if (other == com.google.cloud.workstations.v1.WorkstationConfig.getDefaultInstance()) - return this; - if (!other.getName().isEmpty()) { - name_ = other.name_; - bitField0_ |= 0x00000001; - onChanged(); - } - if (!other.getDisplayName().isEmpty()) { - displayName_ = other.displayName_; - bitField0_ |= 0x00000002; - onChanged(); - } - if (!other.getUid().isEmpty()) { - uid_ = other.uid_; - bitField0_ |= 0x00000004; - onChanged(); - } - if (other.getReconciling() != false) { - setReconciling(other.getReconciling()); - } - internalGetMutableAnnotations().mergeFrom(other.internalGetAnnotations()); - bitField0_ |= 0x00000010; - internalGetMutableLabels().mergeFrom(other.internalGetLabels()); - bitField0_ |= 0x00000020; - if (other.hasCreateTime()) { - mergeCreateTime(other.getCreateTime()); - } - if (other.hasUpdateTime()) { - mergeUpdateTime(other.getUpdateTime()); - } - if (other.hasDeleteTime()) { - mergeDeleteTime(other.getDeleteTime()); - } - if (!other.getEtag().isEmpty()) { - etag_ = other.etag_; - bitField0_ |= 0x00000200; - onChanged(); - } - if (other.hasIdleTimeout()) { - mergeIdleTimeout(other.getIdleTimeout()); - } - if (other.hasRunningTimeout()) { - mergeRunningTimeout(other.getRunningTimeout()); - } - if (other.hasHost()) { - mergeHost(other.getHost()); - } - if (persistentDirectoriesBuilder_ == null) { - if (!other.persistentDirectories_.isEmpty()) { - if (persistentDirectories_.isEmpty()) { - persistentDirectories_ = other.persistentDirectories_; - bitField0_ = (bitField0_ & ~0x00002000); - } else { - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.addAll(other.persistentDirectories_); - } - onChanged(); - } + /** + * + * + *
            +     * Output only. Time when this workstation configuration was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { + bitField0_ |= 0x00000040; + onChanged(); + return internalGetCreateTimeFieldBuilder().getBuilder(); + } + + /** + * + * + *
            +     * Output only. Time when this workstation configuration was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { + if (createTimeBuilder_ != null) { + return createTimeBuilder_.getMessageOrBuilder(); } else { - if (!other.persistentDirectories_.isEmpty()) { - if (persistentDirectoriesBuilder_.isEmpty()) { - persistentDirectoriesBuilder_.dispose(); - persistentDirectoriesBuilder_ = null; - persistentDirectories_ = other.persistentDirectories_; - bitField0_ = (bitField0_ & ~0x00002000); - persistentDirectoriesBuilder_ = - com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders - ? internalGetPersistentDirectoriesFieldBuilder() - : null; - } else { - persistentDirectoriesBuilder_.addAllMessages(other.persistentDirectories_); - } - } - } - if (other.hasContainer()) { - mergeContainer(other.getContainer()); + return createTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : createTime_; } - if (other.hasEncryptionKey()) { - mergeEncryptionKey(other.getEncryptionKey()); + } + + /** + * + * + *
            +     * Output only. Time when this workstation configuration was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetCreateTimeFieldBuilder() { + if (createTimeBuilder_ == null) { + createTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getCreateTime(), getParentForChildren(), isClean()); + createTime_ = null; } - if (readinessChecksBuilder_ == null) { - if (!other.readinessChecks_.isEmpty()) { - if (readinessChecks_.isEmpty()) { - readinessChecks_ = other.readinessChecks_; - bitField0_ = (bitField0_ & ~0x00010000); - } else { - ensureReadinessChecksIsMutable(); - readinessChecks_.addAll(other.readinessChecks_); - } - onChanged(); - } + return createTimeBuilder_; + } + + private com.google.protobuf.Timestamp updateTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + updateTimeBuilder_; + + /** + * + * + *
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the updateTime field is set. + */ + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000080) != 0); + } + + /** + * + * + *
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The updateTime. + */ + public com.google.protobuf.Timestamp getUpdateTime() { + if (updateTimeBuilder_ == null) { + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; } else { - if (!other.readinessChecks_.isEmpty()) { - if (readinessChecksBuilder_.isEmpty()) { - readinessChecksBuilder_.dispose(); - readinessChecksBuilder_ = null; - readinessChecks_ = other.readinessChecks_; - bitField0_ = (bitField0_ & ~0x00010000); - readinessChecksBuilder_ = - com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders - ? internalGetReadinessChecksFieldBuilder() - : null; - } else { - readinessChecksBuilder_.addAllMessages(other.readinessChecks_); - } - } - } - if (!other.replicaZones_.isEmpty()) { - if (replicaZones_.isEmpty()) { - replicaZones_ = other.replicaZones_; - bitField0_ |= 0x00020000; - } else { - ensureReplicaZonesIsMutable(); - replicaZones_.addAll(other.replicaZones_); - } - onChanged(); - } - if (other.getDegraded() != false) { - setDegraded(other.getDegraded()); + return updateTimeBuilder_.getMessage(); } - if (conditionsBuilder_ == null) { - if (!other.conditions_.isEmpty()) { - if (conditions_.isEmpty()) { - conditions_ = other.conditions_; - bitField0_ = (bitField0_ & ~0x00080000); - } else { - ensureConditionsIsMutable(); - conditions_.addAll(other.conditions_); - } - onChanged(); + } + + /** + * + * + *
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + updateTime_ = value; } else { - if (!other.conditions_.isEmpty()) { - if (conditionsBuilder_.isEmpty()) { - conditionsBuilder_.dispose(); - conditionsBuilder_ = null; - conditions_ = other.conditions_; - bitField0_ = (bitField0_ & ~0x00080000); - conditionsBuilder_ = - com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders - ? internalGetConditionsFieldBuilder() - : null; - } else { - conditionsBuilder_.addAllMessages(other.conditions_); - } - } + updateTimeBuilder_.setMessage(value); } - this.mergeUnknownFields(other.getUnknownFields()); + bitField0_ |= 0x00000080; onChanged(); return this; } - @java.lang.Override - public final boolean isInitialized() { - return true; - } - - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); + /** + * + * + *
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (updateTimeBuilder_ == null) { + updateTime_ = builderForValue.build(); + } else { + updateTimeBuilder_.setMessage(builderForValue.build()); } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - name_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - displayName_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 18 - case 26: - { - uid_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000004; - break; - } // case 26 - case 32: - { - reconciling_ = input.readBool(); - bitField0_ |= 0x00000008; - break; - } // case 32 - case 42: - { - com.google.protobuf.MapEntry annotations__ = - input.readMessage( - AnnotationsDefaultEntryHolder.defaultEntry.getParserForType(), - extensionRegistry); - internalGetMutableAnnotations() - .getMutableMap() - .put(annotations__.getKey(), annotations__.getValue()); - bitField0_ |= 0x00000010; - break; - } // case 42 - case 50: - { - input.readMessage( - internalGetCreateTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000040; - break; - } // case 50 - case 58: - { - input.readMessage( - internalGetUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000080; - break; - } // case 58 - case 66: - { - input.readMessage( - internalGetDeleteTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000100; - break; - } // case 66 - case 74: - { - etag_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000200; - break; - } // case 74 - case 82: - { - input.readMessage( - internalGetIdleTimeoutFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000400; - break; - } // case 82 - case 90: - { - input.readMessage( - internalGetRunningTimeoutFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000800; - break; - } // case 90 - case 98: - { - input.readMessage(internalGetHostFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00001000; - break; - } // case 98 - case 106: - { - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory m = - input.readMessage( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .parser(), - extensionRegistry); - if (persistentDirectoriesBuilder_ == null) { - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.add(m); - } else { - persistentDirectoriesBuilder_.addMessage(m); - } - break; - } // case 106 - case 114: - { - input.readMessage( - internalGetContainerFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00004000; - break; - } // case 114 - case 120: - { - degraded_ = input.readBool(); - bitField0_ |= 0x00040000; - break; - } // case 120 - case 130: - { - com.google.rpc.Status m = - input.readMessage(com.google.rpc.Status.parser(), extensionRegistry); - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.add(m); - } else { - conditionsBuilder_.addMessage(m); - } - break; - } // case 130 - case 138: - { - input.readMessage( - internalGetEncryptionKeyFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00008000; - break; - } // case 138 - case 146: - { - com.google.protobuf.MapEntry labels__ = - input.readMessage( - LabelsDefaultEntryHolder.defaultEntry.getParserForType(), - extensionRegistry); - internalGetMutableLabels() - .getMutableMap() - .put(labels__.getKey(), labels__.getValue()); - bitField0_ |= 0x00000020; - break; - } // case 146 - case 154: - { - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck m = - input.readMessage( - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.parser(), - extensionRegistry); - if (readinessChecksBuilder_ == null) { - ensureReadinessChecksIsMutable(); - readinessChecks_.add(m); - } else { - readinessChecksBuilder_.addMessage(m); - } - break; - } // case 154 - case 186: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureReplicaZonesIsMutable(); - replicaZones_.add(s); - break; - } // case 186 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally + bitField0_ |= 0x00000080; + onChanged(); return this; } - private int bitField0_; - - private java.lang.Object name_ = ""; - /** * * *
            -     * Full name of this workstation configuration.
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
                  * 
            * - * string name = 1; - * - * @return The name. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - 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; + public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (((bitField0_ & 0x00000080) != 0) + && updateTime_ != null + && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getUpdateTimeBuilder().mergeFrom(value); + } else { + updateTime_ = value; + } } else { - return (java.lang.String) ref; + updateTimeBuilder_.mergeFrom(value); + } + if (updateTime_ != null) { + bitField0_ |= 0x00000080; + onChanged(); } + return this; } /** * * *
            -     * Full name of this workstation configuration.
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
                  * 
            * - * string name = 1; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearUpdateTime() { + bitField0_ = (bitField0_ & ~0x00000080); + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * * - * @return The bytes for name. + *
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - 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; + public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { + bitField0_ |= 0x00000080; + onChanged(); + return internalGetUpdateTimeFieldBuilder().getBuilder(); + } + + /** + * + * + *
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + if (updateTimeBuilder_ != null) { + return updateTimeBuilder_.getMessageOrBuilder(); } else { - return (com.google.protobuf.ByteString) ref; + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; } } @@ -15171,196 +28770,264 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -     * Full name of this workstation configuration.
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
                  * 
            * - * string name = 1; - * - * @param value The name to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setName(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetUpdateTimeFieldBuilder() { + if (updateTimeBuilder_ == null) { + updateTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getUpdateTime(), getParentForChildren(), isClean()); + updateTime_ = null; } - name_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; + return updateTimeBuilder_; } + private com.google.protobuf.Timestamp deleteTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + deleteTimeBuilder_; + /** * * *
            -     * Full name of this workstation configuration.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * string name = 1; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return This builder for chaining. + * @return Whether the deleteTime field is set. */ - public Builder clearName() { - name_ = getDefaultInstance().getName(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; + public boolean hasDeleteTime() { + return ((bitField0_ & 0x00000100) != 0); } /** * * *
            -     * Full name of this workstation configuration.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * string name = 1; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The bytes for name to set. - * @return This builder for chaining. + * @return The deleteTime. */ - public Builder setNameBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public com.google.protobuf.Timestamp getDeleteTime() { + if (deleteTimeBuilder_ == null) { + return deleteTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : deleteTime_; + } else { + return deleteTimeBuilder_.getMessage(); } - checkByteStringIsUtf8(value); - name_ = value; - bitField0_ |= 0x00000001; + } + + /** + * + * + *
            +     * Output only. Time when this workstation configuration was soft-deleted.
            +     * 
            + * + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setDeleteTime(com.google.protobuf.Timestamp value) { + if (deleteTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deleteTime_ = value; + } else { + deleteTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000100; onChanged(); return this; } - private java.lang.Object displayName_ = ""; - /** * * *
            -     * Optional. Human-readable name for this workstation configuration.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The displayName. + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getDisplayName() { - java.lang.Object ref = displayName_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - displayName_ = s; - return s; + public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (deleteTimeBuilder_ == null) { + deleteTime_ = builderForValue.build(); } else { - return (java.lang.String) ref; + deleteTimeBuilder_.setMessage(builderForValue.build()); } + bitField0_ |= 0x00000100; + onChanged(); + return this; } /** * * *
            -     * Optional. Human-readable name for this workstation configuration.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for displayName. + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getDisplayNameBytes() { - java.lang.Object ref = displayName_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - displayName_ = b; - return b; + public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { + if (deleteTimeBuilder_ == null) { + if (((bitField0_ & 0x00000100) != 0) + && deleteTime_ != null + && deleteTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getDeleteTimeBuilder().mergeFrom(value); + } else { + deleteTime_ = value; + } } else { - return (com.google.protobuf.ByteString) ref; + deleteTimeBuilder_.mergeFrom(value); + } + if (deleteTime_ != null) { + bitField0_ |= 0x00000100; + onChanged(); + } + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation configuration was soft-deleted.
            +     * 
            + * + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearDeleteTime() { + bitField0_ = (bitField0_ & ~0x00000100); + deleteTime_ = null; + if (deleteTimeBuilder_ != null) { + deleteTimeBuilder_.dispose(); + deleteTimeBuilder_ = null; } + onChanged(); + return this; } /** * * *
            -     * Optional. Human-readable name for this workstation configuration.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The displayName to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setDisplayName(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - displayName_ = value; - bitField0_ |= 0x00000002; + public com.google.protobuf.Timestamp.Builder getDeleteTimeBuilder() { + bitField0_ |= 0x00000100; onChanged(); - return this; + return internalGetDeleteTimeFieldBuilder().getBuilder(); } /** * * *
            -     * Optional. Human-readable name for this workstation configuration.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearDisplayName() { - displayName_ = getDefaultInstance().getDisplayName(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - return this; + public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { + if (deleteTimeBuilder_ != null) { + return deleteTimeBuilder_.getMessageOrBuilder(); + } else { + return deleteTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : deleteTime_; + } } /** * * *
            -     * Optional. Human-readable name for this workstation configuration.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for displayName to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetDeleteTimeFieldBuilder() { + if (deleteTimeBuilder_ == null) { + deleteTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getDeleteTime(), getParentForChildren(), isClean()); + deleteTime_ = null; } - checkByteStringIsUtf8(value); - displayName_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; + return deleteTimeBuilder_; } - private java.lang.Object uid_ = ""; + private java.lang.Object etag_ = ""; /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * configuration.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The uid. + * @return The etag. */ - public java.lang.String getUid() { - java.lang.Object ref = uid_; + public java.lang.String getEtag() { + java.lang.Object ref = etag_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); - uid_ = s; + etag_ = s; return s; } else { return (java.lang.String) ref; @@ -15371,20 +29038,21 @@ public java.lang.String getUid() { * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * configuration.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The bytes for uid. + * @return The bytes for etag. */ - public com.google.protobuf.ByteString getUidBytes() { - java.lang.Object ref = uid_; + public com.google.protobuf.ByteString getEtagBytes() { + java.lang.Object ref = etag_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - uid_ = b; + etag_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; @@ -15395,21 +29063,22 @@ public com.google.protobuf.ByteString getUidBytes() { * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * configuration.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The uid to set. + * @param value The etag to set. * @return This builder for chaining. */ - public Builder setUid(java.lang.String value) { + public Builder setEtag(java.lang.String value) { if (value == null) { throw new NullPointerException(); } - uid_ = value; - bitField0_ |= 0x00000004; + etag_ = value; + bitField0_ |= 0x00000200; onChanged(); return this; } @@ -15418,17 +29087,18 @@ public Builder setUid(java.lang.String value) { * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * configuration.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; * * @return This builder for chaining. */ - public Builder clearUid() { - uid_ = getDefaultInstance().getUid(); - bitField0_ = (bitField0_ & ~0x00000004); + public Builder clearEtag() { + etag_ = getDefaultInstance().getEtag(); + bitField0_ = (bitField0_ & ~0x00000200); onChanged(); return this; } @@ -15437,201 +29107,117 @@ public Builder clearUid() { * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * configuration.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The bytes for uid to set. + * @param value The bytes for etag to set. * @return This builder for chaining. */ - public Builder setUidBytes(com.google.protobuf.ByteString value) { + public Builder setEtagBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); - uid_ = value; - bitField0_ |= 0x00000004; - onChanged(); - return this; - } - - private boolean reconciling_; - - /** - * - * - *
            -     * Output only. Indicates whether this workstation configuration is currently
            -     * being updated to match its intended state.
            -     * 
            - * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The reconciling. - */ - @java.lang.Override - public boolean getReconciling() { - return reconciling_; - } - - /** - * - * - *
            -     * Output only. Indicates whether this workstation configuration is currently
            -     * being updated to match its intended state.
            -     * 
            - * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The reconciling to set. - * @return This builder for chaining. - */ - public Builder setReconciling(boolean value) { - - reconciling_ = value; - bitField0_ |= 0x00000008; - onChanged(); - return this; - } - - /** - * - * - *
            -     * Output only. Indicates whether this workstation configuration is currently
            -     * being updated to match its intended state.
            -     * 
            - * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. - */ - public Builder clearReconciling() { - bitField0_ = (bitField0_ & ~0x00000008); - reconciling_ = false; + etag_ = value; + bitField0_ |= 0x00000200; onChanged(); return this; } - private com.google.protobuf.MapField annotations_; - - private com.google.protobuf.MapField - internalGetAnnotations() { - if (annotations_ == null) { - return com.google.protobuf.MapField.emptyMapField( - AnnotationsDefaultEntryHolder.defaultEntry); - } - return annotations_; - } - - private com.google.protobuf.MapField - internalGetMutableAnnotations() { - if (annotations_ == null) { - annotations_ = - com.google.protobuf.MapField.newMapField(AnnotationsDefaultEntryHolder.defaultEntry); - } - if (!annotations_.isMutable()) { - annotations_ = annotations_.copy(); - } - bitField0_ |= 0x00000010; - onChanged(); - return annotations_; - } - - public int getAnnotationsCount() { - return internalGetAnnotations().getMap().size(); - } - - /** - * - * - *
            -     * Optional. Client-specified annotations.
            -     * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public boolean containsAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - return internalGetAnnotations().getMap().containsKey(key); - } - - /** Use {@link #getAnnotationsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getAnnotations() { - return getAnnotationsMap(); - } + private com.google.protobuf.Duration idleTimeout_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + idleTimeoutBuilder_; /** * * *
            -     * Optional. Client-specified annotations.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return Whether the idleTimeout field is set. */ - @java.lang.Override - public java.util.Map getAnnotationsMap() { - return internalGetAnnotations().getMap(); + public boolean hasIdleTimeout() { + return ((bitField0_ & 0x00000400) != 0); } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The idleTimeout. */ - @java.lang.Override - public /* nullable */ java.lang.String getAnnotationsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public com.google.protobuf.Duration getIdleTimeout() { + if (idleTimeoutBuilder_ == null) { + return idleTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : idleTimeout_; + } else { + return idleTimeoutBuilder_.getMessage(); } - java.util.Map map = internalGetAnnotations().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; * */ - @java.lang.Override - public java.lang.String getAnnotationsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetAnnotations().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + public Builder setIdleTimeout(com.google.protobuf.Duration value) { + if (idleTimeoutBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + idleTimeout_ = value; + } else { + idleTimeoutBuilder_.setMessage(value); } - return map.get(key); - } - - public Builder clearAnnotations() { - bitField0_ = (bitField0_ & ~0x00000010); - internalGetMutableAnnotations().getMutableMap().clear(); + bitField0_ |= 0x00000400; + onChanged(); return this; } @@ -15639,46 +29225,65 @@ public Builder clearAnnotations() { * * *
            -     * Optional. Client-specified annotations.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder removeAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder setIdleTimeout(com.google.protobuf.Duration.Builder builderForValue) { + if (idleTimeoutBuilder_ == null) { + idleTimeout_ = builderForValue.build(); + } else { + idleTimeoutBuilder_.setMessage(builderForValue.build()); } - internalGetMutableAnnotations().getMutableMap().remove(key); + bitField0_ |= 0x00000400; + onChanged(); return this; } - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableAnnotations() { - bitField0_ |= 0x00000010; - return internalGetMutableAnnotations().getMutableMap(); - } - /** * * *
            -     * Optional. Client-specified annotations.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder putAnnotations(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder mergeIdleTimeout(com.google.protobuf.Duration value) { + if (idleTimeoutBuilder_ == null) { + if (((bitField0_ & 0x00000400) != 0) + && idleTimeout_ != null + && idleTimeout_ != com.google.protobuf.Duration.getDefaultInstance()) { + getIdleTimeoutBuilder().mergeFrom(value); + } else { + idleTimeout_ = value; + } + } else { + idleTimeoutBuilder_.mergeFrom(value); } - if (value == null) { - throw new NullPointerException("map value"); + if (idleTimeout_ != null) { + bitField0_ |= 0x00000400; + onChanged(); } - internalGetMutableAnnotations().getMutableMap().put(key, value); - bitField0_ |= 0x00000010; return this; } @@ -15686,279 +29291,386 @@ public Builder putAnnotations(java.lang.String key, java.lang.String value) { * * *
            -     * Optional. Client-specified annotations.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder putAllAnnotations(java.util.Map values) { - internalGetMutableAnnotations().getMutableMap().putAll(values); - bitField0_ |= 0x00000010; - return this; - } - - private com.google.protobuf.MapField labels_; - - private com.google.protobuf.MapField internalGetLabels() { - if (labels_ == null) { - return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); - } - return labels_; - } - - private com.google.protobuf.MapField - internalGetMutableLabels() { - if (labels_ == null) { - labels_ = com.google.protobuf.MapField.newMapField(LabelsDefaultEntryHolder.defaultEntry); - } - if (!labels_.isMutable()) { - labels_ = labels_.copy(); + public Builder clearIdleTimeout() { + bitField0_ = (bitField0_ & ~0x00000400); + idleTimeout_ = null; + if (idleTimeoutBuilder_ != null) { + idleTimeoutBuilder_.dispose(); + idleTimeoutBuilder_ = null; } - bitField0_ |= 0x00000020; onChanged(); - return labels_; - } - - public int getLabelsCount() { - return internalGetLabels().getMap().size(); + return this; } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation configuration and that are also propagated
            -     * to the underlying Compute Engine resources.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * */ - @java.lang.Override - public boolean containsLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - return internalGetLabels().getMap().containsKey(key); - } - - /** Use {@link #getLabelsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getLabels() { - return getLabelsMap(); + public com.google.protobuf.Duration.Builder getIdleTimeoutBuilder() { + bitField0_ |= 0x00000400; + onChanged(); + return internalGetIdleTimeoutFieldBuilder().getBuilder(); } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation configuration and that are also propagated
            -     * to the underlying Compute Engine resources.
            -     * 
            - * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.util.Map getLabelsMap() { - return internalGetLabels().getMap(); - } - - /** - * + * Optional. Number of seconds to wait before automatically stopping a + * workstation after it last received user traffic. * - *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation configuration and that are also propagated
            -     * to the underlying Compute Engine resources.
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * */ - @java.lang.Override - public /* nullable */ java.lang.String getLabelsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder() { + if (idleTimeoutBuilder_ != null) { + return idleTimeoutBuilder_.getMessageOrBuilder(); + } else { + return idleTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : idleTimeout_; } - java.util.Map map = internalGetLabels().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation configuration and that are also propagated
            -     * to the underlying Compute Engine resources.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * */ - @java.lang.Override - public java.lang.String getLabelsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetLabels().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + internalGetIdleTimeoutFieldBuilder() { + if (idleTimeoutBuilder_ == null) { + idleTimeoutBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder>( + getIdleTimeout(), getParentForChildren(), isClean()); + idleTimeout_ = null; } - return map.get(key); + return idleTimeoutBuilder_; } - public Builder clearLabels() { - bitField0_ = (bitField0_ & ~0x00000020); - internalGetMutableLabels().getMutableMap().clear(); - return this; - } + private com.google.protobuf.Duration runningTimeout_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + runningTimeoutBuilder_; /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation configuration and that are also propagated
            -     * to the underlying Compute Engine resources.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the runningTimeout field is set. */ - public Builder removeLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - internalGetMutableLabels().getMutableMap().remove(key); - return this; - } - - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableLabels() { - bitField0_ |= 0x00000020; - return internalGetMutableLabels().getMutableMap(); + public boolean hasRunningTimeout() { + return ((bitField0_ & 0x00000800) != 0); } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation configuration and that are also propagated
            -     * to the underlying Compute Engine resources.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The runningTimeout. */ - public Builder putLabels(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); - } - if (value == null) { - throw new NullPointerException("map value"); + public com.google.protobuf.Duration getRunningTimeout() { + if (runningTimeoutBuilder_ == null) { + return runningTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : runningTimeout_; + } else { + return runningTimeoutBuilder_.getMessage(); } - internalGetMutableLabels().getMutableMap().put(key, value); - bitField0_ |= 0x00000020; - return this; } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation configuration and that are also propagated
            -     * to the underlying Compute Engine resources.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder putAllLabels(java.util.Map values) { - internalGetMutableLabels().getMutableMap().putAll(values); - bitField0_ |= 0x00000020; + public Builder setRunningTimeout(com.google.protobuf.Duration value) { + if (runningTimeoutBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + runningTimeout_ = value; + } else { + runningTimeoutBuilder_.setMessage(value); + } + bitField0_ |= 0x00000800; + onChanged(); return this; } - private com.google.protobuf.Timestamp createTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - createTimeBuilder_; - /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the createTime field is set. */ - public boolean hasCreateTime() { - return ((bitField0_ & 0x00000040) != 0); + public Builder setRunningTimeout(com.google.protobuf.Duration.Builder builderForValue) { + if (runningTimeoutBuilder_ == null) { + runningTimeout_ = builderForValue.build(); + } else { + runningTimeoutBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000800; + onChanged(); + return this; } /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The createTime. */ - public com.google.protobuf.Timestamp getCreateTime() { - if (createTimeBuilder_ == null) { - return createTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : createTime_; + public Builder mergeRunningTimeout(com.google.protobuf.Duration value) { + if (runningTimeoutBuilder_ == null) { + if (((bitField0_ & 0x00000800) != 0) + && runningTimeout_ != null + && runningTimeout_ != com.google.protobuf.Duration.getDefaultInstance()) { + getRunningTimeoutBuilder().mergeFrom(value); + } else { + runningTimeout_ = value; + } } else { - return createTimeBuilder_.getMessage(); + runningTimeoutBuilder_.mergeFrom(value); + } + if (runningTimeout_ != null) { + bitField0_ |= 0x00000800; + onChanged(); } + return this; } /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setCreateTime(com.google.protobuf.Timestamp value) { - if (createTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - createTime_ = value; - } else { - createTimeBuilder_.setMessage(value); + public Builder clearRunningTimeout() { + bitField0_ = (bitField0_ & ~0x00000800); + runningTimeout_ = null; + if (runningTimeoutBuilder_ != null) { + runningTimeoutBuilder_.dispose(); + runningTimeoutBuilder_ = null; } - bitField0_ |= 0x00000040; onChanged(); return this; } @@ -15967,188 +29679,270 @@ public Builder setCreateTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (createTimeBuilder_ == null) { - createTime_ = builderForValue.build(); - } else { - createTimeBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000040; + public com.google.protobuf.Duration.Builder getRunningTimeoutBuilder() { + bitField0_ |= 0x00000800; onChanged(); - return this; + return internalGetRunningTimeoutFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { - if (createTimeBuilder_ == null) { - if (((bitField0_ & 0x00000040) != 0) - && createTime_ != null - && createTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getCreateTimeBuilder().mergeFrom(value); - } else { - createTime_ = value; - } + public com.google.protobuf.DurationOrBuilder getRunningTimeoutOrBuilder() { + if (runningTimeoutBuilder_ != null) { + return runningTimeoutBuilder_.getMessageOrBuilder(); } else { - createTimeBuilder_.mergeFrom(value); - } - if (createTime_ != null) { - bitField0_ |= 0x00000040; - onChanged(); + return runningTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : runningTimeout_; } - return this; } /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearCreateTime() { - bitField0_ = (bitField0_ & ~0x00000040); - createTime_ = null; - if (createTimeBuilder_ != null) { - createTimeBuilder_.dispose(); - createTimeBuilder_ = null; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + internalGetRunningTimeoutFieldBuilder() { + if (runningTimeoutBuilder_ == null) { + runningTimeoutBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder>( + getRunningTimeout(), getParentForChildren(), isClean()); + runningTimeout_ = null; } - onChanged(); - return this; + return runningTimeoutBuilder_; } + private int maxUsableWorkstations_; + /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Maximum number of workstations under this configuration a user
            +     * can have `workstations.workstation.use` permission on.
            +     *
            +     * Only enforced on CreateWorkstation API calls on the user issuing the API
            +     * request. Can be overridden by:
            +     *
            +     * - granting a user
            +     * workstations.workstationConfigs.exemptMaxUsableWorkstationLimit permission,
            +     * or
            +     * - having a user with that permission create a workstation and
            +     * granting another user `workstations.workstation.use` permission on
            +     * that workstation.
            +     *
            +     * If not specified, defaults to `0`, which indicates unlimited.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * int32 max_usable_workstations = 28 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxUsableWorkstations. */ - public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { - bitField0_ |= 0x00000040; - onChanged(); - return internalGetCreateTimeFieldBuilder().getBuilder(); + @java.lang.Override + public int getMaxUsableWorkstations() { + return maxUsableWorkstations_; } /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Maximum number of workstations under this configuration a user
            +     * can have `workstations.workstation.use` permission on.
            +     *
            +     * Only enforced on CreateWorkstation API calls on the user issuing the API
            +     * request. Can be overridden by:
            +     *
            +     * - granting a user
            +     * workstations.workstationConfigs.exemptMaxUsableWorkstationLimit permission,
            +     * or
            +     * - having a user with that permission create a workstation and
            +     * granting another user `workstations.workstation.use` permission on
            +     * that workstation.
            +     *
            +     * If not specified, defaults to `0`, which indicates unlimited.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { - if (createTimeBuilder_ != null) { - return createTimeBuilder_.getMessageOrBuilder(); - } else { - return createTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : createTime_; - } + * int32 max_usable_workstations = 28 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The maxUsableWorkstations to set. + * @return This builder for chaining. + */ + public Builder setMaxUsableWorkstations(int value) { + + maxUsableWorkstations_ = value; + bitField0_ |= 0x00001000; + onChanged(); + return this; } /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Maximum number of workstations under this configuration a user
            +     * can have `workstations.workstation.use` permission on.
            +     *
            +     * Only enforced on CreateWorkstation API calls on the user issuing the API
            +     * request. Can be overridden by:
            +     *
            +     * - granting a user
            +     * workstations.workstationConfigs.exemptMaxUsableWorkstationLimit permission,
            +     * or
            +     * - having a user with that permission create a workstation and
            +     * granting another user `workstations.workstation.use` permission on
            +     * that workstation.
            +     *
            +     * If not specified, defaults to `0`, which indicates unlimited.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * int32 max_usable_workstations = 28 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetCreateTimeFieldBuilder() { - if (createTimeBuilder_ == null) { - createTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getCreateTime(), getParentForChildren(), isClean()); - createTime_ = null; - } - return createTimeBuilder_; + public Builder clearMaxUsableWorkstations() { + bitField0_ = (bitField0_ & ~0x00001000); + maxUsableWorkstations_ = 0; + onChanged(); + return this; } - private com.google.protobuf.Timestamp updateTime_; + private com.google.cloud.workstations.v1.WorkstationConfig.Host host_; private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - updateTimeBuilder_; + com.google.cloud.workstations.v1.WorkstationConfig.Host, + com.google.cloud.workstations.v1.WorkstationConfig.Host.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.HostOrBuilder> + hostBuilder_; /** * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return Whether the updateTime field is set. + * @return Whether the host field is set. */ - public boolean hasUpdateTime() { - return ((bitField0_ & 0x00000080) != 0); + public boolean hasHost() { + return ((bitField0_ & 0x00002000) != 0); } /** * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return The updateTime. + * @return The host. */ - public com.google.protobuf.Timestamp getUpdateTime() { - if (updateTimeBuilder_ == null) { - return updateTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : updateTime_; + public com.google.cloud.workstations.v1.WorkstationConfig.Host getHost() { + if (hostBuilder_ == null) { + return host_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Host.getDefaultInstance() + : host_; } else { - return updateTimeBuilder_.getMessage(); + return hostBuilder_.getMessage(); } } @@ -16156,24 +29950,23 @@ public com.google.protobuf.Timestamp getUpdateTime() { * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setUpdateTime(com.google.protobuf.Timestamp value) { - if (updateTimeBuilder_ == null) { + public Builder setHost(com.google.cloud.workstations.v1.WorkstationConfig.Host value) { + if (hostBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - updateTime_ = value; + host_ = value; } else { - updateTimeBuilder_.setMessage(value); + hostBuilder_.setMessage(value); } - bitField0_ |= 0x00000080; + bitField0_ |= 0x00002000; onChanged(); return this; } @@ -16182,21 +29975,21 @@ public Builder setUpdateTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (updateTimeBuilder_ == null) { - updateTime_ = builderForValue.build(); + public Builder setHost( + com.google.cloud.workstations.v1.WorkstationConfig.Host.Builder builderForValue) { + if (hostBuilder_ == null) { + host_ = builderForValue.build(); } else { - updateTimeBuilder_.setMessage(builderForValue.build()); + hostBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00000080; + bitField0_ |= 0x00002000; onChanged(); return this; } @@ -16205,28 +29998,28 @@ public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForVal * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { - if (updateTimeBuilder_ == null) { - if (((bitField0_ & 0x00000080) != 0) - && updateTime_ != null - && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getUpdateTimeBuilder().mergeFrom(value); + public Builder mergeHost(com.google.cloud.workstations.v1.WorkstationConfig.Host value) { + if (hostBuilder_ == null) { + if (((bitField0_ & 0x00002000) != 0) + && host_ != null + && host_ + != com.google.cloud.workstations.v1.WorkstationConfig.Host.getDefaultInstance()) { + getHostBuilder().mergeFrom(value); } else { - updateTime_ = value; + host_ = value; } } else { - updateTimeBuilder_.mergeFrom(value); + hostBuilder_.mergeFrom(value); } - if (updateTime_ != null) { - bitField0_ |= 0x00000080; + if (host_ != null) { + bitField0_ |= 0x00002000; onChanged(); } return this; @@ -16236,20 +30029,19 @@ public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearUpdateTime() { - bitField0_ = (bitField0_ & ~0x00000080); - updateTime_ = null; - if (updateTimeBuilder_ != null) { - updateTimeBuilder_.dispose(); - updateTimeBuilder_ = null; + public Builder clearHost() { + bitField0_ = (bitField0_ & ~0x00002000); + host_ = null; + if (hostBuilder_ != null) { + hostBuilder_.dispose(); + hostBuilder_ = null; } onChanged(); return this; @@ -16259,39 +30051,37 @@ public Builder clearUpdateTime() { * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { - bitField0_ |= 0x00000080; + public com.google.cloud.workstations.v1.WorkstationConfig.Host.Builder getHostBuilder() { + bitField0_ |= 0x00002000; onChanged(); - return internalGetUpdateTimeFieldBuilder().getBuilder(); + return internalGetHostFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { - if (updateTimeBuilder_ != null) { - return updateTimeBuilder_.getMessageOrBuilder(); + public com.google.cloud.workstations.v1.WorkstationConfig.HostOrBuilder getHostOrBuilder() { + if (hostBuilder_ != null) { + return hostBuilder_.getMessageOrBuilder(); } else { - return updateTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : updateTime_; + return host_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Host.getDefaultInstance() + : host_; } } @@ -16299,174 +30089,131 @@ public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetUpdateTimeFieldBuilder() { - if (updateTimeBuilder_ == null) { - updateTimeBuilder_ = + com.google.cloud.workstations.v1.WorkstationConfig.Host, + com.google.cloud.workstations.v1.WorkstationConfig.Host.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.HostOrBuilder> + internalGetHostFieldBuilder() { + if (hostBuilder_ == null) { + hostBuilder_ = new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getUpdateTime(), getParentForChildren(), isClean()); - updateTime_ = null; + com.google.cloud.workstations.v1.WorkstationConfig.Host, + com.google.cloud.workstations.v1.WorkstationConfig.Host.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.HostOrBuilder>( + getHost(), getParentForChildren(), isClean()); + host_ = null; } - return updateTimeBuilder_; + return hostBuilder_; } - private com.google.protobuf.Timestamp deleteTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - deleteTimeBuilder_; - - /** - * - * - *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            -     * 
            - * - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the deleteTime field is set. - */ - public boolean hasDeleteTime() { - return ((bitField0_ & 0x00000100) != 0); - } + private java.util.List + persistentDirectories_ = java.util.Collections.emptyList(); - /** - * - * - *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            -     * 
            - * - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The deleteTime. - */ - public com.google.protobuf.Timestamp getDeleteTime() { - if (deleteTimeBuilder_ == null) { - return deleteTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : deleteTime_; - } else { - return deleteTimeBuilder_.getMessage(); + private void ensurePersistentDirectoriesIsMutable() { + if (!((bitField0_ & 0x00004000) != 0)) { + persistentDirectories_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory>( + persistentDirectories_); + bitField0_ |= 0x00004000; } } + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder> + persistentDirectoriesBuilder_; + /** * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setDeleteTime(com.google.protobuf.Timestamp value) { - if (deleteTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - deleteTime_ = value; + public java.util.List + getPersistentDirectoriesList() { + if (persistentDirectoriesBuilder_ == null) { + return java.util.Collections.unmodifiableList(persistentDirectories_); } else { - deleteTimeBuilder_.setMessage(value); + return persistentDirectoriesBuilder_.getMessageList(); } - bitField0_ |= 0x00000100; - onChanged(); - return this; } /** * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (deleteTimeBuilder_ == null) { - deleteTime_ = builderForValue.build(); + public int getPersistentDirectoriesCount() { + if (persistentDirectoriesBuilder_ == null) { + return persistentDirectories_.size(); } else { - deleteTimeBuilder_.setMessage(builderForValue.build()); + return persistentDirectoriesBuilder_.getCount(); } - bitField0_ |= 0x00000100; - onChanged(); - return this; } /** * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { - if (deleteTimeBuilder_ == null) { - if (((bitField0_ & 0x00000100) != 0) - && deleteTime_ != null - && deleteTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getDeleteTimeBuilder().mergeFrom(value); - } else { - deleteTime_ = value; - } + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + getPersistentDirectories(int index) { + if (persistentDirectoriesBuilder_ == null) { + return persistentDirectories_.get(index); } else { - deleteTimeBuilder_.mergeFrom(value); - } - if (deleteTime_ != null) { - bitField0_ |= 0x00000100; - onChanged(); + return persistentDirectoriesBuilder_.getMessage(index); } - return this; } /** * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearDeleteTime() { - bitField0_ = (bitField0_ & ~0x00000100); - deleteTime_ = null; - if (deleteTimeBuilder_ != null) { - deleteTimeBuilder_.dispose(); - deleteTimeBuilder_ = null; + public Builder setPersistentDirectories( + int index, com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory value) { + if (persistentDirectoriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.set(index, value); + onChanged(); + } else { + persistentDirectoriesBuilder_.setMessage(index, value); } - onChanged(); return this; } @@ -16474,141 +30221,150 @@ public Builder clearDeleteTime() { * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.Timestamp.Builder getDeleteTimeBuilder() { - bitField0_ |= 0x00000100; - onChanged(); - return internalGetDeleteTimeFieldBuilder().getBuilder(); + public Builder setPersistentDirectories( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder + builderForValue) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.set(index, builderForValue.build()); + onChanged(); + } else { + persistentDirectoriesBuilder_.setMessage(index, builderForValue.build()); + } + return this; } /** * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { - if (deleteTimeBuilder_ != null) { - return deleteTimeBuilder_.getMessageOrBuilder(); + public Builder addPersistentDirectories( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory value) { + if (persistentDirectoriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(value); + onChanged(); } else { - return deleteTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : deleteTime_; + persistentDirectoriesBuilder_.addMessage(value); } + return this; } /** * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetDeleteTimeFieldBuilder() { - if (deleteTimeBuilder_ == null) { - deleteTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getDeleteTime(), getParentForChildren(), isClean()); - deleteTime_ = null; + public Builder addPersistentDirectories( + int index, com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory value) { + if (persistentDirectoriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(index, value); + onChanged(); + } else { + persistentDirectoriesBuilder_.addMessage(index, value); } - return deleteTimeBuilder_; + return this; } - private java.lang.Object etag_ = ""; - /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The etag. + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public java.lang.String getEtag() { - java.lang.Object ref = etag_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - etag_ = s; - return s; + public Builder addPersistentDirectories( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder + builderForValue) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(builderForValue.build()); + onChanged(); } else { - return (java.lang.String) ref; + persistentDirectoriesBuilder_.addMessage(builderForValue.build()); } + return this; } /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for etag. + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public com.google.protobuf.ByteString getEtagBytes() { - java.lang.Object ref = etag_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - etag_ = b; - return b; + public Builder addPersistentDirectories( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder + builderForValue) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(index, builderForValue.build()); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + persistentDirectoriesBuilder_.addMessage(index, builderForValue.build()); } + return this; } /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The etag to set. - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setEtag(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder addAllPersistentDirectories( + java.lang.Iterable< + ? extends com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory> + values) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, persistentDirectories_); + onChanged(); + } else { + persistentDirectoriesBuilder_.addAllMessages(values); } - etag_ = value; - bitField0_ |= 0x00000200; - onChanged(); return this; } @@ -16616,19 +30372,21 @@ public Builder setEtag(java.lang.String value) { * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder clearEtag() { - etag_ = getDefaultInstance().getEtag(); - bitField0_ = (bitField0_ & ~0x00000200); - onChanged(); + public Builder clearPersistentDirectories() { + if (persistentDirectoriesBuilder_ == null) { + persistentDirectories_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00004000); + onChanged(); + } else { + persistentDirectoriesBuilder_.clear(); + } return this; } @@ -16636,85 +30394,57 @@ public Builder clearEtag() { * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for etag to set. - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setEtagBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder removePersistentDirectories(int index) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.remove(index); + onChanged(); + } else { + persistentDirectoriesBuilder_.remove(index); } - checkByteStringIsUtf8(value); - etag_ = value; - bitField0_ |= 0x00000200; - onChanged(); return this; } - private com.google.protobuf.Duration idleTimeout_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Duration, - com.google.protobuf.Duration.Builder, - com.google.protobuf.DurationOrBuilder> - idleTimeoutBuilder_; - /** * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the idleTimeout field is set. */ - public boolean hasIdleTimeout() { - return ((bitField0_ & 0x00000400) != 0); + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder + getPersistentDirectoriesBuilder(int index) { + return internalGetPersistentDirectoriesFieldBuilder().getBuilder(index); } /** * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The idleTimeout. */ - public com.google.protobuf.Duration getIdleTimeout() { - if (idleTimeoutBuilder_ == null) { - return idleTimeout_ == null - ? com.google.protobuf.Duration.getDefaultInstance() - : idleTimeout_; + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder + getPersistentDirectoriesOrBuilder(int index) { + if (persistentDirectoriesBuilder_ == null) { + return persistentDirectories_.get(index); } else { - return idleTimeoutBuilder_.getMessage(); + return persistentDirectoriesBuilder_.getMessageOrBuilder(index); } } @@ -16722,178 +30452,178 @@ public com.google.protobuf.Duration getIdleTimeout() { * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setIdleTimeout(com.google.protobuf.Duration value) { - if (idleTimeoutBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - idleTimeout_ = value; + public java.util.List< + ? extends + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder> + getPersistentDirectoriesOrBuilderList() { + if (persistentDirectoriesBuilder_ != null) { + return persistentDirectoriesBuilder_.getMessageOrBuilderList(); } else { - idleTimeoutBuilder_.setMessage(value); + return java.util.Collections.unmodifiableList(persistentDirectories_); } - bitField0_ |= 0x00000400; - onChanged(); - return this; } /** * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setIdleTimeout(com.google.protobuf.Duration.Builder builderForValue) { - if (idleTimeoutBuilder_ == null) { - idleTimeout_ = builderForValue.build(); - } else { - idleTimeoutBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000400; - onChanged(); - return this; + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder + addPersistentDirectoriesBuilder() { + return internalGetPersistentDirectoriesFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .getDefaultInstance()); } /** * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeIdleTimeout(com.google.protobuf.Duration value) { - if (idleTimeoutBuilder_ == null) { - if (((bitField0_ & 0x00000400) != 0) - && idleTimeout_ != null - && idleTimeout_ != com.google.protobuf.Duration.getDefaultInstance()) { - getIdleTimeoutBuilder().mergeFrom(value); - } else { - idleTimeout_ = value; - } - } else { - idleTimeoutBuilder_.mergeFrom(value); - } - if (idleTimeout_ != null) { - bitField0_ |= 0x00000400; - onChanged(); - } - return this; + public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder + addPersistentDirectoriesBuilder(int index) { + return internalGetPersistentDirectoriesFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory + .getDefaultInstance()); } /** * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearIdleTimeout() { - bitField0_ = (bitField0_ & ~0x00000400); - idleTimeout_ = null; - if (idleTimeoutBuilder_ != null) { - idleTimeoutBuilder_.dispose(); - idleTimeoutBuilder_ = null; + public java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder> + getPersistentDirectoriesBuilderList() { + return internalGetPersistentDirectoriesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder> + internalGetPersistentDirectoriesFieldBuilder() { + if (persistentDirectoriesBuilder_ == null) { + persistentDirectoriesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder>( + persistentDirectories_, + ((bitField0_ & 0x00004000) != 0), + getParentForChildren(), + isClean()); + persistentDirectories_ = null; + } + return persistentDirectoriesBuilder_; + } + + private java.util.List + ephemeralDirectories_ = java.util.Collections.emptyList(); + + private void ensureEphemeralDirectoriesIsMutable() { + if (!((bitField0_ & 0x00008000) != 0)) { + ephemeralDirectories_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory>( + ephemeralDirectories_); + bitField0_ |= 0x00008000; } - onChanged(); - return this; } + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectoryOrBuilder> + ephemeralDirectoriesBuilder_; + /** * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.Duration.Builder getIdleTimeoutBuilder() { - bitField0_ |= 0x00000400; - onChanged(); - return internalGetIdleTimeoutFieldBuilder().getBuilder(); + public java.util.List + getEphemeralDirectoriesList() { + if (ephemeralDirectoriesBuilder_ == null) { + return java.util.Collections.unmodifiableList(ephemeralDirectories_); + } else { + return ephemeralDirectoriesBuilder_.getMessageList(); + } } /** * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
            +     * 
            * - * A value of `"0s"` indicates that Cloud Workstations VMs created with this - * configuration should never time out due to idleness. - * Provide - * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration) - * terminated by `s` for seconds—for example, `"7200s"` (2 hours). - * The default is `"1200s"` (20 minutes). + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public int getEphemeralDirectoriesCount() { + if (ephemeralDirectoriesBuilder_ == null) { + return ephemeralDirectories_.size(); + } else { + return ephemeralDirectoriesBuilder_.getCount(); + } + } + + /** + * + * + *
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder() { - if (idleTimeoutBuilder_ != null) { - return idleTimeoutBuilder_.getMessageOrBuilder(); + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + getEphemeralDirectories(int index) { + if (ephemeralDirectoriesBuilder_ == null) { + return ephemeralDirectories_.get(index); } else { - return idleTimeout_ == null - ? com.google.protobuf.Duration.getDefaultInstance() - : idleTimeout_; + return ephemeralDirectoriesBuilder_.getMessage(index); } } @@ -16901,169 +30631,106 @@ public com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder() { * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Duration, - com.google.protobuf.Duration.Builder, - com.google.protobuf.DurationOrBuilder> - internalGetIdleTimeoutFieldBuilder() { - if (idleTimeoutBuilder_ == null) { - idleTimeoutBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Duration, - com.google.protobuf.Duration.Builder, - com.google.protobuf.DurationOrBuilder>( - getIdleTimeout(), getParentForChildren(), isClean()); - idleTimeout_ = null; + public Builder setEphemeralDirectories( + int index, com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory value) { + if (ephemeralDirectoriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.set(index, value); + onChanged(); + } else { + ephemeralDirectoriesBuilder_.setMessage(index, value); } - return idleTimeoutBuilder_; + return this; } - private com.google.protobuf.Duration runningTimeout_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Duration, - com.google.protobuf.Duration.Builder, - com.google.protobuf.DurationOrBuilder> - runningTimeoutBuilder_; - /** * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the runningTimeout field is set. */ - public boolean hasRunningTimeout() { - return ((bitField0_ & 0x00000800) != 0); + public Builder setEphemeralDirectories( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.Builder + builderForValue) { + if (ephemeralDirectoriesBuilder_ == null) { + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.set(index, builderForValue.build()); + onChanged(); + } else { + ephemeralDirectoriesBuilder_.setMessage(index, builderForValue.build()); + } + return this; } /** * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The runningTimeout. */ - public com.google.protobuf.Duration getRunningTimeout() { - if (runningTimeoutBuilder_ == null) { - return runningTimeout_ == null - ? com.google.protobuf.Duration.getDefaultInstance() - : runningTimeout_; + public Builder addEphemeralDirectories( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory value) { + if (ephemeralDirectoriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.add(value); + onChanged(); } else { - return runningTimeoutBuilder_.getMessage(); + ephemeralDirectoriesBuilder_.addMessage(value); } + return this; } /** * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setRunningTimeout(com.google.protobuf.Duration value) { - if (runningTimeoutBuilder_ == null) { + public Builder addEphemeralDirectories( + int index, com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory value) { + if (ephemeralDirectoriesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - runningTimeout_ = value; + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.add(index, value); + onChanged(); } else { - runningTimeoutBuilder_.setMessage(value); + ephemeralDirectoriesBuilder_.addMessage(index, value); } - bitField0_ |= 0x00000800; - onChanged(); return this; } @@ -17071,42 +30738,24 @@ public Builder setRunningTimeout(com.google.protobuf.Duration value) { * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setRunningTimeout(com.google.protobuf.Duration.Builder builderForValue) { - if (runningTimeoutBuilder_ == null) { - runningTimeout_ = builderForValue.build(); + public Builder addEphemeralDirectories( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.Builder + builderForValue) { + if (ephemeralDirectoriesBuilder_ == null) { + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.add(builderForValue.build()); + onChanged(); } else { - runningTimeoutBuilder_.setMessage(builderForValue.build()); + ephemeralDirectoriesBuilder_.addMessage(builderForValue.build()); } - bitField0_ |= 0x00000800; - onChanged(); return this; } @@ -17114,49 +30763,24 @@ public Builder setRunningTimeout(com.google.protobuf.Duration.Builder builderFor * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeRunningTimeout(com.google.protobuf.Duration value) { - if (runningTimeoutBuilder_ == null) { - if (((bitField0_ & 0x00000800) != 0) - && runningTimeout_ != null - && runningTimeout_ != com.google.protobuf.Duration.getDefaultInstance()) { - getRunningTimeoutBuilder().mergeFrom(value); - } else { - runningTimeout_ = value; - } - } else { - runningTimeoutBuilder_.mergeFrom(value); - } - if (runningTimeout_ != null) { - bitField0_ |= 0x00000800; + public Builder addEphemeralDirectories( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.Builder + builderForValue) { + if (ephemeralDirectoriesBuilder_ == null) { + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.add(index, builderForValue.build()); onChanged(); + } else { + ephemeralDirectoriesBuilder_.addMessage(index, builderForValue.build()); } return this; } @@ -17165,42 +30789,48 @@ public Builder mergeRunningTimeout(com.google.protobuf.Duration value) { * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
            +     * 
            * - * Provide duration terminated by `s` for seconds—for example, `"54000s"` - * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates - * that workstations using this configuration should never time out. If - * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key] - * is set, it must be greater than `"0s"` and less than - * `"86400s"` (24 hours). + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllEphemeralDirectories( + java.lang.Iterable< + ? extends com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory> + values) { + if (ephemeralDirectoriesBuilder_ == null) { + ensureEphemeralDirectoriesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, ephemeralDirectories_); + onChanged(); + } else { + ephemeralDirectoriesBuilder_.addAllMessages(values); + } + return this; + } + + /** * - * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created - * with this configuration have no maximum running time. This is strongly - * discouraged because you incur costs and will not pick up security updates. + * + *
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearRunningTimeout() { - bitField0_ = (bitField0_ & ~0x00000800); - runningTimeout_ = null; - if (runningTimeoutBuilder_ != null) { - runningTimeoutBuilder_.dispose(); - runningTimeoutBuilder_ = null; + public Builder clearEphemeralDirectories() { + if (ephemeralDirectoriesBuilder_ == null) { + ephemeralDirectories_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00008000); + onChanged(); + } else { + ephemeralDirectoriesBuilder_.clear(); } - onChanged(); return this; } @@ -17208,420 +30838,361 @@ public Builder clearRunningTimeout() { * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.Duration.Builder getRunningTimeoutBuilder() { - bitField0_ |= 0x00000800; - onChanged(); - return internalGetRunningTimeoutFieldBuilder().getBuilder(); + public Builder removeEphemeralDirectories(int index) { + if (ephemeralDirectoriesBuilder_ == null) { + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.remove(index); + onChanged(); + } else { + ephemeralDirectoriesBuilder_.remove(index); + } + return this; } /** * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.DurationOrBuilder getRunningTimeoutOrBuilder() { - if (runningTimeoutBuilder_ != null) { - return runningTimeoutBuilder_.getMessageOrBuilder(); - } else { - return runningTimeout_ == null - ? com.google.protobuf.Duration.getDefaultInstance() - : runningTimeout_; - } + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.Builder + getEphemeralDirectoriesBuilder(int index) { + return internalGetEphemeralDirectoriesFieldBuilder().getBuilder(index); } /** * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Duration, - com.google.protobuf.Duration.Builder, - com.google.protobuf.DurationOrBuilder> - internalGetRunningTimeoutFieldBuilder() { - if (runningTimeoutBuilder_ == null) { - runningTimeoutBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Duration, - com.google.protobuf.Duration.Builder, - com.google.protobuf.DurationOrBuilder>( - getRunningTimeout(), getParentForChildren(), isClean()); - runningTimeout_ = null; + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectoryOrBuilder + getEphemeralDirectoriesOrBuilder(int index) { + if (ephemeralDirectoriesBuilder_ == null) { + return ephemeralDirectories_.get(index); + } else { + return ephemeralDirectoriesBuilder_.getMessageOrBuilder(index); } - return runningTimeoutBuilder_; } - private com.google.cloud.workstations.v1.WorkstationConfig.Host host_; - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Host, - com.google.cloud.workstations.v1.WorkstationConfig.Host.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.HostOrBuilder> - hostBuilder_; - /** * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the host field is set. */ - public boolean hasHost() { - return ((bitField0_ & 0x00001000) != 0); + public java.util.List< + ? extends + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectoryOrBuilder> + getEphemeralDirectoriesOrBuilderList() { + if (ephemeralDirectoriesBuilder_ != null) { + return ephemeralDirectoriesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(ephemeralDirectories_); + } } /** * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The host. */ - public com.google.cloud.workstations.v1.WorkstationConfig.Host getHost() { - if (hostBuilder_ == null) { - return host_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Host.getDefaultInstance() - : host_; - } else { - return hostBuilder_.getMessage(); - } + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.Builder + addEphemeralDirectoriesBuilder() { + return internalGetEphemeralDirectoriesFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .getDefaultInstance()); } /** * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setHost(com.google.cloud.workstations.v1.WorkstationConfig.Host value) { - if (hostBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - host_ = value; - } else { - hostBuilder_.setMessage(value); - } - bitField0_ |= 0x00001000; - onChanged(); - return this; + public com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.Builder + addEphemeralDirectoriesBuilder(int index) { + return internalGetEphemeralDirectoriesFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory + .getDefaultInstance()); } /** * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setHost( - com.google.cloud.workstations.v1.WorkstationConfig.Host.Builder builderForValue) { - if (hostBuilder_ == null) { - host_ = builderForValue.build(); - } else { - hostBuilder_.setMessage(builderForValue.build()); + public java.util.List< + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.Builder> + getEphemeralDirectoriesBuilderList() { + return internalGetEphemeralDirectoriesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectoryOrBuilder> + internalGetEphemeralDirectoriesFieldBuilder() { + if (ephemeralDirectoriesBuilder_ == null) { + ephemeralDirectoriesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectoryOrBuilder>( + ephemeralDirectories_, + ((bitField0_ & 0x00008000) != 0), + getParentForChildren(), + isClean()); + ephemeralDirectories_ = null; } - bitField0_ |= 0x00001000; - onChanged(); - return this; + return ephemeralDirectoriesBuilder_; } + private com.google.cloud.workstations.v1.WorkstationConfig.Container container_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Container, + com.google.cloud.workstations.v1.WorkstationConfig.Container.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.ContainerOrBuilder> + containerBuilder_; + /** * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return Whether the container field is set. */ - public Builder mergeHost(com.google.cloud.workstations.v1.WorkstationConfig.Host value) { - if (hostBuilder_ == null) { - if (((bitField0_ & 0x00001000) != 0) - && host_ != null - && host_ - != com.google.cloud.workstations.v1.WorkstationConfig.Host.getDefaultInstance()) { - getHostBuilder().mergeFrom(value); - } else { - host_ = value; - } - } else { - hostBuilder_.mergeFrom(value); - } - if (host_ != null) { - bitField0_ |= 0x00001000; - onChanged(); - } - return this; + public boolean hasContainer() { + return ((bitField0_ & 0x00010000) != 0); } /** * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The container. */ - public Builder clearHost() { - bitField0_ = (bitField0_ & ~0x00001000); - host_ = null; - if (hostBuilder_ != null) { - hostBuilder_.dispose(); - hostBuilder_ = null; + public com.google.cloud.workstations.v1.WorkstationConfig.Container getContainer() { + if (containerBuilder_ == null) { + return container_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Container.getDefaultInstance() + : container_; + } else { + return containerBuilder_.getMessage(); } - onChanged(); - return this; } /** * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1.WorkstationConfig.Host.Builder getHostBuilder() { - bitField0_ |= 0x00001000; + public Builder setContainer( + com.google.cloud.workstations.v1.WorkstationConfig.Container value) { + if (containerBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + container_ = value; + } else { + containerBuilder_.setMessage(value); + } + bitField0_ |= 0x00010000; onChanged(); - return internalGetHostFieldBuilder().getBuilder(); + return this; } /** * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1.WorkstationConfig.HostOrBuilder getHostOrBuilder() { - if (hostBuilder_ != null) { - return hostBuilder_.getMessageOrBuilder(); + public Builder setContainer( + com.google.cloud.workstations.v1.WorkstationConfig.Container.Builder builderForValue) { + if (containerBuilder_ == null) { + container_ = builderForValue.build(); } else { - return host_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Host.getDefaultInstance() - : host_; + containerBuilder_.setMessage(builderForValue.build()); } + bitField0_ |= 0x00010000; + onChanged(); + return this; } /** * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Host, - com.google.cloud.workstations.v1.WorkstationConfig.Host.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.HostOrBuilder> - internalGetHostFieldBuilder() { - if (hostBuilder_ == null) { - hostBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Host, - com.google.cloud.workstations.v1.WorkstationConfig.Host.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.HostOrBuilder>( - getHost(), getParentForChildren(), isClean()); - host_ = null; + public Builder mergeContainer( + com.google.cloud.workstations.v1.WorkstationConfig.Container value) { + if (containerBuilder_ == null) { + if (((bitField0_ & 0x00010000) != 0) + && container_ != null + && container_ + != com.google.cloud.workstations.v1.WorkstationConfig.Container + .getDefaultInstance()) { + getContainerBuilder().mergeFrom(value); + } else { + container_ = value; + } + } else { + containerBuilder_.mergeFrom(value); } - return hostBuilder_; - } - - private java.util.List - persistentDirectories_ = java.util.Collections.emptyList(); - - private void ensurePersistentDirectoriesIsMutable() { - if (!((bitField0_ & 0x00002000) != 0)) { - persistentDirectories_ = - new java.util.ArrayList< - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory>( - persistentDirectories_); - bitField0_ |= 0x00002000; + if (container_ != null) { + bitField0_ |= 0x00010000; + onChanged(); } + return this; } - private com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder> - persistentDirectoriesBuilder_; - /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - public java.util.List - getPersistentDirectoriesList() { - if (persistentDirectoriesBuilder_ == null) { - return java.util.Collections.unmodifiableList(persistentDirectories_); - } else { - return persistentDirectoriesBuilder_.getMessageList(); + public Builder clearContainer() { + bitField0_ = (bitField0_ & ~0x00010000); + container_ = null; + if (containerBuilder_ != null) { + containerBuilder_.dispose(); + containerBuilder_ = null; } + onChanged(); + return this; } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - public int getPersistentDirectoriesCount() { - if (persistentDirectoriesBuilder_ == null) { - return persistentDirectories_.size(); - } else { - return persistentDirectoriesBuilder_.getCount(); - } + public com.google.cloud.workstations.v1.WorkstationConfig.Container.Builder + getContainerBuilder() { + bitField0_ |= 0x00010000; + onChanged(); + return internalGetContainerFieldBuilder().getBuilder(); } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - getPersistentDirectories(int index) { - if (persistentDirectoriesBuilder_ == null) { - return persistentDirectories_.get(index); + public com.google.cloud.workstations.v1.WorkstationConfig.ContainerOrBuilder + getContainerOrBuilder() { + if (containerBuilder_ != null) { + return containerBuilder_.getMessageOrBuilder(); } else { - return persistentDirectoriesBuilder_.getMessage(index); + return container_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.Container.getDefaultInstance() + : container_; } } @@ -17629,102 +31200,154 @@ public int getPersistentDirectoriesCount() { * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setPersistentDirectories( - int index, com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory value) { - if (persistentDirectoriesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.set(index, value); - onChanged(); - } else { - persistentDirectoriesBuilder_.setMessage(index, value); + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Container, + com.google.cloud.workstations.v1.WorkstationConfig.Container.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.ContainerOrBuilder> + internalGetContainerFieldBuilder() { + if (containerBuilder_ == null) { + containerBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.Container, + com.google.cloud.workstations.v1.WorkstationConfig.Container.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.ContainerOrBuilder>( + getContainer(), getParentForChildren(), isClean()); + container_ = null; } - return this; + return containerBuilder_; } + private com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryptionKey_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey, + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKeyOrBuilder> + encryptionKeyBuilder_; + /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * + * + * @return Whether the encryptionKey field is set. */ - public Builder setPersistentDirectories( - int index, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder - builderForValue) { - if (persistentDirectoriesBuilder_ == null) { - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.set(index, builderForValue.build()); - onChanged(); - } else { - persistentDirectoriesBuilder_.setMessage(index, builderForValue.build()); - } - return this; + public boolean hasEncryptionKey() { + return ((bitField0_ & 0x00020000) != 0); } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * + * + * @return The encryptionKey. */ - public Builder addPersistentDirectories( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory value) { - if (persistentDirectoriesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.add(value); - onChanged(); + public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + getEncryptionKey() { + if (encryptionKeyBuilder_ == null) { + return encryptionKey_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + .getDefaultInstance() + : encryptionKey_; } else { - persistentDirectoriesBuilder_.addMessage(value); + return encryptionKeyBuilder_.getMessage(); } - return this; } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder addPersistentDirectories( - int index, com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory value) { - if (persistentDirectoriesBuilder_ == null) { + * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + *
            + */ + public Builder setEncryptionKey( + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey value) { + if (encryptionKeyBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.add(index, value); - onChanged(); + encryptionKey_ = value; } else { - persistentDirectoriesBuilder_.addMessage(index, value); + encryptionKeyBuilder_.setMessage(value); } + bitField0_ |= 0x00020000; + onChanged(); return this; } @@ -17732,23 +31355,40 @@ public Builder addPersistentDirectories( * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * */ - public Builder addPersistentDirectories( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder + public Builder setEncryptionKey( + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.Builder builderForValue) { - if (persistentDirectoriesBuilder_ == null) { - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.add(builderForValue.build()); - onChanged(); + if (encryptionKeyBuilder_ == null) { + encryptionKey_ = builderForValue.build(); } else { - persistentDirectoriesBuilder_.addMessage(builderForValue.build()); + encryptionKeyBuilder_.setMessage(builderForValue.build()); } + bitField0_ |= 0x00020000; + onChanged(); return this; } @@ -17756,23 +31396,48 @@ public Builder addPersistentDirectories( * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * */ - public Builder addPersistentDirectories( - int index, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder - builderForValue) { - if (persistentDirectoriesBuilder_ == null) { - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.add(index, builderForValue.build()); - onChanged(); + public Builder mergeEncryptionKey( + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey value) { + if (encryptionKeyBuilder_ == null) { + if (((bitField0_ & 0x00020000) != 0) + && encryptionKey_ != null + && encryptionKey_ + != com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + .getDefaultInstance()) { + getEncryptionKeyBuilder().mergeFrom(value); + } else { + encryptionKey_ = value; + } } else { - persistentDirectoriesBuilder_.addMessage(index, builderForValue.build()); + encryptionKeyBuilder_.mergeFrom(value); + } + if (encryptionKey_ != null) { + bitField0_ |= 0x00020000; + onChanged(); } return this; } @@ -17781,24 +31446,38 @@ public Builder addPersistentDirectories( * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * */ - public Builder addAllPersistentDirectories( - java.lang.Iterable< - ? extends com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory> - values) { - if (persistentDirectoriesBuilder_ == null) { - ensurePersistentDirectoriesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, persistentDirectories_); - onChanged(); - } else { - persistentDirectoriesBuilder_.addAllMessages(values); + public Builder clearEncryptionKey() { + bitField0_ = (bitField0_ & ~0x00020000); + encryptionKey_ = null; + if (encryptionKeyBuilder_ != null) { + encryptionKeyBuilder_.dispose(); + encryptionKeyBuilder_ = null; } + onChanged(); return this; } @@ -17806,79 +31485,160 @@ public Builder addAllPersistentDirectories( * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * */ - public Builder clearPersistentDirectories() { - if (persistentDirectoriesBuilder_ == null) { - persistentDirectories_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00002000); - onChanged(); - } else { - persistentDirectoriesBuilder_.clear(); - } - return this; + public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.Builder + getEncryptionKeyBuilder() { + bitField0_ |= 0x00020000; + onChanged(); + return internalGetEncryptionKeyFieldBuilder().getBuilder(); } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * */ - public Builder removePersistentDirectories(int index) { - if (persistentDirectoriesBuilder_ == null) { - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.remove(index); - onChanged(); + public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKeyOrBuilder + getEncryptionKeyOrBuilder() { + if (encryptionKeyBuilder_ != null) { + return encryptionKeyBuilder_.getMessageOrBuilder(); } else { - persistentDirectoriesBuilder_.remove(index); + return encryptionKey_ == null + ? com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey + .getDefaultInstance() + : encryptionKey_; } - return this; } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * */ - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder - getPersistentDirectoriesBuilder(int index) { - return internalGetPersistentDirectoriesFieldBuilder().getBuilder(index); + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey, + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKeyOrBuilder> + internalGetEncryptionKeyFieldBuilder() { + if (encryptionKeyBuilder_ == null) { + encryptionKeyBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey, + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKeyOrBuilder>( + getEncryptionKey(), getParentForChildren(), isClean()); + encryptionKey_ = null; + } + return encryptionKeyBuilder_; } + private java.util.List + readinessChecks_ = java.util.Collections.emptyList(); + + private void ensureReadinessChecksIsMutable() { + if (!((bitField0_ & 0x00040000) != 0)) { + readinessChecks_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck>( + readinessChecks_); + bitField0_ |= 0x00040000; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck, + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder> + readinessChecksBuilder_; + /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder - getPersistentDirectoriesOrBuilder(int index) { - if (persistentDirectoriesBuilder_ == null) { - return persistentDirectories_.get(index); + public java.util.List + getReadinessChecksList() { + if (readinessChecksBuilder_ == null) { + return java.util.Collections.unmodifiableList(readinessChecks_); } else { - return persistentDirectoriesBuilder_.getMessageOrBuilder(index); + return readinessChecksBuilder_.getMessageList(); } } @@ -17886,21 +31646,20 @@ public Builder removePersistentDirectories(int index) { * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public java.util.List< - ? extends - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder> - getPersistentDirectoriesOrBuilderList() { - if (persistentDirectoriesBuilder_ != null) { - return persistentDirectoriesBuilder_.getMessageOrBuilderList(); + public int getReadinessChecksCount() { + if (readinessChecksBuilder_ == null) { + return readinessChecks_.size(); } else { - return java.util.Collections.unmodifiableList(persistentDirectories_); + return readinessChecksBuilder_.getCount(); } } @@ -17908,151 +31667,156 @@ public Builder removePersistentDirectories(int index) { * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder - addPersistentDirectoriesBuilder() { - return internalGetPersistentDirectoriesFieldBuilder() - .addBuilder( - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .getDefaultInstance()); + public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck getReadinessChecks( + int index) { + if (readinessChecksBuilder_ == null) { + return readinessChecks_.get(index); + } else { + return readinessChecksBuilder_.getMessage(index); + } } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder - addPersistentDirectoriesBuilder(int index) { - return internalGetPersistentDirectoriesFieldBuilder() - .addBuilder( - index, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory - .getDefaultInstance()); + public Builder setReadinessChecks( + int index, com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck value) { + if (readinessChecksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureReadinessChecksIsMutable(); + readinessChecks_.set(index, value); + onChanged(); + } else { + readinessChecksBuilder_.setMessage(index, value); + } + return this; } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public java.util.List< - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder> - getPersistentDirectoriesBuilderList() { - return internalGetPersistentDirectoriesFieldBuilder().getBuilderList(); - } - - private com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder> - internalGetPersistentDirectoriesFieldBuilder() { - if (persistentDirectoriesBuilder_ == null) { - persistentDirectoriesBuilder_ = - new com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder>( - persistentDirectories_, - ((bitField0_ & 0x00002000) != 0), - getParentForChildren(), - isClean()); - persistentDirectories_ = null; + public Builder setReadinessChecks( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder builderForValue) { + if (readinessChecksBuilder_ == null) { + ensureReadinessChecksIsMutable(); + readinessChecks_.set(index, builderForValue.build()); + onChanged(); + } else { + readinessChecksBuilder_.setMessage(index, builderForValue.build()); } - return persistentDirectoriesBuilder_; + return this; } - private com.google.cloud.workstations.v1.WorkstationConfig.Container container_; - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Container, - com.google.cloud.workstations.v1.WorkstationConfig.Container.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.ContainerOrBuilder> - containerBuilder_; - /** * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the container field is set. */ - public boolean hasContainer() { - return ((bitField0_ & 0x00004000) != 0); + public Builder addReadinessChecks( + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck value) { + if (readinessChecksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureReadinessChecksIsMutable(); + readinessChecks_.add(value); + onChanged(); + } else { + readinessChecksBuilder_.addMessage(value); + } + return this; } /** * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The container. */ - public com.google.cloud.workstations.v1.WorkstationConfig.Container getContainer() { - if (containerBuilder_ == null) { - return container_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Container.getDefaultInstance() - : container_; + public Builder addReadinessChecks( + int index, com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck value) { + if (readinessChecksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureReadinessChecksIsMutable(); + readinessChecks_.add(index, value); + onChanged(); } else { - return containerBuilder_.getMessage(); + readinessChecksBuilder_.addMessage(index, value); } + return this; } /** * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setContainer( - com.google.cloud.workstations.v1.WorkstationConfig.Container value) { - if (containerBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - container_ = value; + public Builder addReadinessChecks( + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder builderForValue) { + if (readinessChecksBuilder_ == null) { + ensureReadinessChecksIsMutable(); + readinessChecks_.add(builderForValue.build()); + onChanged(); } else { - containerBuilder_.setMessage(value); + readinessChecksBuilder_.addMessage(builderForValue.build()); } - bitField0_ |= 0x00004000; - onChanged(); return this; } @@ -18060,23 +31824,25 @@ public Builder setContainer( * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setContainer( - com.google.cloud.workstations.v1.WorkstationConfig.Container.Builder builderForValue) { - if (containerBuilder_ == null) { - container_ = builderForValue.build(); + public Builder addReadinessChecks( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder builderForValue) { + if (readinessChecksBuilder_ == null) { + ensureReadinessChecksIsMutable(); + readinessChecks_.add(index, builderForValue.build()); + onChanged(); } else { - containerBuilder_.setMessage(builderForValue.build()); + readinessChecksBuilder_.addMessage(index, builderForValue.build()); } - bitField0_ |= 0x00004000; - onChanged(); return this; } @@ -18084,32 +31850,49 @@ public Builder setContainer( * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeContainer( - com.google.cloud.workstations.v1.WorkstationConfig.Container value) { - if (containerBuilder_ == null) { - if (((bitField0_ & 0x00004000) != 0) - && container_ != null - && container_ - != com.google.cloud.workstations.v1.WorkstationConfig.Container - .getDefaultInstance()) { - getContainerBuilder().mergeFrom(value); - } else { - container_ = value; - } + public Builder addAllReadinessChecks( + java.lang.Iterable< + ? extends com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck> + values) { + if (readinessChecksBuilder_ == null) { + ensureReadinessChecksIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, readinessChecks_); + onChanged(); } else { - containerBuilder_.mergeFrom(value); + readinessChecksBuilder_.addAllMessages(values); } - if (container_ != null) { - bitField0_ |= 0x00004000; + return this; + } + + /** + * + * + *
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
            +     * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearReadinessChecks() { + if (readinessChecksBuilder_ == null) { + readinessChecks_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00040000); onChanged(); + } else { + readinessChecksBuilder_.clear(); } return this; } @@ -18118,22 +31901,23 @@ public Builder mergeContainer( * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearContainer() { - bitField0_ = (bitField0_ & ~0x00004000); - container_ = null; - if (containerBuilder_ != null) { - containerBuilder_.dispose(); - containerBuilder_ = null; + public Builder removeReadinessChecks(int index) { + if (readinessChecksBuilder_ == null) { + ensureReadinessChecksIsMutable(); + readinessChecks_.remove(index); + onChanged(); + } else { + readinessChecksBuilder_.remove(index); } - onChanged(); return this; } @@ -18141,41 +31925,39 @@ public Builder clearContainer() { * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1.WorkstationConfig.Container.Builder - getContainerBuilder() { - bitField0_ |= 0x00004000; - onChanged(); - return internalGetContainerFieldBuilder().getBuilder(); + public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder + getReadinessChecksBuilder(int index) { + return internalGetReadinessChecksFieldBuilder().getBuilder(index); } /** * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1.WorkstationConfig.ContainerOrBuilder - getContainerOrBuilder() { - if (containerBuilder_ != null) { - return containerBuilder_.getMessageOrBuilder(); + public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder + getReadinessChecksOrBuilder(int index) { + if (readinessChecksBuilder_ == null) { + return readinessChecks_.get(index); } else { - return container_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.Container.getDefaultInstance() - : container_; + return readinessChecksBuilder_.getMessageOrBuilder(index); } } @@ -18183,542 +31965,402 @@ public Builder clearContainer() { * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Container, - com.google.cloud.workstations.v1.WorkstationConfig.Container.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.ContainerOrBuilder> - internalGetContainerFieldBuilder() { - if (containerBuilder_ == null) { - containerBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.Container, - com.google.cloud.workstations.v1.WorkstationConfig.Container.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.ContainerOrBuilder>( - getContainer(), getParentForChildren(), isClean()); - container_ = null; + public java.util.List< + ? extends com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder> + getReadinessChecksOrBuilderList() { + if (readinessChecksBuilder_ != null) { + return readinessChecksBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(readinessChecks_); } - return containerBuilder_; } - private com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryptionKey_; - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey, - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKeyOrBuilder> - encryptionKeyBuilder_; - /** * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the encryptionKey field is set. */ - public boolean hasEncryptionKey() { - return ((bitField0_ & 0x00008000) != 0); + public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder + addReadinessChecksBuilder() { + return internalGetReadinessChecksFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck + .getDefaultInstance()); } /** * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The encryptionKey. */ - public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - getEncryptionKey() { - if (encryptionKeyBuilder_ == null) { - return encryptionKey_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - .getDefaultInstance() - : encryptionKey_; - } else { - return encryptionKeyBuilder_.getMessage(); - } + public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder + addReadinessChecksBuilder(int index) { + return internalGetReadinessChecksFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck + .getDefaultInstance()); } /** * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setEncryptionKey( - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey value) { - if (encryptionKeyBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - encryptionKey_ = value; - } else { - encryptionKeyBuilder_.setMessage(value); + public java.util.List + getReadinessChecksBuilderList() { + return internalGetReadinessChecksFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck, + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder> + internalGetReadinessChecksFieldBuilder() { + if (readinessChecksBuilder_ == null) { + readinessChecksBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck, + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder>( + readinessChecks_, + ((bitField0_ & 0x00040000) != 0), + getParentForChildren(), + isClean()); + readinessChecks_ = null; } - bitField0_ |= 0x00008000; - onChanged(); - return this; + return readinessChecksBuilder_; + } + + private com.google.protobuf.LazyStringArrayList replicaZones_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureReplicaZonesIsMutable() { + if (!replicaZones_.isModifiable()) { + replicaZones_ = new com.google.protobuf.LazyStringArrayList(replicaZones_); + } + bitField0_ |= 0x00080000; } /** * * - *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            +     * 
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
                  *
                  * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @return A list containing the replicaZones. */ - public Builder setEncryptionKey( - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.Builder - builderForValue) { - if (encryptionKeyBuilder_ == null) { - encryptionKey_ = builderForValue.build(); - } else { - encryptionKeyBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00008000; - onChanged(); - return this; + public com.google.protobuf.ProtocolStringList getReplicaZonesList() { + replicaZones_.makeImmutable(); + return replicaZones_; } /** * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
                  *
                  * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @return The count of replicaZones. */ - public Builder mergeEncryptionKey( - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey value) { - if (encryptionKeyBuilder_ == null) { - if (((bitField0_ & 0x00008000) != 0) - && encryptionKey_ != null - && encryptionKey_ - != com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - .getDefaultInstance()) { - getEncryptionKeyBuilder().mergeFrom(value); - } else { - encryptionKey_ = value; - } - } else { - encryptionKeyBuilder_.mergeFrom(value); - } - if (encryptionKey_ != null) { - bitField0_ |= 0x00008000; - onChanged(); - } - return this; + public int getReplicaZonesCount() { + return replicaZones_.size(); } /** * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
                  *
                  * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @param index The index of the element to return. + * @return The replicaZones at the given index. */ - public Builder clearEncryptionKey() { - bitField0_ = (bitField0_ & ~0x00008000); - encryptionKey_ = null; - if (encryptionKeyBuilder_ != null) { - encryptionKeyBuilder_.dispose(); - encryptionKeyBuilder_ = null; - } - onChanged(); - return this; + public java.lang.String getReplicaZones(int index) { + return replicaZones_.get(index); } /** * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
                  *
                  * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @param index The index of the value to return. + * @return The bytes of the replicaZones at the given index. */ - public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.Builder - getEncryptionKeyBuilder() { - bitField0_ |= 0x00008000; - onChanged(); - return internalGetEncryptionKeyFieldBuilder().getBuilder(); + public com.google.protobuf.ByteString getReplicaZonesBytes(int index) { + return replicaZones_.getByteString(index); } /** * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
                  *
                  * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @param index The index to set the value at. + * @param value The replicaZones to set. + * @return This builder for chaining. */ - public com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKeyOrBuilder - getEncryptionKeyOrBuilder() { - if (encryptionKeyBuilder_ != null) { - return encryptionKeyBuilder_.getMessageOrBuilder(); - } else { - return encryptionKey_ == null - ? com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey - .getDefaultInstance() - : encryptionKey_; + public Builder setReplicaZones(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } + ensureReplicaZonesIsMutable(); + replicaZones_.set(index, value); + bitField0_ |= 0x00080000; + onChanged(); + return this; } /** * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
                  *
                  * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @param value The replicaZones to add. + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey, - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKeyOrBuilder> - internalGetEncryptionKeyFieldBuilder() { - if (encryptionKeyBuilder_ == null) { - encryptionKeyBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey, - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKey.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.CustomerEncryptionKeyOrBuilder>( - getEncryptionKey(), getParentForChildren(), isClean()); - encryptionKey_ = null; - } - return encryptionKeyBuilder_; - } - - private java.util.List - readinessChecks_ = java.util.Collections.emptyList(); - - private void ensureReadinessChecksIsMutable() { - if (!((bitField0_ & 0x00010000) != 0)) { - readinessChecks_ = - new java.util.ArrayList< - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck>( - readinessChecks_); - bitField0_ |= 0x00010000; + public Builder addReplicaZones(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } + ensureReplicaZonesIsMutable(); + replicaZones_.add(value); + bitField0_ |= 0x00080000; + onChanged(); + return this; } - private com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck, - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder> - readinessChecksBuilder_; - /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @param values The replicaZones to add. + * @return This builder for chaining. */ - public java.util.List - getReadinessChecksList() { - if (readinessChecksBuilder_ == null) { - return java.util.Collections.unmodifiableList(readinessChecks_); - } else { - return readinessChecksBuilder_.getMessageList(); - } + public Builder addAllReplicaZones(java.lang.Iterable values) { + ensureReplicaZonesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, replicaZones_); + bitField0_ |= 0x00080000; + onChanged(); + return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @return This builder for chaining. */ - public int getReadinessChecksCount() { - if (readinessChecksBuilder_ == null) { - return readinessChecks_.size(); - } else { - return readinessChecksBuilder_.getCount(); - } + public Builder clearReplicaZones() { + replicaZones_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00080000); + ; + onChanged(); + return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @param value The bytes of the replicaZones to add. + * @return This builder for chaining. */ - public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck getReadinessChecks( - int index) { - if (readinessChecksBuilder_ == null) { - return readinessChecks_.get(index); - } else { - return readinessChecksBuilder_.getMessage(index); + public Builder addReplicaZonesBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureReplicaZonesIsMutable(); + replicaZones_.add(value); + bitField0_ |= 0x00080000; + onChanged(); + return this; } + private boolean degraded_; + /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Whether this workstation configuration is in degraded mode, in
            +     * which case it may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1.WorkstationConfig.conditions]
            +     * field contains detailed information about the status of the configuration.
                  * 
            * - * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * + * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The degraded. */ - public Builder setReadinessChecks( - int index, com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck value) { - if (readinessChecksBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureReadinessChecksIsMutable(); - readinessChecks_.set(index, value); - onChanged(); - } else { - readinessChecksBuilder_.setMessage(index, value); - } - return this; + @java.lang.Override + public boolean getDegraded() { + return degraded_; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Whether this workstation configuration is in degraded mode, in
            +     * which case it may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1.WorkstationConfig.conditions]
            +     * field contains detailed information about the status of the configuration.
                  * 
            * - * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * + * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The degraded to set. + * @return This builder for chaining. */ - public Builder setReadinessChecks( - int index, - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder builderForValue) { - if (readinessChecksBuilder_ == null) { - ensureReadinessChecksIsMutable(); - readinessChecks_.set(index, builderForValue.build()); - onChanged(); - } else { - readinessChecksBuilder_.setMessage(index, builderForValue.build()); - } + public Builder setDegraded(boolean value) { + + degraded_ = value; + bitField0_ |= 0x00100000; + onChanged(); return this; } @@ -18726,132 +32368,118 @@ public Builder setReadinessChecks( * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Whether this workstation configuration is in degraded mode, in
            +     * which case it may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1.WorkstationConfig.conditions]
            +     * field contains detailed information about the status of the configuration.
                  * 
            * - * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * + * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public Builder addReadinessChecks( - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck value) { - if (readinessChecksBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureReadinessChecksIsMutable(); - readinessChecks_.add(value); - onChanged(); - } else { - readinessChecksBuilder_.addMessage(value); - } + public Builder clearDegraded() { + bitField0_ = (bitField0_ & ~0x00100000); + degraded_ = false; + onChanged(); return this; } + private java.util.List conditions_ = java.util.Collections.emptyList(); + + private void ensureConditionsIsMutable() { + if (!((bitField0_ & 0x00200000) != 0)) { + conditions_ = new java.util.ArrayList(conditions_); + bitField0_ |= 0x00200000; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> + conditionsBuilder_; + /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addReadinessChecks( - int index, com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck value) { - if (readinessChecksBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureReadinessChecksIsMutable(); - readinessChecks_.add(index, value); - onChanged(); + public java.util.List getConditionsList() { + if (conditionsBuilder_ == null) { + return java.util.Collections.unmodifiableList(conditions_); } else { - readinessChecksBuilder_.addMessage(index, value); + return conditionsBuilder_.getMessageList(); } - return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addReadinessChecks( - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder builderForValue) { - if (readinessChecksBuilder_ == null) { - ensureReadinessChecksIsMutable(); - readinessChecks_.add(builderForValue.build()); - onChanged(); + public int getConditionsCount() { + if (conditionsBuilder_ == null) { + return conditions_.size(); } else { - readinessChecksBuilder_.addMessage(builderForValue.build()); + return conditionsBuilder_.getCount(); } - return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addReadinessChecks( - int index, - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder builderForValue) { - if (readinessChecksBuilder_ == null) { - ensureReadinessChecksIsMutable(); - readinessChecks_.add(index, builderForValue.build()); - onChanged(); + public com.google.rpc.Status getConditions(int index) { + if (conditionsBuilder_ == null) { + return conditions_.get(index); } else { - readinessChecksBuilder_.addMessage(index, builderForValue.build()); + return conditionsBuilder_.getMessage(index); } - return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addAllReadinessChecks( - java.lang.Iterable< - ? extends com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck> - values) { - if (readinessChecksBuilder_ == null) { - ensureReadinessChecksIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, readinessChecks_); + public Builder setConditions(int index, com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionsIsMutable(); + conditions_.set(index, value); onChanged(); } else { - readinessChecksBuilder_.addAllMessages(values); + conditionsBuilder_.setMessage(index, value); } return this; } @@ -18860,22 +32488,21 @@ public Builder addAllReadinessChecks( * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder clearReadinessChecks() { - if (readinessChecksBuilder_ == null) { - readinessChecks_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00010000); + public Builder setConditions(int index, com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.set(index, builderForValue.build()); onChanged(); } else { - readinessChecksBuilder_.clear(); + conditionsBuilder_.setMessage(index, builderForValue.build()); } return this; } @@ -18884,22 +32511,24 @@ public Builder clearReadinessChecks() { * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder removeReadinessChecks(int index) { - if (readinessChecksBuilder_ == null) { - ensureReadinessChecksIsMutable(); - readinessChecks_.remove(index); + public Builder addConditions(com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionsIsMutable(); + conditions_.add(value); onChanged(); } else { - readinessChecksBuilder_.remove(index); + conditionsBuilder_.addMessage(value); } return this; } @@ -18908,365 +32537,324 @@ public Builder removeReadinessChecks(int index) { * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder - getReadinessChecksBuilder(int index) { - return internalGetReadinessChecksFieldBuilder().getBuilder(index); + public Builder addConditions(int index, com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionsIsMutable(); + conditions_.add(index, value); + onChanged(); + } else { + conditionsBuilder_.addMessage(index, value); + } + return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder - getReadinessChecksOrBuilder(int index) { - if (readinessChecksBuilder_ == null) { - return readinessChecks_.get(index); + public Builder addConditions(com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(builderForValue.build()); + onChanged(); } else { - return readinessChecksBuilder_.getMessageOrBuilder(index); + conditionsBuilder_.addMessage(builderForValue.build()); } + return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public java.util.List< - ? extends com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder> - getReadinessChecksOrBuilderList() { - if (readinessChecksBuilder_ != null) { - return readinessChecksBuilder_.getMessageOrBuilderList(); + public Builder addConditions(int index, com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(index, builderForValue.build()); + onChanged(); } else { - return java.util.Collections.unmodifiableList(readinessChecks_); + conditionsBuilder_.addMessage(index, builderForValue.build()); } + return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder - addReadinessChecksBuilder() { - return internalGetReadinessChecksFieldBuilder() - .addBuilder( - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck - .getDefaultInstance()); + public Builder addAllConditions(java.lang.Iterable values) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, conditions_); + onChanged(); + } else { + conditionsBuilder_.addAllMessages(values); + } + return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder - addReadinessChecksBuilder(int index) { - return internalGetReadinessChecksFieldBuilder() - .addBuilder( - index, - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck - .getDefaultInstance()); + public Builder clearConditions() { + if (conditionsBuilder_ == null) { + conditions_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00200000); + onChanged(); + } else { + conditionsBuilder_.clear(); + } + return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public java.util.List - getReadinessChecksBuilderList() { - return internalGetReadinessChecksFieldBuilder().getBuilderList(); - } - - private com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck, - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder> - internalGetReadinessChecksFieldBuilder() { - if (readinessChecksBuilder_ == null) { - readinessChecksBuilder_ = - new com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck, - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheck.Builder, - com.google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckOrBuilder>( - readinessChecks_, - ((bitField0_ & 0x00010000) != 0), - getParentForChildren(), - isClean()); - readinessChecks_ = null; - } - return readinessChecksBuilder_; - } - - private com.google.protobuf.LazyStringArrayList replicaZones_ = - com.google.protobuf.LazyStringArrayList.emptyList(); - - private void ensureReplicaZonesIsMutable() { - if (!replicaZones_.isModifiable()) { - replicaZones_ = new com.google.protobuf.LazyStringArrayList(replicaZones_); + public Builder removeConditions(int index) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.remove(index); + onChanged(); + } else { + conditionsBuilder_.remove(index); } - bitField0_ |= 0x00020000; + return this; } /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @return A list containing the replicaZones. */ - public com.google.protobuf.ProtocolStringList getReplicaZonesList() { - replicaZones_.makeImmutable(); - return replicaZones_; + public com.google.rpc.Status.Builder getConditionsBuilder(int index) { + return internalGetConditionsFieldBuilder().getBuilder(index); } /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @return The count of replicaZones. */ - public int getReplicaZonesCount() { - return replicaZones_.size(); + public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { + if (conditionsBuilder_ == null) { + return conditions_.get(index); + } else { + return conditionsBuilder_.getMessageOrBuilder(index); + } } /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @param index The index of the element to return. - * @return The replicaZones at the given index. */ - public java.lang.String getReplicaZones(int index) { - return replicaZones_.get(index); + public java.util.List getConditionsOrBuilderList() { + if (conditionsBuilder_ != null) { + return conditionsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(conditions_); + } } /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @param index The index of the value to return. - * @return The bytes of the replicaZones at the given index. */ - public com.google.protobuf.ByteString getReplicaZonesBytes(int index) { - return replicaZones_.getByteString(index); + public com.google.rpc.Status.Builder addConditionsBuilder() { + return internalGetConditionsFieldBuilder() + .addBuilder(com.google.rpc.Status.getDefaultInstance()); } /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @param index The index to set the value at. - * @param value The replicaZones to set. - * @return This builder for chaining. */ - public Builder setReplicaZones(int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureReplicaZonesIsMutable(); - replicaZones_.set(index, value); - bitField0_ |= 0x00020000; - onChanged(); - return this; + public com.google.rpc.Status.Builder addConditionsBuilder(int index) { + return internalGetConditionsFieldBuilder() + .addBuilder(index, com.google.rpc.Status.getDefaultInstance()); } /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @param value The replicaZones to add. - * @return This builder for chaining. */ - public Builder addReplicaZones(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public java.util.List getConditionsBuilderList() { + return internalGetConditionsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> + internalGetConditionsFieldBuilder() { + if (conditionsBuilder_ == null) { + conditionsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, + com.google.rpc.Status.Builder, + com.google.rpc.StatusOrBuilder>( + conditions_, ((bitField0_ & 0x00200000) != 0), getParentForChildren(), isClean()); + conditions_ = null; } - ensureReplicaZonesIsMutable(); - replicaZones_.add(value); - bitField0_ |= 0x00020000; - onChanged(); - return this; + return conditionsBuilder_; } + private boolean enableAuditAgent_; + /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. Whether to enable Linux `auditd` logging on the workstation. When
            +     * enabled, a
            +     * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account]
            +     * must also be specified that has `roles/logging.logWriter` and
            +     * `roles/monitoring.metricWriter` on the project. Operating system audit
            +     * logging is distinct from [Cloud Audit
            +     * Logs](https://cloud.google.com/workstations/docs/audit-logging) and
            +     * [Container output
            +     * logging](https://cloud.google.com/workstations/docs/container-output-logging#overview).
            +     * Operating system audit logs are available in the
            +     * [Cloud Logging](https://cloud.google.com/logging/docs) console by querying:
            +     *
            +     * resource.type="gce_instance"
            +     * log_name:"/logs/linux-auditd"
                  * 
            * - * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; - * + * bool enable_audit_agent = 20 [(.google.api.field_behavior) = OPTIONAL]; * - * @param values The replicaZones to add. - * @return This builder for chaining. + * @return The enableAuditAgent. */ - public Builder addAllReplicaZones(java.lang.Iterable values) { - ensureReplicaZonesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, replicaZones_); - bitField0_ |= 0x00020000; - onChanged(); - return this; + @java.lang.Override + public boolean getEnableAuditAgent() { + return enableAuditAgent_; } /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. Whether to enable Linux `auditd` logging on the workstation. When
            +     * enabled, a
            +     * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account]
            +     * must also be specified that has `roles/logging.logWriter` and
            +     * `roles/monitoring.metricWriter` on the project. Operating system audit
            +     * logging is distinct from [Cloud Audit
            +     * Logs](https://cloud.google.com/workstations/docs/audit-logging) and
            +     * [Container output
            +     * logging](https://cloud.google.com/workstations/docs/container-output-logging#overview).
            +     * Operating system audit logs are available in the
            +     * [Cloud Logging](https://cloud.google.com/logging/docs) console by querying:
            +     *
            +     * resource.type="gce_instance"
            +     * log_name:"/logs/linux-auditd"
                  * 
            * - * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; - * + * bool enable_audit_agent = 20 [(.google.api.field_behavior) = OPTIONAL]; * + * @param value The enableAuditAgent to set. * @return This builder for chaining. */ - public Builder clearReplicaZones() { - replicaZones_ = com.google.protobuf.LazyStringArrayList.emptyList(); - bitField0_ = (bitField0_ & ~0x00020000); - ; + public Builder setEnableAuditAgent(boolean value) { + + enableAuditAgent_ = value; + bitField0_ |= 0x00400000; onChanged(); return this; } @@ -19275,74 +32863,75 @@ public Builder clearReplicaZones() { * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. Whether to enable Linux `auditd` logging on the workstation. When
            +     * enabled, a
            +     * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account]
            +     * must also be specified that has `roles/logging.logWriter` and
            +     * `roles/monitoring.metricWriter` on the project. Operating system audit
            +     * logging is distinct from [Cloud Audit
            +     * Logs](https://cloud.google.com/workstations/docs/audit-logging) and
            +     * [Container output
            +     * logging](https://cloud.google.com/workstations/docs/container-output-logging#overview).
            +     * Operating system audit logs are available in the
            +     * [Cloud Logging](https://cloud.google.com/logging/docs) console by querying:
            +     *
            +     * resource.type="gce_instance"
            +     * log_name:"/logs/linux-auditd"
                  * 
            * - * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; - * + * bool enable_audit_agent = 20 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The bytes of the replicaZones to add. * @return This builder for chaining. */ - public Builder addReplicaZonesBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - ensureReplicaZonesIsMutable(); - replicaZones_.add(value); - bitField0_ |= 0x00020000; + public Builder clearEnableAuditAgent() { + bitField0_ = (bitField0_ & ~0x00400000); + enableAuditAgent_ = false; onChanged(); return this; } - private boolean degraded_; + private boolean disableTcpConnections_; /** * * *
            -     * Output only. Whether this resource is degraded, in which case it may
            -     * require user action to restore full functionality. See also the
            -     * [conditions][google.cloud.workstations.v1.WorkstationConfig.conditions]
            -     * field.
            +     * Optional. Disables support for plain TCP connections in the workstation.
            +     * By default the service supports TCP connections through a websocket relay.
            +     * Setting this option to true disables that relay, which prevents the usage
            +     * of services that require plain TCP connections, such as SSH.
            +     * When enabled, all communication must occur over HTTPS or WSS.
                  * 
            * - * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * bool disable_tcp_connections = 24 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The degraded. + * @return The disableTcpConnections. */ @java.lang.Override - public boolean getDegraded() { - return degraded_; + public boolean getDisableTcpConnections() { + return disableTcpConnections_; } /** * * *
            -     * Output only. Whether this resource is degraded, in which case it may
            -     * require user action to restore full functionality. See also the
            -     * [conditions][google.cloud.workstations.v1.WorkstationConfig.conditions]
            -     * field.
            +     * Optional. Disables support for plain TCP connections in the workstation.
            +     * By default the service supports TCP connections through a websocket relay.
            +     * Setting this option to true disables that relay, which prevents the usage
            +     * of services that require plain TCP connections, such as SSH.
            +     * When enabled, all communication must occur over HTTPS or WSS.
                  * 
            * - * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * bool disable_tcp_connections = 24 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The degraded to set. + * @param value The disableTcpConnections to set. * @return This builder for chaining. */ - public Builder setDegraded(boolean value) { + public Builder setDisableTcpConnections(boolean value) { - degraded_ = value; - bitField0_ |= 0x00040000; + disableTcpConnections_ = value; + bitField0_ |= 0x00800000; onChanged(); return this; } @@ -19351,52 +32940,64 @@ public Builder setDegraded(boolean value) { * * *
            -     * Output only. Whether this resource is degraded, in which case it may
            -     * require user action to restore full functionality. See also the
            -     * [conditions][google.cloud.workstations.v1.WorkstationConfig.conditions]
            -     * field.
            +     * Optional. Disables support for plain TCP connections in the workstation.
            +     * By default the service supports TCP connections through a websocket relay.
            +     * Setting this option to true disables that relay, which prevents the usage
            +     * of services that require plain TCP connections, such as SSH.
            +     * When enabled, all communication must occur over HTTPS or WSS.
                  * 
            * - * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * bool disable_tcp_connections = 24 [(.google.api.field_behavior) = OPTIONAL]; * * @return This builder for chaining. */ - public Builder clearDegraded() { - bitField0_ = (bitField0_ & ~0x00040000); - degraded_ = false; + public Builder clearDisableTcpConnections() { + bitField0_ = (bitField0_ & ~0x00800000); + disableTcpConnections_ = false; onChanged(); return this; } - private java.util.List conditions_ = java.util.Collections.emptyList(); + private java.util.List + allowedPorts_ = java.util.Collections.emptyList(); - private void ensureConditionsIsMutable() { - if (!((bitField0_ & 0x00080000) != 0)) { - conditions_ = new java.util.ArrayList(conditions_); - bitField0_ |= 0x00080000; + private void ensureAllowedPortsIsMutable() { + if (!((bitField0_ & 0x01000000) != 0)) { + allowedPorts_ = + new java.util.ArrayList( + allowedPorts_); + bitField0_ |= 0x01000000; } } private com.google.protobuf.RepeatedFieldBuilder< - com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> - conditionsBuilder_; + com.google.cloud.workstations.v1.WorkstationConfig.PortRange, + com.google.cloud.workstations.v1.WorkstationConfig.PortRange.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.PortRangeOrBuilder> + allowedPortsBuilder_; /** * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public java.util.List getConditionsList() { - if (conditionsBuilder_ == null) { - return java.util.Collections.unmodifiableList(conditions_); + public java.util.List + getAllowedPortsList() { + if (allowedPortsBuilder_ == null) { + return java.util.Collections.unmodifiableList(allowedPorts_); } else { - return conditionsBuilder_.getMessageList(); + return allowedPortsBuilder_.getMessageList(); } } @@ -19404,18 +33005,23 @@ public java.util.List getConditionsList() { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public int getConditionsCount() { - if (conditionsBuilder_ == null) { - return conditions_.size(); + public int getAllowedPortsCount() { + if (allowedPortsBuilder_ == null) { + return allowedPorts_.size(); } else { - return conditionsBuilder_.getCount(); + return allowedPortsBuilder_.getCount(); } } @@ -19423,18 +33029,23 @@ public int getConditionsCount() { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.rpc.Status getConditions(int index) { - if (conditionsBuilder_ == null) { - return conditions_.get(index); + public com.google.cloud.workstations.v1.WorkstationConfig.PortRange getAllowedPorts(int index) { + if (allowedPortsBuilder_ == null) { + return allowedPorts_.get(index); } else { - return conditionsBuilder_.getMessage(index); + return allowedPortsBuilder_.getMessage(index); } } @@ -19442,23 +33053,29 @@ public com.google.rpc.Status getConditions(int index) { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setConditions(int index, com.google.rpc.Status value) { - if (conditionsBuilder_ == null) { + public Builder setAllowedPorts( + int index, com.google.cloud.workstations.v1.WorkstationConfig.PortRange value) { + if (allowedPortsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConditionsIsMutable(); - conditions_.set(index, value); + ensureAllowedPortsIsMutable(); + allowedPorts_.set(index, value); onChanged(); } else { - conditionsBuilder_.setMessage(index, value); + allowedPortsBuilder_.setMessage(index, value); } return this; } @@ -19467,20 +33084,27 @@ public Builder setConditions(int index, com.google.rpc.Status value) { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setConditions(int index, com.google.rpc.Status.Builder builderForValue) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.set(index, builderForValue.build()); + public Builder setAllowedPorts( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.PortRange.Builder builderForValue) { + if (allowedPortsBuilder_ == null) { + ensureAllowedPortsIsMutable(); + allowedPorts_.set(index, builderForValue.build()); onChanged(); } else { - conditionsBuilder_.setMessage(index, builderForValue.build()); + allowedPortsBuilder_.setMessage(index, builderForValue.build()); } return this; } @@ -19489,23 +33113,29 @@ public Builder setConditions(int index, com.google.rpc.Status.Builder builderFor * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addConditions(com.google.rpc.Status value) { - if (conditionsBuilder_ == null) { + public Builder addAllowedPorts( + com.google.cloud.workstations.v1.WorkstationConfig.PortRange value) { + if (allowedPortsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConditionsIsMutable(); - conditions_.add(value); + ensureAllowedPortsIsMutable(); + allowedPorts_.add(value); onChanged(); } else { - conditionsBuilder_.addMessage(value); + allowedPortsBuilder_.addMessage(value); } return this; } @@ -19514,23 +33144,29 @@ public Builder addConditions(com.google.rpc.Status value) { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addConditions(int index, com.google.rpc.Status value) { - if (conditionsBuilder_ == null) { + public Builder addAllowedPorts( + int index, com.google.cloud.workstations.v1.WorkstationConfig.PortRange value) { + if (allowedPortsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConditionsIsMutable(); - conditions_.add(index, value); + ensureAllowedPortsIsMutable(); + allowedPorts_.add(index, value); onChanged(); } else { - conditionsBuilder_.addMessage(index, value); + allowedPortsBuilder_.addMessage(index, value); } return this; } @@ -19539,20 +33175,26 @@ public Builder addConditions(int index, com.google.rpc.Status value) { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addConditions(com.google.rpc.Status.Builder builderForValue) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.add(builderForValue.build()); + public Builder addAllowedPorts( + com.google.cloud.workstations.v1.WorkstationConfig.PortRange.Builder builderForValue) { + if (allowedPortsBuilder_ == null) { + ensureAllowedPortsIsMutable(); + allowedPorts_.add(builderForValue.build()); onChanged(); } else { - conditionsBuilder_.addMessage(builderForValue.build()); + allowedPortsBuilder_.addMessage(builderForValue.build()); } return this; } @@ -19561,20 +33203,27 @@ public Builder addConditions(com.google.rpc.Status.Builder builderForValue) { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addConditions(int index, com.google.rpc.Status.Builder builderForValue) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.add(index, builderForValue.build()); + public Builder addAllowedPorts( + int index, + com.google.cloud.workstations.v1.WorkstationConfig.PortRange.Builder builderForValue) { + if (allowedPortsBuilder_ == null) { + ensureAllowedPortsIsMutable(); + allowedPorts_.add(index, builderForValue.build()); onChanged(); } else { - conditionsBuilder_.addMessage(index, builderForValue.build()); + allowedPortsBuilder_.addMessage(index, builderForValue.build()); } return this; } @@ -19583,20 +33232,27 @@ public Builder addConditions(int index, com.google.rpc.Status.Builder builderFor * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addAllConditions(java.lang.Iterable values) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, conditions_); + public Builder addAllAllowedPorts( + java.lang.Iterable + values) { + if (allowedPortsBuilder_ == null) { + ensureAllowedPortsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, allowedPorts_); onChanged(); } else { - conditionsBuilder_.addAllMessages(values); + allowedPortsBuilder_.addAllMessages(values); } return this; } @@ -19605,20 +33261,25 @@ public Builder addAllConditions(java.lang.Iterable - * Output only. Status conditions describing the current resource state. + * Optional. A list of + * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s + * specifying single ports or ranges of ports that are externally accessible + * in the workstation. Allowed ports must be one of 22, 80, or within range + * 1024-65535. If not specified defaults to ports 22, 80, and ports + * 1024-65535. *
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearConditions() { - if (conditionsBuilder_ == null) { - conditions_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00080000); + public Builder clearAllowedPorts() { + if (allowedPortsBuilder_ == null) { + allowedPorts_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x01000000); onChanged(); } else { - conditionsBuilder_.clear(); + allowedPortsBuilder_.clear(); } return this; } @@ -19627,20 +33288,25 @@ public Builder clearConditions() { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder removeConditions(int index) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.remove(index); + public Builder removeAllowedPorts(int index) { + if (allowedPortsBuilder_ == null) { + ensureAllowedPortsIsMutable(); + allowedPorts_.remove(index); onChanged(); } else { - conditionsBuilder_.remove(index); + allowedPortsBuilder_.remove(index); } return this; } @@ -19649,33 +33315,45 @@ public Builder removeConditions(int index) { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.rpc.Status.Builder getConditionsBuilder(int index) { - return internalGetConditionsFieldBuilder().getBuilder(index); + public com.google.cloud.workstations.v1.WorkstationConfig.PortRange.Builder + getAllowedPortsBuilder(int index) { + return internalGetAllowedPortsFieldBuilder().getBuilder(index); } /** * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { - if (conditionsBuilder_ == null) { - return conditions_.get(index); + public com.google.cloud.workstations.v1.WorkstationConfig.PortRangeOrBuilder + getAllowedPortsOrBuilder(int index) { + if (allowedPortsBuilder_ == null) { + return allowedPorts_.get(index); } else { - return conditionsBuilder_.getMessageOrBuilder(index); + return allowedPortsBuilder_.getMessageOrBuilder(index); } } @@ -19683,18 +33361,25 @@ public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public java.util.List getConditionsOrBuilderList() { - if (conditionsBuilder_ != null) { - return conditionsBuilder_.getMessageOrBuilderList(); + public java.util.List< + ? extends com.google.cloud.workstations.v1.WorkstationConfig.PortRangeOrBuilder> + getAllowedPortsOrBuilderList() { + if (allowedPortsBuilder_ != null) { + return allowedPortsBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(conditions_); + return java.util.Collections.unmodifiableList(allowedPorts_); } } @@ -19702,62 +33387,156 @@ public java.util.List getConditionsOrB * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.rpc.Status.Builder addConditionsBuilder() { - return internalGetConditionsFieldBuilder() - .addBuilder(com.google.rpc.Status.getDefaultInstance()); + public com.google.cloud.workstations.v1.WorkstationConfig.PortRange.Builder + addAllowedPortsBuilder() { + return internalGetAllowedPortsFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1.WorkstationConfig.PortRange.getDefaultInstance()); } /** * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.rpc.Status.Builder addConditionsBuilder(int index) { - return internalGetConditionsFieldBuilder() - .addBuilder(index, com.google.rpc.Status.getDefaultInstance()); + public com.google.cloud.workstations.v1.WorkstationConfig.PortRange.Builder + addAllowedPortsBuilder(int index) { + return internalGetAllowedPortsFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1.WorkstationConfig.PortRange.getDefaultInstance()); } /** * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public java.util.List getConditionsBuilderList() { - return internalGetConditionsFieldBuilder().getBuilderList(); + public java.util.List + getAllowedPortsBuilderList() { + return internalGetAllowedPortsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilder< - com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> - internalGetConditionsFieldBuilder() { - if (conditionsBuilder_ == null) { - conditionsBuilder_ = + com.google.cloud.workstations.v1.WorkstationConfig.PortRange, + com.google.cloud.workstations.v1.WorkstationConfig.PortRange.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.PortRangeOrBuilder> + internalGetAllowedPortsFieldBuilder() { + if (allowedPortsBuilder_ == null) { + allowedPortsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< - com.google.rpc.Status, - com.google.rpc.Status.Builder, - com.google.rpc.StatusOrBuilder>( - conditions_, ((bitField0_ & 0x00080000) != 0), getParentForChildren(), isClean()); - conditions_ = null; + com.google.cloud.workstations.v1.WorkstationConfig.PortRange, + com.google.cloud.workstations.v1.WorkstationConfig.PortRange.Builder, + com.google.cloud.workstations.v1.WorkstationConfig.PortRangeOrBuilder>( + allowedPorts_, ((bitField0_ & 0x01000000) != 0), getParentForChildren(), isClean()); + allowedPorts_ = null; } - return conditionsBuilder_; + return allowedPortsBuilder_; + } + + private boolean grantWorkstationAdminRoleOnCreate_; + + /** + * + * + *
            +     * Optional. Grant creator of a workstation `roles/workstations.policyAdmin`
            +     * role along with `roles/workstations.user` role on the workstation created
            +     * by them. This allows workstation users to share access to either their
            +     * entire workstation, or individual ports. Defaults to false.
            +     * 
            + * + * + * bool grant_workstation_admin_role_on_create = 29 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The grantWorkstationAdminRoleOnCreate. + */ + @java.lang.Override + public boolean getGrantWorkstationAdminRoleOnCreate() { + return grantWorkstationAdminRoleOnCreate_; + } + + /** + * + * + *
            +     * Optional. Grant creator of a workstation `roles/workstations.policyAdmin`
            +     * role along with `roles/workstations.user` role on the workstation created
            +     * by them. This allows workstation users to share access to either their
            +     * entire workstation, or individual ports. Defaults to false.
            +     * 
            + * + * + * bool grant_workstation_admin_role_on_create = 29 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The grantWorkstationAdminRoleOnCreate to set. + * @return This builder for chaining. + */ + public Builder setGrantWorkstationAdminRoleOnCreate(boolean value) { + + grantWorkstationAdminRoleOnCreate_ = value; + bitField0_ |= 0x02000000; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Grant creator of a workstation `roles/workstations.policyAdmin`
            +     * role along with `roles/workstations.user` role on the workstation created
            +     * by them. This allows workstation users to share access to either their
            +     * entire workstation, or individual ports. Defaults to false.
            +     * 
            + * + * + * bool grant_workstation_admin_role_on_create = 29 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearGrantWorkstationAdminRoleOnCreate() { + bitField0_ = (bitField0_ & ~0x02000000); + grantWorkstationAdminRoleOnCreate_ = false; + onChanged(); + return this; } // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1.WorkstationConfig) diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationConfigOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationConfigOrBuilder.java index 725579a99cc1..c23aebce0283 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationConfigOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationConfigOrBuilder.java @@ -30,10 +30,10 @@ public interface WorkstationConfigOrBuilder * * *
            -   * Full name of this workstation configuration.
            +   * Identifier. Full name of this workstation configuration.
                * 
            * - * string name = 1; + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; * * @return The name. */ @@ -43,10 +43,10 @@ public interface WorkstationConfigOrBuilder * * *
            -   * Full name of this workstation configuration.
            +   * Identifier. Full name of this workstation configuration.
                * 
            * - * string name = 1; + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; * * @return The bytes for name. */ @@ -86,7 +86,9 @@ public interface WorkstationConfigOrBuilder * configuration. *
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * * * @return The uid. */ @@ -100,7 +102,9 @@ public interface WorkstationConfigOrBuilder * configuration. *
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * * * @return The bytes for uid. */ @@ -586,6 +590,32 @@ java.lang.String getLabelsOrDefault( */ com.google.protobuf.DurationOrBuilder getRunningTimeoutOrBuilder(); + /** + * + * + *
            +   * Optional. Maximum number of workstations under this configuration a user
            +   * can have `workstations.workstation.use` permission on.
            +   *
            +   * Only enforced on CreateWorkstation API calls on the user issuing the API
            +   * request. Can be overridden by:
            +   *
            +   * - granting a user
            +   * workstations.workstationConfigs.exemptMaxUsableWorkstationLimit permission,
            +   * or
            +   * - having a user with that permission create a workstation and
            +   * granting another user `workstations.workstation.use` permission on
            +   * that workstation.
            +   *
            +   * If not specified, defaults to `0`, which indicates unlimited.
            +   * 
            + * + * int32 max_usable_workstations = 28 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxUsableWorkstations. + */ + int getMaxUsableWorkstations(); + /** * * @@ -699,6 +729,81 @@ com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory getPersis com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryOrBuilder getPersistentDirectoriesOrBuilder(int index); + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List + getEphemeralDirectoriesList(); + + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory getEphemeralDirectories( + int index); + + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getEphemeralDirectoriesCount(); + + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + ? extends com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectoryOrBuilder> + getEphemeralDirectoriesOrBuilderList(); + + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectoryOrBuilder + getEphemeralDirectoriesOrBuilder(int index); + /** * * @@ -1009,10 +1114,10 @@ com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory getPersis * * *
            -   * Output only. Whether this resource is degraded, in which case it may
            -   * require user action to restore full functionality. See also the
            +   * Output only. Whether this workstation configuration is in degraded mode, in
            +   * which case it may require user action to restore full functionality. The
                * [conditions][google.cloud.workstations.v1.WorkstationConfig.conditions]
            -   * field.
            +   * field contains detailed information about the status of the configuration.
                * 
            * * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; @@ -1025,7 +1130,8 @@ com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory getPersis * * *
            -   * Output only. Status conditions describing the current resource state.
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
                * 
            * * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; @@ -1037,7 +1143,8 @@ com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory getPersis * * *
            -   * Output only. Status conditions describing the current resource state.
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
                * 
            * * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; @@ -1049,7 +1156,8 @@ com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory getPersis * * *
            -   * Output only. Status conditions describing the current resource state.
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
                * 
            * * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; @@ -1061,7 +1169,8 @@ com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory getPersis * * *
            -   * Output only. Status conditions describing the current resource state.
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
                * 
            * * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; @@ -1073,11 +1182,166 @@ com.google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory getPersis * * *
            -   * Output only. Status conditions describing the current resource state.
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
                * 
            * * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index); + + /** + * + * + *
            +   * Optional. Whether to enable Linux `auditd` logging on the workstation. When
            +   * enabled, a
            +   * [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account]
            +   * must also be specified that has `roles/logging.logWriter` and
            +   * `roles/monitoring.metricWriter` on the project. Operating system audit
            +   * logging is distinct from [Cloud Audit
            +   * Logs](https://cloud.google.com/workstations/docs/audit-logging) and
            +   * [Container output
            +   * logging](https://cloud.google.com/workstations/docs/container-output-logging#overview).
            +   * Operating system audit logs are available in the
            +   * [Cloud Logging](https://cloud.google.com/logging/docs) console by querying:
            +   *
            +   * resource.type="gce_instance"
            +   * log_name:"/logs/linux-auditd"
            +   * 
            + * + * bool enable_audit_agent = 20 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enableAuditAgent. + */ + boolean getEnableAuditAgent(); + + /** + * + * + *
            +   * Optional. Disables support for plain TCP connections in the workstation.
            +   * By default the service supports TCP connections through a websocket relay.
            +   * Setting this option to true disables that relay, which prevents the usage
            +   * of services that require plain TCP connections, such as SSH.
            +   * When enabled, all communication must occur over HTTPS or WSS.
            +   * 
            + * + * bool disable_tcp_connections = 24 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The disableTcpConnections. + */ + boolean getDisableTcpConnections(); + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List + getAllowedPortsList(); + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1.WorkstationConfig.PortRange getAllowedPorts(int index); + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getAllowedPortsCount(); + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List + getAllowedPortsOrBuilderList(); + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1.WorkstationConfig.PortRangeOrBuilder getAllowedPortsOrBuilder( + int index); + + /** + * + * + *
            +   * Optional. Grant creator of a workstation `roles/workstations.policyAdmin`
            +   * role along with `roles/workstations.user` role on the workstation created
            +   * by them. This allows workstation users to share access to either their
            +   * entire workstation, or individual ports. Defaults to false.
            +   * 
            + * + * + * bool grant_workstation_admin_role_on_create = 29 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The grantWorkstationAdminRoleOnCreate. + */ + boolean getGrantWorkstationAdminRoleOnCreate(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationOrBuilder.java index 95adbe0453fc..b46a0e99ffd3 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationOrBuilder.java @@ -30,10 +30,10 @@ public interface WorkstationOrBuilder * * *
            -   * Full name of this workstation.
            +   * Identifier. Full name of this workstation.
                * 
            * - * string name = 1; + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; * * @return The name. */ @@ -43,10 +43,10 @@ public interface WorkstationOrBuilder * * *
            -   * Full name of this workstation.
            +   * Identifier. Full name of this workstation.
                * 
            * - * string name = 1; + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; * * @return The bytes for name. */ @@ -85,7 +85,9 @@ public interface WorkstationOrBuilder * Output only. A system-assigned unique identifier for this workstation. *
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * * * @return The uid. */ @@ -98,7 +100,9 @@ public interface WorkstationOrBuilder * Output only. A system-assigned unique identifier for this workstation. *
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * * * @return The bytes for uid. */ @@ -457,6 +461,77 @@ java.lang.String getLabelsOrDefault( */ com.google.protobuf.ByteString getEtagBytes(); + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List + getPersistentDirectoriesList(); + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory + getPersistentDirectories(int index); + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getPersistentDirectoriesCount(); + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + ? extends + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectoryOrBuilder> + getPersistentDirectoriesOrBuilderList(); + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1.Workstation.WorkstationPersistentDirectoryOrBuilder + getPersistentDirectoriesOrBuilder(int index); + /** * * @@ -520,4 +595,178 @@ java.lang.String getLabelsOrDefault( * @return The bytes for host. */ com.google.protobuf.ByteString getHostBytes(); + + /** + * + * + *
            +   * Optional. Environment variables passed to the workstation container's
            +   * entrypoint.
            +   * 
            + * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + */ + int getEnvCount(); + + /** + * + * + *
            +   * Optional. Environment variables passed to the workstation container's
            +   * entrypoint.
            +   * 
            + * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + */ + boolean containsEnv(java.lang.String key); + + /** Use {@link #getEnvMap()} instead. */ + @java.lang.Deprecated + java.util.Map getEnv(); + + /** + * + * + *
            +   * Optional. Environment variables passed to the workstation container's
            +   * entrypoint.
            +   * 
            + * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + */ + java.util.Map getEnvMap(); + + /** + * + * + *
            +   * Optional. Environment variables passed to the workstation container's
            +   * entrypoint.
            +   * 
            + * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + */ + /* nullable */ + java.lang.String getEnvOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue); + + /** + * + * + *
            +   * Optional. Environment variables passed to the workstation container's
            +   * entrypoint.
            +   * 
            + * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + */ + java.lang.String getEnvOrThrow(java.lang.String key); + + /** + * + * + *
            +   * Output only. The name of the Google Cloud KMS encryption key used to
            +   * encrypt this workstation. The KMS key can only be configured in the
            +   * WorkstationConfig. The expected format is
            +   * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
            +   * 
            + * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The kmsKey. + */ + java.lang.String getKmsKey(); + + /** + * + * + *
            +   * Output only. The name of the Google Cloud KMS encryption key used to
            +   * encrypt this workstation. The KMS key can only be configured in the
            +   * WorkstationConfig. The expected format is
            +   * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
            +   * 
            + * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for kmsKey. + */ + com.google.protobuf.ByteString getKmsKeyBytes(); + + /** + * + * + *
            +   * Optional. The source workstation from which this workstation's persistent
            +   * directories were cloned on creation.
            +   * 
            + * + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceWorkstation. + */ + java.lang.String getSourceWorkstation(); + + /** + * + * + *
            +   * Optional. The source workstation from which this workstation's persistent
            +   * directories were cloned on creation.
            +   * 
            + * + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceWorkstation. + */ + com.google.protobuf.ByteString getSourceWorkstationBytes(); + + /** + * + * + *
            +   * Optional. Output only. Runtime host for the workstation when in
            +   * STATE_RUNNING.
            +   * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the runtimeHost field is set. + */ + boolean hasRuntimeHost(); + + /** + * + * + *
            +   * Optional. Output only. Runtime host for the workstation when in
            +   * STATE_RUNNING.
            +   * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The runtimeHost. + */ + com.google.cloud.workstations.v1.Workstation.RuntimeHost getRuntimeHost(); + + /** + * + * + *
            +   * Optional. Output only. Runtime host for the workstation when in
            +   * STATE_RUNNING.
            +   * 
            + * + * + * .google.cloud.workstations.v1.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.cloud.workstations.v1.Workstation.RuntimeHostOrBuilder getRuntimeHostOrBuilder(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationsProto.java b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationsProto.java index 4db7f7d276a3..854553c7fb33 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationsProto.java +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/java/com/google/cloud/workstations/v1/WorkstationsProto.java @@ -48,6 +48,14 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_workstations_v1_WorkstationCluster_PrivateClusterConfig_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_workstations_v1_WorkstationCluster_PrivateClusterConfig_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_WorkstationCluster_DomainConfig_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_WorkstationCluster_DomainConfig_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_WorkstationCluster_GatewayConfig_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_WorkstationCluster_GatewayConfig_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_workstations_v1_WorkstationCluster_AnnotationsEntry_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -56,6 +64,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_workstations_v1_WorkstationCluster_LabelsEntry_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_workstations_v1_WorkstationCluster_LabelsEntry_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_WorkstationCluster_TagsEntry_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_WorkstationCluster_TagsEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -76,6 +88,22 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_GceConfidentialInstanceConfig_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_GceConfidentialInstanceConfig_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_Accelerator_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_Accelerator_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_BoostConfig_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_BoostConfig_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_VmTagsEntry_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_VmTagsEntry_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_InstanceMetadataEntry_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_InstanceMetadataEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -84,6 +112,18 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -100,6 +140,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_WorkstationConfig_PortRange_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_WorkstationConfig_PortRange_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_workstations_v1_WorkstationConfig_AnnotationsEntry_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -112,6 +156,18 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_workstations_v1_Workstation_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_workstations_v1_Workstation_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_Workstation_WorkstationPersistentDirectory_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_Workstation_WorkstationPersistentDirectory_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_GceInstanceHost_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_GceInstanceHost_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_workstations_v1_Workstation_AnnotationsEntry_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -120,6 +176,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_workstations_v1_Workstation_LabelsEntry_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_workstations_v1_Workstation_LabelsEntry_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1_Workstation_EnvEntry_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1_Workstation_EnvEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_workstations_v1_GetWorkstationClusterRequest_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -242,20 +302,20 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "ons.proto\022\034google.cloud.workstations.v1\032" + "\034google/api/annotations.proto\032\027google/ap" + "i/client.proto\032\037google/api/field_behavio" - + "r.proto\032\031google/api/resource.proto\032#goog" - + "le/longrunning/operations.proto\032\036google/protobuf/duration.proto\032" - + " google/protobuf" - + "/field_mask.proto\032\037google/protobuf/timestamp.proto\032\027google/rpc/status.proto\"\207" - + "\t\n" - + "\022WorkstationCluster\022\014\n" - + "\004name\030\001 \001(\t\022\031\n" - + "\014display_name\030\002 \001(\tB\003\340A\001\022\020\n" - + "\003uid\030\003 \001(\tB\003\340A\003\022\030\n" + + "r.proto\032\033google/api/field_info.proto\032\031go" + + "ogle/api/resource.proto\032#google/longrunn" + + "ing/operations.proto\032\036google/protobuf/duration.proto\032" + + " google/protobuf/field_mask" + + ".proto\032\037google/protobuf/timestamp.proto\032\027google/rpc/status.proto\"\361\014\n" + + "\022WorkstationCluster\022\021\n" + + "\004name\030\001 \001(\tB\003\340A\010\022\031\n" + + "\014display_name\030\002 \001(\tB\003\340A\001\022\030\n" + + "\003uid\030\003 \001(\tB\013\340A\003\342\214\317\327\010\002\010\001\022\030\n" + "\013reconciling\030\004 \001(\010B\003\340A\003\022[\n" - + "\013annotations\030\005" - + " \003(\0132A.google.cloud.workstations.v1.WorkstationCluster.AnnotationsEntryB\003\340A\001\022Q\n" - + "\006labels\030\017 \003(\0132<.google.cloud.workstations" - + ".v1.WorkstationCluster.LabelsEntryB\003\340A\001\0224\n" + + "\013annotations\030\005 \003(\0132A.google.cloud.workstations.v1.Wo" + + "rkstationCluster.AnnotationsEntryB\003\340A\001\022Q\n" + + "\006labels\030\017 \003(\0132<.google.cloud.workstatio" + + "ns.v1.WorkstationCluster.LabelsEntryB\003\340A\001\0224\n" + "\013create_time\030\006 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0224\n" + "\013update_time\030\007 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0224\n" + "\013delete_time\030\010" @@ -265,34 +325,49 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + " \001(\tB\003\340A\005\022\027\n\n" + "subnetwork\030\013 \001(\tB\003\340A\005\022\035\n" + "\020control_plane_ip\030\020 \001(\tB\003\340A\003\022j\n" - + "\026private_cluster_config\030\014 \001(\0132E.google.cloud.workstations.v" - + "1.WorkstationCluster.PrivateClusterConfigB\003\340A\001\022\025\n" + + "\026private_cluster_config\030\014 \001(\0132E.google.cloud.workstations" + + ".v1.WorkstationCluster.PrivateClusterConfigB\003\340A\001\022Y\n\r" + + "domain_config\030\021 \001(\0132=.google" + + ".cloud.workstations.v1.WorkstationCluster.DomainConfigB\003\340A\001\022\025\n" + "\010degraded\030\r" + " \001(\010B\003\340A\003\022+\n\n" - + "conditions\030\016 \003(\0132\022.google.rpc.StatusB\003\340A\003\032\237\001\n" + + "conditions\030\016 \003(\0132\022.google.rpc.StatusB\003\340A\003\022S\n" + + "\004tags\030\024 \003(\0132:.google.cloud.wor" + + "kstations.v1.WorkstationCluster.TagsEntryB\t\340A\004\340A\005\340A\001\022[\n" + + "\016gateway_config\030\025 \001(\0132>.g" + + "oogle.cloud.workstations.v1.WorkstationCluster.GatewayConfigB\003\340A\001\022*\n" + + "\035workstation_authorization_url\030\026 \001(\tB\003\340A\001\022#\n" + + "\026workstation_launch_url\030\027 \001(\tB\003\340A\001\032\237\001\n" + "\024PrivateClusterConfig\022$\n" + "\027enable_private_endpoint\030\001 \001(\010B\003\340A\005\022\035\n" + "\020cluster_hostname\030\002 \001(\tB\003\340A\003\022#\n" + "\026service_attachment_uri\030\003 \001(\tB\003\340A\003\022\035\n" - + "\020allowed_projects\030\004 \003(\tB\003\340A\001\0322\n" + + "\020allowed_projects\030\004 \003(\tB\003\340A\001\032#\n" + + "\014DomainConfig\022\023\n" + + "\006domain\030\001 \001(\tB\003\340A\005\032+\n\r" + + "GatewayConfig\022\032\n\r" + + "http2_enabled\030\001 \001(\010B\003\340A\001\0322\n" + "\020AnnotationsEntry\022\013\n" + "\003key\030\001 \001(\t\022\r\n" + "\005value\030\002 \001(\t:\0028\001\032-\n" + "\013LabelsEntry\022\013\n" + "\003key\030\001 \001(\t\022\r\n" + + "\005value\030\002 \001(\t:\0028\001\032+\n" + + "\tTagsEntry\022\013\n" + + "\003key\030\001 \001(\t\022\r\n" + "\005value\030\002 \001(\t:\0028\001:\263\001\352A\257\001\n" - + ".workstations.googleapis.com/WorkstationCluster\022Qprojects" - + "/{project}/locations/{location}/workstationClusters/{workstation_cluster}*\023works" - + "tationClusters2\022workstationClusterR\001\001\"\262\031\n" - + "\021WorkstationConfig\022\014\n" - + "\004name\030\001 \001(\t\022\031\n" - + "\014display_name\030\002 \001(\tB\003\340A\001\022\020\n" - + "\003uid\030\003 \001(\tB\003\340A\003\022\030\n" + + ".workstations.googleapis.com/WorkstationCluster\022Qprojects/" + + "{project}/locations/{location}/workstati" + + "onClusters/{workstation_cluster}*\023workstationClusters2\022workstationClusterR\001\001\"\352*\n" + + "\021WorkstationConfig\022\021\n" + + "\004name\030\001 \001(\tB\003\340A\010\022\031\n" + + "\014display_name\030\002 \001(\tB\003\340A\001\022\030\n" + + "\003uid\030\003 \001(\tB\013\340A\003\342\214\317\327\010\002\010\001\022\030\n" + "\013reconciling\030\004 \001(\010B\003\340A\003\022Z\n" - + "\013annotations\030\005" - + " \003(\0132@.google.cloud.workstations.v1.WorkstationConfig.AnnotationsEntryB\003\340A\001\022P\n" - + "\006labels\030\022 \003(\0132;.google.cloud.workstations" - + ".v1.WorkstationConfig.LabelsEntryB\003\340A\001\0224\n" + + "\013annotations\030\005 \003(\0132@.google.cloud.worksta" + + "tions.v1.WorkstationConfig.AnnotationsEntryB\003\340A\001\022P\n" + + "\006labels\030\022 \003(\0132;.google.cloud." + + "workstations.v1.WorkstationConfig.LabelsEntryB\003\340A\001\0224\n" + "\013create_time\030\006 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0224\n" + "\013update_time\030\007 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0224\n" + "\013delete_time\030\010" @@ -301,24 +376,32 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\014idle_timeout\030\n" + " \001(\0132\031.google.protobuf.DurationB\003\340A\001\0227\n" + "\017running_timeout\030\013" - + " \001(\0132\031.google.protobuf.DurationB\003\340A\001\022G\n" - + "\004host\030\014 \001(\01324.google.cloud." - + "workstations.v1.WorkstationConfig.HostB\003\340A\001\022h\n" + + " \001(\0132\031.google.protobuf.DurationB\003\340A\001\022$\n" + + "\027max_usable_workstations\030\034 \001(\005B\003\340A\001\022G\n" + + "\004host\030\014 \001(\01324.goo" + + "gle.cloud.workstations.v1.WorkstationConfig.HostB\003\340A\001\022h\n" + "\026persistent_directories\030\r" - + " \003(\0132C.go" - + "ogle.cloud.workstations.v1.WorkstationConfig.PersistentDirectoryB\003\340A\001\022Q\n" - + "\tcontainer\030\016" - + " \001(\01329.google.cloud.workstations.v1.WorkstationConfig.ContainerB\003\340A\001\022b\n" - + "\016encryption_key\030\021 \001(\0132E.google.cloud.workstat" - + "ions.v1.WorkstationConfig.CustomerEncryptionKeyB\003\340A\005\022]\n" - + "\020readiness_checks\030\023 \003(\0132>" - + ".google.cloud.workstations.v1.WorkstationConfig.ReadinessCheckB\003\340A\001\022\035\n\r" + + " \003(\0132C.google.cloud.workstations.v1.Wor" + + "kstationConfig.PersistentDirectoryB\003\340A\001\022f\n" + + "\025ephemeral_directories\030\026 \003(\0132B.google." + + "cloud.workstations.v1.WorkstationConfig.EphemeralDirectoryB\003\340A\001\022Q\n" + + "\tcontainer\030\016 \001" + + "(\01329.google.cloud.workstations.v1.WorkstationConfig.ContainerB\003\340A\001\022b\n" + + "\016encryption_key\030\021 \001(\0132E.google.cloud.workstations.v" + + "1.WorkstationConfig.CustomerEncryptionKeyB\003\340A\005\022]\n" + + "\020readiness_checks\030\023 \003(\0132>.googl" + + "e.cloud.workstations.v1.WorkstationConfig.ReadinessCheckB\003\340A\001\022\035\n\r" + "replica_zones\030\027 \003(\tB\006\340A\001\340A\005\022\025\n" + "\010degraded\030\017 \001(\010B\003\340A\003\022+\n\n" - + "conditions\030\020 \003(\0132\022.google.rpc.StatusB\003\340A\003\032\365\006\n" + + "conditions\030\020 \003(\0132\022.google.rpc.StatusB\003\340A\003\022\037\n" + + "\022enable_audit_agent\030\024 \001(\010B\003\340A\001\022$\n" + + "\027disable_tcp_connections\030\030 \001(\010B\003\340A\001\022U\n\r" + + "allowed_ports\030\031 \003(\01329.google.cloud.workstatio" + + "ns.v1.WorkstationConfig.PortRangeB\003\340A\001\0223\n" + + "&grant_workstation_admin_role_on_create\030\035 \001(\010B\003\340A\001\032\205\016\n" + "\004Host\022X\n" - + "\014gce_instance\030\001 \001(\0132@." - + "google.cloud.workstations.v1.WorkstationConfig.Host.GceInstanceH\000\032\210\006\n" + + "\014gce_instance\030\001 \001" + + "(\0132@.google.cloud.workstations.v1.WorkstationConfig.Host.GceInstanceH\000\032\230\r\n" + "\013GceInstance\022\031\n" + "\014machine_type\030\001 \001(\tB\003\340A\001\022\034\n" + "\017service_account\030\002 \001(\tB\003\340A\001\022#\n" @@ -328,42 +411,97 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\020pooled_instances\030\014 \001(\005B\003\340A\003\022(\n" + "\033disable_public_ip_addresses\030\006 \001(\010B\003\340A\001\022)\n" + "\034enable_nested_virtualization\030\007 \001(\010B\003\340A\001\022\201\001\n" - + "\030shielded_instance_config\030\010 \001(\0132Z.google.cloud.workstations.v1" - + ".WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfigB\003\340A\001\022\211\001\n" + + "\030shielded_instance_config\030\010 \001(\0132Z.google.cloud.workstatio" + + "ns.v1.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfigB\003\340A\001\022\211\001\n" + "\034confidential_instance_config\030\n" - + " \001(\0132^.google.cloud.workstations.v1.WorkstationConfig.Host." - + "GceInstance.GceConfidentialInstanceConfigB\003\340A\001\022\036\n" - + "\021boot_disk_size_gb\030\t \001(\005B\003\340A\001\032\200\001\n" + + " \001(\0132^.google.cloud.workstations.v1.WorkstationConfig." + + "Host.GceInstance.GceConfidentialInstanceConfigB\003\340A\001\022\036\n" + + "\021boot_disk_size_gb\030\t \001(\005B\003\340A\001\022g\n" + + "\014accelerators\030\013 \003(\0132L.google.cloud" + + ".workstations.v1.WorkstationConfig.Host.GceInstance.AcceleratorB\003\340A\001\022h\n\r" + + "boost_configs\030\031 \003(\0132L.google.cloud.workstations." + + "v1.WorkstationConfig.Host.GceInstance.BoostConfigB\003\340A\001\022\030\n" + + "\013disable_ssh\030\r" + + " \001(\010B\003\340A\001\022b\n" + + "\007vm_tags\030\016 \003(\0132L.google.cloud.worksta" + + "tions.v1.WorkstationConfig.Host.GceInstance.VmTagsEntryB\003\340A\001\022\037\n" + + "\022startup_script_uri\030\032 \001(\tB\003\340A\001\022v\n" + + "\021instance_metadata\030\033 \003(\0132V.google.cloud.workstations.v1.Workstat" + + "ionConfig.Host.GceInstance.InstanceMetadataEntryB\003\340A\001\032\200\001\n" + "\031GceShieldedInstanceConfig\022\037\n" + "\022enable_secure_boot\030\001 \001(\010B\003\340A\001\022\030\n" + "\013enable_vtpm\030\002 \001(\010B\003\340A\001\022(\n" + "\033enable_integrity_monitoring\030\003 \001(\010B\003\340A\001\032I\n" + "\035GceConfidentialInstanceConfig\022(\n" - + "\033enable_confidential_compute\030\001 \001(\010B\003\340A\001B\010\n" - + "\006config\032\205\004\n" + + "\033enable_confidential_compute\030\001 \001(\010B\003\340A\001\0324\n" + + "\013Accelerator\022\021\n" + + "\004type\030\001 \001(\tB\003\340A\001\022\022\n" + + "\005count\030\002 \001(\005B\003\340A\001\032\205\002\n" + + "\013BoostConfig\022\017\n" + + "\002id\030\001 \001(\tB\003\340A\002\022\031\n" + + "\014machine_type\030\002 \001(\tB\003\340A\001\022g\n" + + "\014accelerators\030\003 \003(\0132L.google.cloud.workstations.v1.WorkstationCo" + + "nfig.Host.GceInstance.AcceleratorB\003\340A\001\022\036\n" + + "\021boot_disk_size_gb\030\004 \001(\005B\003\340A\001\022)\n" + + "\034enable_nested_virtualization\030\007 \001(\010B\003\340A\001\022\026\n" + + "\tpool_size\030\005 \001(\005B\003\340A\001\032-\n" + + "\013VmTagsEntry\022\013\n" + + "\003key\030\001 \001(\t\022\r\n" + + "\005value\030\002 \001(\t:\0028\001\0327\n" + + "\025InstanceMetadataEntry\022\013\n" + + "\003key\030\001 \001(\t\022\r\n" + + "\005value\030\002 \001(\t:\0028\001B\010\n" + + "\006config\032\343\010\n" + "\023PersistentDirectory\022o\n" - + "\006gce_pd\030\002 \001(\0132].google.cloud.workstatio" - + "ns.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDiskH\000\022\027\n\n" - + "mount_path\030\001 \001(\tB\003\340A\001\032\321\002\n" + + "\006gce_pd\030\002 \001(\0132].google.cloud.workstations." + + "v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDiskH\000\022z\n" + + "\006gce_hd\030\003 \001(\0132h.google.cloud.workstations.v1.Work" + + "stationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailabilityH\000\022\027\n\n" + + "mount_path\030\001 \001(\tB\003\340A\001\032\244\003\n" + "\031GceRegionalPersistentDisk\022\024\n" - + "\007size_gb\030\001 \001(\005B\003\340A\001\022\024\n" + + "\007size_gb\030\001 \001(\005B\003\340A\001\022\030\n" + + "\013max_size_gb\030\007 \001(\005B\003\340A\001\022\024\n" + "\007fs_type\030\002 \001(\tB\003\340A\001\022\026\n" + "\tdisk_type\030\003 \001(\tB\003\340A\001\022\034\n" + "\017source_snapshot\030\005 \001(\tB\003\340A\001\022\210\001\n" - + "\016reclaim_policy\030\004 \001(\0162k.google.cloud.workstations.v1" - + ".WorkstationConfig.PersistentDirectory.G" - + "ceRegionalPersistentDisk.ReclaimPolicyB\003\340A\001\"G\n\r" + + "\016reclaim_policy\030\004 \001(\0162k.google.cloud.workstations.v1.WorkstationC" + + "onfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicyB\003\340A\001\0227\n" + + "\017archive_timeout\030\006" + + " \001(\0132\031.google.protobuf.DurationB\003\340A\001\"G\n\r" + + "ReclaimPolicy\022\036\n" + + "\032RECLAIM_POLICY_UNSPECIFIED\020\000\022\n\n" + + "\006DELETE\020\001\022\n\n" + + "\006RETAIN\020\002\032\214\003\n" + + "$GceHyperdiskBalancedHighAvailability\022\024\n" + + "\007size_gb\030\001 \001(\005B\003\340A\001\022\030\n" + + "\013max_size_gb\030\005 \001(\005B\003\340A\001\022\034\n" + + "\017source_snapshot\030\002 \001(\tB\003\340A\001\022\223\001\n" + + "\016reclaim_policy\030\003 \001(\0162v.google.cloud." + + "workstations.v1.WorkstationConfig.Persis" + + "tentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicyB\003\340A\001\0227\n" + + "\017archive_timeout\030\004" + + " \001(\0132\031.google.protobuf.DurationB\003\340A\001\"G\n\r" + "ReclaimPolicy\022\036\n" + "\032RECLAIM_POLICY_UNSPECIFIED\020\000\022\n\n" + "\006DELETE\020\001\022\n\n" + "\006RETAIN\020\002B\020\n" + + "\016directory_type\032\245\002\n" + + "\022EphemeralDirectory\022f\n" + + "\006gce_pd\030\003 \001(\0132T.google.cloud.workstat" + + "ions.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDiskH\000\022\027\n\n" + + "mount_path\030\001 \001(\tB\003\340A\002\032|\n" + + "\021GcePersistentDisk\022\026\n" + + "\tdisk_type\030\001 \001(\tB\003\340A\001\022\034\n" + + "\017source_snapshot\030\002 \001(\tB\003\340A\001\022\031\n" + + "\014source_image\030\003 \001(\tB\003\340A\001\022\026\n" + + "\tread_only\030\004 \001(\010B\003\340A\001B\020\n" + "\016directory_type\032\376\001\n" + "\tContainer\022\022\n" + "\005image\030\001 \001(\tB\003\340A\001\022\024\n" + "\007command\030\002 \003(\tB\003\340A\001\022\021\n" + "\004args\030\003 \003(\tB\003\340A\001\022T\n" - + "\003env\030\004 \003(\0132B.google.cloud.wo" - + "rkstations.v1.WorkstationConfig.Container.EnvEntryB\003\340A\001\022\030\n" + + "\003env\030\004 \003(" + + "\0132B.google.cloud.workstations.v1.WorkstationConfig.Container.EnvEntryB\003\340A\001\022\030\n" + "\013working_dir\030\005 \001(\tB\003\340A\001\022\030\n" + "\013run_as_user\030\006 \001(\005B\003\340A\001\032*\n" + "\010EnvEntry\022\013\n" @@ -375,22 +513,26 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\016ReadinessCheck\022\021\n" + "\004path\030\001 \001(\tB\003\340A\001\022\021\n" + "\004port\030\002 \001(\005B\003\340A\001\0322\n" + + "\tPortRange\022\022\n" + + "\005first\030\001 \001(\005B\003\340A\002\022\021\n" + + "\004last\030\002 \001(\005B\003\340A\002\0322\n" + "\020AnnotationsEntry\022\013\n" + "\003key\030\001 \001(\t\022\r\n" + "\005value\030\002 \001(\t:\0028\001\032-\n" + "\013LabelsEntry\022\013\n" + "\003key\030\001 \001(\t\022\r\n" + "\005value\030\002 \001(\t:\0028\001:\330\001\352A\324\001\n" - + "-workstations.googleapis.com/WorkstationConfig\022yprojects/{project}/locations/{loc" - + "ation}/workstationClusters/{workstation_cluster}/workstationConfigs/{workstation" - + "_config}*\022workstationConfigs2\021workstationConfigR\001\001\"\374\007\n" - + "\013Workstation\022\014\n" - + "\004name\030\001 \001(\t\022\031\n" - + "\014display_name\030\002 \001(\tB\003\340A\001\022\020\n" - + "\003uid\030\003 \001(\tB\003\340A\003\022\030\n" + + "-workstations.googleapis.com/WorkstationConfig\022ypr" + + "ojects/{project}/locations/{location}/workstationClusters/{workstation_cluster}/" + + "workstationConfigs/{workstation_config}*" + + "\022workstationConfigs2\021workstationConfigR\001\001\"\233\r\n" + + "\013Workstation\022\021\n" + + "\004name\030\001 \001(\tB\003\340A\010\022\031\n" + + "\014display_name\030\002 \001(\tB\003\340A\001\022\030\n" + + "\003uid\030\003 \001(\tB\013\340A\003\342\214\317\327\010\002\010\001\022\030\n" + "\013reconciling\030\004 \001(\010B\003\340A\003\022T\n" - + "\013annotations\030\005" - + " \003(\0132:.google.cloud.workstations.v1.Workstation.AnnotationsEntryB\003\340A\001\022J\n" + + "\013annotations\030\005 \003(\0132:.google.cloud.workstat" + + "ions.v1.Workstation.AnnotationsEntryB\003\340A\001\022J\n" + "\006labels\030\r" + " \003(\01325.google.cloud.workstations.v1.Workstation.LabelsEntryB\003\340A\001\0224\n" + "\013create_time\030\006 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0224\n" @@ -399,15 +541,37 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "start_time\030\016 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0224\n" + "\013delete_time\030\010" + " \001(\0132\032.google.protobuf.TimestampB\003\340A\003\022\021\n" - + "\004etag\030\t \001(\tB\003\340A\001\022C\n" + + "\004etag\030\t \001(\tB\003\340A\001\022m\n" + + "\026persistent_directories\030\031 \003(\0132H.google.cloud.w" + + "orkstations.v1.Workstation.WorkstationPersistentDirectoryB\003\340A\001\022C\n" + "\005state\030\n" + " \001(\0162/.google.cloud.workstations.v1.Workstation.StateB\003\340A\003\022\021\n" - + "\004host\030\013 \001(\tB\003\340A\003\0322\n" + + "\004host\030\013 \001(\tB\003\340A\003\022D\n" + + "\003env\030\014 " + + "\003(\01322.google.cloud.workstations.v1.Workstation.EnvEntryB\003\340A\001\022\024\n" + + "\007kms_key\030\017 \001(\tB\003\340A\003\022\037\n" + + "\022source_workstation\030\021 \001(\tB\003\340A\001\022S\n" + + "\014runtime_host\030\025 \001(\01325.google.cloud.worksta" + + "tions.v1.Workstation.RuntimeHostB\006\340A\001\340A\003\032O\n" + + "\036WorkstationPersistentDirectory\022\027\n\n" + + "mount_path\030\002 \001(\tB\003\340A\001\022\024\n" + + "\007size_gb\030\003 \001(\005B\003\340A\001\032\321\001\n" + + "\013RuntimeHost\022b\n" + + "\021gce_instance_host\030\001" + + " \001(\0132E.google.cloud.workstations.v1.Workstation.RuntimeHost.GceInstanceHostH\000\032Q\n" + + "\017GceInstanceHost\022\024\n" + + "\004name\030\001 \001(\tB\006\340A\001\340A\003\022\022\n" + + "\002id\030\002 \001(\tB\006\340A\001\340A\003\022\024\n" + + "\004zone\030\003 \001(\tB\006\340A\001\340A\003B\013\n" + + "\thost_type\0322\n" + "\020AnnotationsEntry\022\013\n" + "\003key\030\001 \001(\t\022\r\n" + "\005value\030\002 \001(\t:\0028\001\032-\n" + "\013LabelsEntry\022\013\n" + "\003key\030\001 \001(\t\022\r\n" + + "\005value\030\002 \001(\t:\0028\001\032*\n" + + "\010EnvEntry\022\013\n" + + "\003key\030\001 \001(\t\022\r\n" + "\005value\030\002 \001(\t:\0028\001\"l\n" + "\005State\022\025\n" + "\021STATE_UNSPECIFIED\020\000\022\022\n" @@ -415,28 +579,30 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "STATE_RUNNING\020\002\022\022\n" + "\016STATE_STOPPING\020\003\022\021\n\r" + "STATE_STOPPED\020\004:\342\001\352A\336\001\n" - + "\'workstations.googleapis.com/Workstation\022\224\001projects/{project}/locati" - + "ons/{location}/workstationClusters/{workstation_cluster}/workstationConfigs/{wor" - + "kstation_config}/workstations/{workstation}*\014workstations2\013workstationR\001\001\"d\n" + + "\'workstations.googleapis.com/Workstation\022\224\001pro" + + "jects/{project}/locations/{location}/workstationClusters/{workstation_cluster}/w" + + "orkstationConfigs/{workstation_config}/w" + + "orkstations/{workstation}*\014workstations2\013workstationR\001\001\"d\n" + "\034GetWorkstationClusterRequest\022D\n" + "\004name\030\001 \001(\tB6\340A\002\372A0\n" - + ".workstations.googleapis.com/WorkstationCluster\"\231\001\n" + + ".workstations.googleapis.com/WorkstationCluster\"\256\001\n" + "\036ListWorkstationClustersRequest\022F\n" - + "\006parent\030\001 \001(\tB6\340A\002\372A0\022.work" - + "stations.googleapis.com/WorkstationCluster\022\026\n" + + "\006parent\030\001 \001(" + + "\tB6\340A\002\372A0\022.workstations.googleapis.com/WorkstationCluster\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\"\237\001\n" + + "page_token\030\003 \001(\tB\003\340A\001\022\023\n" + + "\006filter\030\004 \001(\tB\003\340A\001\"\237\001\n" + "\037ListWorkstationClustersResponse\022N\n" - + "\024workstation_clusters\030\001 \003(\01320." - + "google.cloud.workstations.v1.WorkstationCluster\022\027\n" + + "\024workstation_clusters\030\001 \003(\013" + + "20.google.cloud.workstations.v1.WorkstationCluster\022\027\n" + "\017next_page_token\030\002 \001(\t\022\023\n" + "\013unreachable\030\003 \003(\t\"\376\001\n" + "\037CreateWorkstationClusterRequest\022F\n" - + "\006parent\030\001 \001(\tB6\340A\002\372A0\022.works" - + "tations.googleapis.com/WorkstationCluster\022#\n" + + "\006parent\030\001 \001(\tB6\340A\002\372A0\022.wo" + + "rkstations.googleapis.com/WorkstationCluster\022#\n" + "\026workstation_cluster_id\030\002 \001(\tB\003\340A\002\022R\n" - + "\023workstation_cluster\030\003 \001(\01320.google.clo" - + "ud.workstations.v1.WorkstationClusterB\003\340A\002\022\032\n\r" + + "\023workstation_cluster\030\003 \001(\01320.google." + + "cloud.workstations.v1.WorkstationClusterB\003\340A\002\022\032\n\r" + "validate_only\030\004 \001(\010B\003\340A\001\"\343\001\n" + "\037UpdateWorkstationClusterRequest\022R\n" + "\023workstation_cluster\030\001" @@ -453,15 +619,16 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\005force\030\004 \001(\010B\003\340A\001\"b\n" + "\033GetWorkstationConfigRequest\022C\n" + "\004name\030\001 \001(\tB5\340A\002\372A/\n" - + "-workstations.googleapis.com/WorkstationConfig\"\230\001\n" + + "-workstations.googleapis.com/WorkstationConfig\"\255\001\n" + "\035ListWorkstationConfigsRequest\022F\n" + "\006parent\030\001 \001(\tB6\340A\002\372A0\n" + ".workstations.googleapis.com/WorkstationCluster\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\"\234\001\n" + + "page_token\030\003 \001(\tB\003\340A\001\022\023\n" + + "\006filter\030\004 \001(\tB\003\340A\001\"\234\001\n" + "\036ListWorkstationConfigsResponse\022L\n" - + "\023workstation_configs\030\001 \003(\0132/.googl" - + "e.cloud.workstations.v1.WorkstationConfig\022\027\n" + + "\023workstation_configs\030\001" + + " \003(\0132/.google.cloud.workstations.v1.WorkstationConfig\022\027\n" + "\017next_page_token\030\002 \001(\t\022\023\n" + "\013unreachable\030\003 \003(\t\"\236\001\n" + "#ListUsableWorkstationConfigsRequest\022F\n" @@ -470,43 +637,42 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\tpage_size\030\002 \001(\005B\003\340A\001\022\027\n\n" + "page_token\030\003 \001(\tB\003\340A\001\"\242\001\n" + "$ListUsableWorkstationConfigsResponse\022L\n" - + "\023workstation_configs\030\001 \003(\0132/" - + ".google.cloud.workstations.v1.WorkstationConfig\022\027\n" + + "\023workstation_configs\030\001" + + " \003(\0132/.google.cloud.workstations.v1.WorkstationConfig\022\027\n" + "\017next_page_token\030\002 \001(\t\022\023\n" + "\013unreachable\030\003 \003(\t\"\372\001\n" + "\036CreateWorkstationConfigRequest\022F\n" + "\006parent\030\001 \001(\tB6\340A\002\372A0\n" + ".workstations.googleapis.com/WorkstationCluster\022\"\n" + "\025workstation_config_id\030\002 \001(\tB\003\340A\002\022P\n" - + "\022workstation_config\030\003 \001(\0132/.google.cloud." - + "workstations.v1.WorkstationConfigB\003\340A\002\022\032\n\r" + + "\022workstation_config\030\003" + + " \001(\0132/.google.cloud.workstations.v1.WorkstationConfigB\003\340A\002\022\032\n\r" + "validate_only\030\004 \001(\010B\003\340A\001\"\340\001\n" + "\036UpdateWorkstationConfigRequest\022P\n" - + "\022workstation_config\030\001" - + " \001(\0132/.google.cloud.workstations.v1.WorkstationConfigB\003\340A\002\0224\n" + + "\022workstation_config\030\001 \001(\0132/.goog" + + "le.cloud.workstations.v1.WorkstationConfigB\003\340A\002\0224\n" + "\013update_mask\030\002" - + " \001(\0132\032.google.protobuf.FieldMaskB\003\340A\002\022\032\n" - + "\r" + + " \001(\0132\032.google.protobuf.FieldMaskB\003\340A\002\022\032\n\r" + "validate_only\030\003 \001(\010B\003\340A\001\022\032\n\r" + "allow_missing\030\004 \001(\010B\003\340A\001\"\250\001\n" + "\036DeleteWorkstationConfigRequest\022C\n" + "\004name\030\001 \001(\tB5\340A\002\372A/\n" - + "-workstations.googleapis.com/WorkstationConfig\022\032\n" - + "\r" + + "-workstations.googleapis.com/WorkstationConfig\022\032\n\r" + "validate_only\030\002 \001(\010B\003\340A\001\022\021\n" + "\004etag\030\003 \001(\tB\003\340A\001\022\022\n" + "\005force\030\004 \001(\010B\003\340A\001\"V\n" + "\025GetWorkstationRequest\022=\n" + "\004name\030\001 \001(\tB/\340A\002\372A)\n" - + "\'workstations.googleapis.com/Workstation\"\221\001\n" + + "\'workstations.googleapis.com/Workstation\"\246\001\n" + "\027ListWorkstationsRequest\022E\n" + "\006parent\030\001 \001(\tB5\340A\002\372A/\n" + "-workstations.googleapis.com/WorkstationConfig\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\"\223\001\n" + + "page_token\030\003 \001(\tB\003\340A\001\022\023\n" + + "\006filter\030\004 \001(\tB\003\340A\001\"\223\001\n" + "\030ListWorkstationsResponse\022?\n" - + "\014workstations\030\001" - + " \003(\0132).google.cloud.workstations.v1.Workstation\022\034\n" + + "\014workstations\030\001 \003(\0132).g" + + "oogle.cloud.workstations.v1.Workstation\022\034\n" + "\017next_page_token\030\002 \001(\tB\003\340A\001\022\030\n" + "\013unreachable\030\003 \003(\tB\003\340A\001\"\227\001\n" + "\035ListUsableWorkstationsRequest\022E\n" @@ -527,8 +693,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + " \001(\0132).google.cloud.workstations.v1.WorkstationB\003\340A\002\022\032\n\r" + "validate_only\030\004 \001(\010B\003\340A\001\"\315\001\n" + "\030UpdateWorkstationRequest\022C\n" - + "\013workstation\030\001" - + " \001(\0132).google.cloud.workstations.v1.WorkstationB\003\340A\002\0224\n" + + "\013workstation\030\001 \001(\0132).google" + + ".cloud.workstations.v1.WorkstationB\003\340A\002\0224\n" + "\013update_mask\030\002" + " \001(\0132\032.google.protobuf.FieldMaskB\003\340A\002\022\032\n\r" + "validate_only\030\003 \001(\010B\003\340A\001\022\032\n\r" @@ -537,22 +703,24 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\004name\030\001 \001(\tB/\340A\002\372A)\n" + "\'workstations.googleapis.com/Workstation\022\032\n\r" + "validate_only\030\002 \001(\010B\003\340A\001\022\021\n" - + "\004etag\030\003 \001(\tB\003\340A\001\"\207\001\n" + + "\004etag\030\003 \001(\tB\003\340A\001\"\242\001\n" + "\027StartWorkstationRequest\022=\n" + "\004name\030\001 \001(\tB/\340A\002\372A)\n" + "\'workstations.googleapis.com/Workstation\022\032\n\r" + "validate_only\030\002 \001(\010B\003\340A\001\022\021\n" - + "\004etag\030\003 \001(\tB\003\340A\001\"\206\001\n" + + "\004etag\030\003 \001(\tB\003\340A\001\022\031\n" + + "\014boost_config\030\004 \001(\tB\003\340A\001\"\206\001\n" + "\026StopWorkstationRequest\022=\n" + "\004name\030\001 \001(\tB/\340A\002\372A)\n" + "\'workstations.googleapis.com/Workstation\022\032\n\r" + "validate_only\030\002 \001(\010B\003\340A\001\022\021\n" - + "\004etag\030\003 \001(\tB\003\340A\001\"\315\001\n" + + "\004etag\030\003 \001(\tB\003\340A\001\"\340\001\n" + "\032GenerateAccessTokenRequest\0221\n" + "\013expire_time\030\002 \001(\0132\032.google.protobuf.TimestampH\000\022(\n" + "\003ttl\030\003 \001(\0132\031.google.protobuf.DurationH\000\022D\n" + "\013workstation\030\001 \001(\tB/\340A\002\372A)\n" - + "\'workstations.googleapis.com/WorkstationB\014\n\n" + + "\'workstations.googleapis.com/Workstation\022\021\n" + + "\004port\030\004 \001(\005B\003\340A\001B\014\n\n" + "expiration\"d\n" + "\033GenerateAccessTokenResponse\022\024\n" + "\014access_token\030\001 \001(\t\022/\n" @@ -566,112 +734,131 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\026requested_cancellation\030\006 \001(\010B\003\340A\003\022\030\n" + "\013api_version\030\007 \001(\tB\003\340A\0032\233*\n" + "\014Workstations\022\315\001\n" - + "\025GetWorkstationCluster\022:.google.cloud.workstations.v" - + "1.GetWorkstationClusterRequest\0320.google.cloud.workstations.v1.WorkstationCluster" - + "\"F\332A\004name\202\323\344\223\0029\0227/v1/{name=projects/*/locations/*/workstationClusters/*}\022\340\001\n" - + "\027ListWorkstationClusters\022<.google.cloud.work" - + "stations.v1.ListWorkstationClustersRequest\032=.google.cloud.workstations.v1.ListWo" - + "rkstationClustersResponse\"H\332A\006parent\202\323\344\223" - + "\0029\0227/v1/{parent=projects/*/locations/*}/workstationClusters\022\255\002\n" - + "\030CreateWorkstationCluster\022=.google.cloud.workstations.v1." - + "CreateWorkstationClusterRequest\032\035.google.longrunning.Operation\"\262\001\312A\'\n" - + "\022WorkstationCluster\022\021OperationMetadata\332A1parent,wor" - + "kstation_cluster,workstation_cluster_id\202" - + "\323\344\223\002N\"7/v1/{parent=projects/*/locations/" - + "*}/workstationClusters:\023workstation_cluster\022\257\002\n" - + "\030UpdateWorkstationCluster\022=.google.cloud.workstations.v1.UpdateWorkstatio" - + "nClusterRequest\032\035.google.longrunning.Operation\"\264\001\312A\'\n" - + "\022WorkstationCluster\022\021OperationMetadata\332A\037workstation_cluster,update" - + "_mask\202\323\344\223\002b2K/v1/{workstation_cluster.na" - + "me=projects/*/locations/*/workstationClusters/*}:\023workstation_cluster\022\352\001\n" - + "\030DeleteWorkstationCluster\022=.google.cloud.workst" - + "ations.v1.DeleteWorkstationClusterRequest\032\035.google.longrunning.Operation\"p\312A\'\n" - + "\022WorkstationCluster\022\021OperationMetadata\332A\004n" - + "ame\202\323\344\223\0029*7/v1/{name=projects/*/locations/*/workstationClusters/*}\022\337\001\n" - + "\024GetWorkstationConfig\0229.google.cloud.workstations." - + "v1.GetWorkstationConfigRequest\032/.google.cloud.workstations.v1.WorkstationConfig\"" - + "[\332A\004name\202\323\344\223\002N\022L/v1/{name=projects/*/loc" - + "ations/*/workstationClusters/*/workstationConfigs/*}\022\362\001\n" - + "\026ListWorkstationConfigs\022;.google.cloud.workstations.v1.ListWorks" - + "tationConfigsRequest\032<.google.cloud.workstations.v1.ListWorkstationConfigsRespon" - + "se\"]\332A\006parent\202\323\344\223\002N\022L/v1/{parent=project" - + "s/*/locations/*/workstationClusters/*}/workstationConfigs\022\217\002\n" - + "\034ListUsableWorkstationConfigs\022A.google.cloud.workstations.v" - + "1.ListUsableWorkstationConfigsRequest\032B.google.cloud.workstations.v1.ListUsableW" - + "orkstationConfigsResponse\"h\332A\006parent\202\323\344\223" - + "\002Y\022W/v1/{parent=projects/*/locations/*/w" - + "orkstationClusters/*}/workstationConfigs:listUsable\022\274\002\n" - + "\027CreateWorkstationConfig\022<.google.cloud.workstations.v1.CreateWor" - + "kstationConfigRequest\032\035.google.longrunning.Operation\"\303\001\312A&\n" - + "\021WorkstationConfig\022\021OperationMetadata\332A/parent,workstation_co" - + "nfig,workstation_config_id\202\323\344\223\002b\"L/v1/{p" - + "arent=projects/*/locations/*/workstation" - + "Clusters/*}/workstationConfigs:\022workstation_config\022\276\002\n" - + "\027UpdateWorkstationConfig\022<.google.cloud.workstations.v1.UpdateWork" - + "stationConfigRequest\032\035.google.longrunning.Operation\"\305\001\312A&\n" - + "\021WorkstationConfig\022\021OperationMetadata\332A\036workstation_config,upd" - + "ate_mask\202\323\344\223\002u2_/v1/{workstation_config." - + "name=projects/*/locations/*/workstationC" - + "lusters/*/workstationConfigs/*}:\022workstation_config\022\375\001\n" - + "\027DeleteWorkstationConfig\022<.google.cloud.workstations.v1.DeleteWor" - + "kstationConfigRequest\032\035.google.longrunning.Operation\"\204\001\312A&\n" - + "\021WorkstationConfig\022\021O" - + "perationMetadata\332A\004name\202\323\344\223\002N*L/v1/{name" - + "=projects/*/locations/*/workstationClusters/*/workstationConfigs/*}\022\334\001\n" - + "\016GetWorkstation\0223.google.cloud.workstations.v1.Ge" - + "tWorkstationRequest\032).google.cloud.works" - + "tations.v1.Workstation\"j\332A\004name\202\323\344\223\002]\022[/" - + "v1/{name=projects/*/locations/*/workstat" - + "ionClusters/*/workstationConfigs/*/workstations/*}\022\357\001\n" - + "\020ListWorkstations\0225.google.cloud.workstations.v1.ListWorkstationsR" - + "equest\0326.google.cloud.workstations.v1.Li" - + "stWorkstationsResponse\"l\332A\006parent\202\323\344\223\002]\022" - + "[/v1/{parent=projects/*/locations/*/work" - + "stationClusters/*/workstationConfigs/*}/workstations\022\214\002\n" - + "\026ListUsableWorkstations\022;.google.cloud.workstations.v1.ListUsabl" - + "eWorkstationsRequest\032<.google.cloud.workstations.v1.ListUsableWorkstationsRespon" - + "se\"w\332A\006parent\202\323\344\223\002h\022f/v1/{parent=project" - + "s/*/locations/*/workstationClusters/*/wo" - + "rkstationConfigs/*}/workstations:listUsable\022\244\002\n" - + "\021CreateWorkstation\0226.google.cloud" - + ".workstations.v1.CreateWorkstationRequest\032\035.google.longrunning.Operation\"\267\001\312A" - + " \n" - + "\013Workstation\022\021OperationMetadata\332A!parent," - + "workstation,workstation_id\202\323\344\223\002j\"[/v1/{p" - + "arent=projects/*/locations/*/workstation" - + "Clusters/*/workstationConfigs/*}/workstations:\013workstation\022\246\002\n" - + "\021UpdateWorkstation\0226.google.cloud.workstations.v1.UpdateWo" - + "rkstationRequest\032\035.google.longrunning.Operation\"\271\001\312A \n" - + "\013Workstation\022\021OperationMet" - + "adata\332A\027workstation,update_mask\202\323\344\223\002v2g/" - + "v1/{workstation.name=projects/*/location" - + "s/*/workstationClusters/*/workstationConfigs/*/workstations/*}:\013workstation\022\372\001\n" - + "\021DeleteWorkstation\0226.google.cloud.worksta" - + "tions.v1.DeleteWorkstationRequest\032\035.google.longrunning.Operation\"\215\001\312A" - + " \n" - + "\013Workstation\022\021OperationMetadata\332A\004name\202\323\344\223\002]*[/v1" + + "\025GetWorkstationCluster\022:.google.cloud.wor" + + "kstations.v1.GetWorkstationClusterRequest\0320.google.cloud.workstations.v1.Worksta" + + "tionCluster\"F\332A\004name\202\323\344\223\0029\0227/v1/{name=pr" + + "ojects/*/locations/*/workstationClusters/*}\022\340\001\n" + + "\027ListWorkstationClusters\022<.google.cloud.workstations.v1.ListWorkstationCl" + + "ustersRequest\032=.google.cloud.workstation" + + "s.v1.ListWorkstationClustersResponse\"H\332A" + + "\006parent\202\323\344\223\0029\0227/v1/{parent=projects/*/locations/*}/workstationClusters\022\255\002\n" + + "\030CreateWorkstationCluster\022=.google.cloud.works" + + "tations.v1.CreateWorkstationClusterRequest\032\035.google.longrunning.Operation\"\262\001\312A\'\n" + + "\022WorkstationCluster\022\021OperationMetadata\332A" + + "1parent,workstation_cluster,workstation_" + + "cluster_id\202\323\344\223\002N\"7/v1/{parent=projects/*" + + "/locations/*}/workstationClusters:\023workstation_cluster\022\257\002\n" + + "\030UpdateWorkstationCluster\022=.google.cloud.workstations.v1.Updat" + + "eWorkstationClusterRequest\032\035.google.longrunning.Operation\"\264\001\312A\'\n" + + "\022WorkstationCluster\022\021OperationMetadata\332A\037workstation_clu" + + "ster,update_mask\202\323\344\223\002b2K/v1/{workstation" + + "_cluster.name=projects/*/locations/*/wor" + + "kstationClusters/*}:\023workstation_cluster\022\352\001\n" + + "\030DeleteWorkstationCluster\022=.google.cloud.workstations.v1.DeleteWorkstationCl" + + "usterRequest\032\035.google.longrunning.Operation\"p\312A\'\n" + + "\022WorkstationCluster\022\021OperationM" + + "etadata\332A\004name\202\323\344\223\0029*7/v1/{name=projects" + + "/*/locations/*/workstationClusters/*}\022\337\001\n" + + "\024GetWorkstationConfig\0229.google.cloud.workstations.v1.GetWorkstationConfigReques" + + "t\032/.google.cloud.workstations.v1.Worksta" + + "tionConfig\"[\332A\004name\202\323\344\223\002N\022L/v1/{name=pro" + + "jects/*/locations/*/workstationClusters/*/workstationConfigs/*}\022\362\001\n" + + "\026ListWorkstationConfigs\022;.google.cloud.workstations.v" + + "1.ListWorkstationConfigsRequest\032<.google.cloud.workstations.v1.ListWorkstationCo" + + "nfigsResponse\"]\332A\006parent\202\323\344\223\002N\022L/v1/{par" + + "ent=projects/*/locations/*/workstationClusters/*}/workstationConfigs\022\217\002\n" + + "\034ListUsableWorkstationConfigs\022A.google.cloud.wor" + + "kstations.v1.ListUsableWorkstationConfigsRequest\032B.google.cloud.workstations.v1." + + "ListUsableWorkstationConfigsResponse\"h\332A" + + "\006parent\202\323\344\223\002Y\022W/v1/{parent=projects/*/lo" + + "cations/*/workstationClusters/*}/workstationConfigs:listUsable\022\274\002\n" + + "\027CreateWorkstationConfig\022<.google.cloud.workstations.v", + "1.CreateWorkstationConfigRequest\032\035.googl" + + "e.longrunning.Operation\"\303\001\312A&\n\021Workstati" + + "onConfig\022\021OperationMetadata\332A/parent,wor" + + "kstation_config,workstation_config_id\202\323\344" + + "\223\002b\"L/v1/{parent=projects/*/locations/*/" + + "workstationClusters/*}/workstationConfig" + + "s:\022workstation_config\022\276\002\n\027UpdateWorkstat" + + "ionConfig\022<.google.cloud.workstations.v1" + + ".UpdateWorkstationConfigRequest\032\035.google" + + ".longrunning.Operation\"\305\001\312A&\n\021Workstatio" + + "nConfig\022\021OperationMetadata\332A\036workstation" + + "_config,update_mask\202\323\344\223\002u2_/v1/{workstat" + + "ion_config.name=projects/*/locations/*/w" + + "orkstationClusters/*/workstationConfigs/" + + "*}:\022workstation_config\022\375\001\n\027DeleteWorksta" + + "tionConfig\022<.google.cloud.workstations.v" + + "1.DeleteWorkstationConfigRequest\032\035.googl" + + "e.longrunning.Operation\"\204\001\312A&\n\021Workstati" + + "onConfig\022\021OperationMetadata\332A\004name\202\323\344\223\002N" + + "*L/v1/{name=projects/*/locations/*/works" + + "tationClusters/*/workstationConfigs/*}\022\334" + + "\001\n\016GetWorkstation\0223.google.cloud.worksta" + + "tions.v1.GetWorkstationRequest\032).google." + + "cloud.workstations.v1.Workstation\"j\332A\004na" + + "me\202\323\344\223\002]\022[/v1/{name=projects/*/locations" + + "/*/workstationClusters/*/workstationConf" + + "igs/*/workstations/*}\022\357\001\n\020ListWorkstatio" + + "ns\0225.google.cloud.workstations.v1.ListWo" + + "rkstationsRequest\0326.google.cloud.worksta" + + "tions.v1.ListWorkstationsResponse\"l\332A\006pa" + + "rent\202\323\344\223\002]\022[/v1/{parent=projects/*/locat" + + "ions/*/workstationClusters/*/workstation" + + "Configs/*}/workstations\022\214\002\n\026ListUsableWo" + + "rkstations\022;.google.cloud.workstations.v" + + "1.ListUsableWorkstationsRequest\032<.google" + + ".cloud.workstations.v1.ListUsableWorksta" + + "tionsResponse\"w\332A\006parent\202\323\344\223\002h\022f/v1/{par" + + "ent=projects/*/locations/*/workstationCl" + + "usters/*/workstationConfigs/*}/workstati" + + "ons:listUsable\022\244\002\n\021CreateWorkstation\0226.g" + + "oogle.cloud.workstations.v1.CreateWorkst" + + "ationRequest\032\035.google.longrunning.Operat" + + "ion\"\267\001\312A \n\013Workstation\022\021OperationMetadat" + + "a\332A!parent,workstation,workstation_id\202\323\344" + + "\223\002j\"[/v1/{parent=projects/*/locations/*/" + + "workstationClusters/*/workstationConfigs" + + "/*}/workstations:\013workstation\022\246\002\n\021Update" + + "Workstation\0226.google.cloud.workstations." + + "v1.UpdateWorkstationRequest\032\035.google.lon" + + "grunning.Operation\"\271\001\312A \n\013Workstation\022\021O" + + "perationMetadata\332A\027workstation,update_ma" + + "sk\202\323\344\223\002v2g/v1/{workstation.name=projects" + + "/*/locations/*/workstationClusters/*/wor" + + "kstationConfigs/*/workstations/*}:\013works" + + "tation\022\372\001\n\021DeleteWorkstation\0226.google.cl" + + "oud.workstations.v1.DeleteWorkstationReq" + + "uest\032\035.google.longrunning.Operation\"\215\001\312A" + + " \n\013Workstation\022\021OperationMetadata\332A\004name" + + "\202\323\344\223\002]*[/v1/{name=projects/*/locations/*" + + "/workstationClusters/*/workstationConfig" + + "s/*/workstations/*}\022\201\002\n\020StartWorkstation" + + "\0225.google.cloud.workstations.v1.StartWor" + + "kstationRequest\032\035.google.longrunning.Ope" + + "ration\"\226\001\312A \n\013Workstation\022\021OperationMeta" + + "data\332A\004name\202\323\344\223\002f\"a/v1/{name=projects/*/" + + "locations/*/workstationClusters/*/workst" + + "ationConfigs/*/workstations/*}:start:\001*\022" + + "\376\001\n\017StopWorkstation\0224.google.cloud.works" + + "tations.v1.StopWorkstationRequest\032\035.goog" + + "le.longrunning.Operation\"\225\001\312A \n\013Workstat" + + "ion\022\021OperationMetadata\332A\004name\202\323\344\223\002e\"`/v1" + "/{name=projects/*/locations/*/workstatio" - + "nClusters/*/workstationConfigs/*/workstations/*}\022\201\002\n" - + "\020StartWorkstation\0225.google.cloud.workstations.v1.StartWorkstationReq" - + "uest\032\035.google.longrunning.Operation\"\226\001\312A \n" - + "\013Workstation\022\021OperationMetadata\332A\004name" - + "\202\323\344\223\002f\"a/v1/{name=projects/*/locations/*" - + "/workstationClusters/*/workstationConfigs/*/workstations/*}:start:\001*\022\376\001\n" - + "\017StopWorkstation\0224.google.cloud.workstations.v1." - + "StopWorkstationRequest\032\035.google.longrunning.Operation\"\225\001\312A \n" - + "\013Workstation\022\021Operat" - + "ionMetadata\332A\004name\202\323\344\223\002e\"`/v1/{name=proj" - + "ects/*/locations/*/workstationClusters/*" - + "/workstationConfigs/*/workstations/*}:stop:\001*\022\234\002\n" - + "\023GenerateAccessToken\0228.google.cloud.workstations.v1.GenerateAccessToken" - + "Request\0329.google.cloud.workstations.v1.G" - + "enerateAccessTokenResponse\"\217\001\332A\013workstat" - + "ion\202\323\344\223\002{\"v/v1/{workstation=projects/*/l" - + "ocations/*/workstationClusters/*/workstationConfigs/*/workstations/*}:generateAc" - + "cessToken:\001*\032O\312A\033workstations.googleapis" - + ".com\322A.https://www.googleapis.com/auth/cloud-platformB}\n" - + " com.google.cloud.workstations.v1B\021WorkstationsProtoP\001ZDcloud.go" - + "ogle.com/go/workstations/apiv1/workstationspb;workstationspbb\006proto3" + + "nClusters/*/workstationConfigs/*/worksta" + + "tions/*}:stop:\001*\022\234\002\n\023GenerateAccessToken" + + "\0228.google.cloud.workstations.v1.Generate" + + "AccessTokenRequest\0329.google.cloud.workst" + + "ations.v1.GenerateAccessTokenResponse\"\217\001" + + "\332A\013workstation\202\323\344\223\002{\"v/v1/{workstation=p" + + "rojects/*/locations/*/workstationCluster" + + "s/*/workstationConfigs/*/workstations/*}" + + ":generateAccessToken:\001*\032O\312A\033workstations" + + ".googleapis.com\322A.https://www.googleapis" + + ".com/auth/cloud-platformB}\n com.google.c" + + "loud.workstations.v1B\021WorkstationsProtoP" + + "\001ZDcloud.google.com/go/workstations/apiv" + + "1/workstationspb;workstationspbb\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -680,6 +867,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { com.google.api.AnnotationsProto.getDescriptor(), com.google.api.ClientProto.getDescriptor(), com.google.api.FieldBehaviorProto.getDescriptor(), + com.google.api.FieldInfoProto.getDescriptor(), com.google.api.ResourceProto.getDescriptor(), com.google.longrunning.OperationsProto.getDescriptor(), com.google.protobuf.DurationProto.getDescriptor(), @@ -707,8 +895,13 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Subnetwork", "ControlPlaneIp", "PrivateClusterConfig", + "DomainConfig", "Degraded", "Conditions", + "Tags", + "GatewayConfig", + "WorkstationAuthorizationUrl", + "WorkstationLaunchUrl", }); internal_static_google_cloud_workstations_v1_WorkstationCluster_PrivateClusterConfig_descriptor = internal_static_google_cloud_workstations_v1_WorkstationCluster_descriptor.getNestedType(0); @@ -718,8 +911,24 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "EnablePrivateEndpoint", "ClusterHostname", "ServiceAttachmentUri", "AllowedProjects", }); - internal_static_google_cloud_workstations_v1_WorkstationCluster_AnnotationsEntry_descriptor = + internal_static_google_cloud_workstations_v1_WorkstationCluster_DomainConfig_descriptor = internal_static_google_cloud_workstations_v1_WorkstationCluster_descriptor.getNestedType(1); + internal_static_google_cloud_workstations_v1_WorkstationCluster_DomainConfig_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_WorkstationCluster_DomainConfig_descriptor, + new java.lang.String[] { + "Domain", + }); + internal_static_google_cloud_workstations_v1_WorkstationCluster_GatewayConfig_descriptor = + internal_static_google_cloud_workstations_v1_WorkstationCluster_descriptor.getNestedType(2); + internal_static_google_cloud_workstations_v1_WorkstationCluster_GatewayConfig_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_WorkstationCluster_GatewayConfig_descriptor, + new java.lang.String[] { + "Http2Enabled", + }); + internal_static_google_cloud_workstations_v1_WorkstationCluster_AnnotationsEntry_descriptor = + internal_static_google_cloud_workstations_v1_WorkstationCluster_descriptor.getNestedType(3); internal_static_google_cloud_workstations_v1_WorkstationCluster_AnnotationsEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_WorkstationCluster_AnnotationsEntry_descriptor, @@ -727,13 +936,21 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Key", "Value", }); internal_static_google_cloud_workstations_v1_WorkstationCluster_LabelsEntry_descriptor = - internal_static_google_cloud_workstations_v1_WorkstationCluster_descriptor.getNestedType(2); + internal_static_google_cloud_workstations_v1_WorkstationCluster_descriptor.getNestedType(4); internal_static_google_cloud_workstations_v1_WorkstationCluster_LabelsEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_WorkstationCluster_LabelsEntry_descriptor, new java.lang.String[] { "Key", "Value", }); + internal_static_google_cloud_workstations_v1_WorkstationCluster_TagsEntry_descriptor = + internal_static_google_cloud_workstations_v1_WorkstationCluster_descriptor.getNestedType(5); + internal_static_google_cloud_workstations_v1_WorkstationCluster_TagsEntry_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_WorkstationCluster_TagsEntry_descriptor, + new java.lang.String[] { + "Key", "Value", + }); internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor = getDescriptor().getMessageType(1); internal_static_google_cloud_workstations_v1_WorkstationConfig_fieldAccessorTable = @@ -752,14 +969,20 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Etag", "IdleTimeout", "RunningTimeout", + "MaxUsableWorkstations", "Host", "PersistentDirectories", + "EphemeralDirectories", "Container", "EncryptionKey", "ReadinessChecks", "ReplicaZones", "Degraded", "Conditions", + "EnableAuditAgent", + "DisableTcpConnections", + "AllowedPorts", + "GrantWorkstationAdminRoleOnCreate", }); internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_descriptor = internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor.getNestedType(0); @@ -787,6 +1010,12 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ShieldedInstanceConfig", "ConfidentialInstanceConfig", "BootDiskSizeGb", + "Accelerators", + "BoostConfigs", + "DisableSsh", + "VmTags", + "StartupScriptUri", + "InstanceMetadata", }); internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_GceShieldedInstanceConfig_descriptor = internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_descriptor @@ -806,13 +1035,54 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "EnableConfidentialCompute", }); + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_Accelerator_descriptor = + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_descriptor + .getNestedType(2); + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_Accelerator_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_Accelerator_descriptor, + new java.lang.String[] { + "Type", "Count", + }); + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_BoostConfig_descriptor = + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_descriptor + .getNestedType(3); + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_BoostConfig_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_BoostConfig_descriptor, + new java.lang.String[] { + "Id", + "MachineType", + "Accelerators", + "BootDiskSizeGb", + "EnableNestedVirtualization", + "PoolSize", + }); + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_VmTagsEntry_descriptor = + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_descriptor + .getNestedType(4); + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_VmTagsEntry_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_VmTagsEntry_descriptor, + new java.lang.String[] { + "Key", "Value", + }); + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_InstanceMetadataEntry_descriptor = + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_descriptor + .getNestedType(5); + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_InstanceMetadataEntry_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_WorkstationConfig_Host_GceInstance_InstanceMetadataEntry_descriptor, + new java.lang.String[] { + "Key", "Value", + }); internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_descriptor = internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor.getNestedType(1); internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_descriptor, new java.lang.String[] { - "GcePd", "MountPath", "DirectoryType", + "GcePd", "GceHd", "MountPath", "DirectoryType", }); internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor = internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_descriptor @@ -821,10 +1091,42 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor, new java.lang.String[] { - "SizeGb", "FsType", "DiskType", "SourceSnapshot", "ReclaimPolicy", + "SizeGb", + "MaxSizeGb", + "FsType", + "DiskType", + "SourceSnapshot", + "ReclaimPolicy", + "ArchiveTimeout", }); - internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_descriptor = + internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_descriptor = + internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_descriptor + .getNestedType(1); + internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_descriptor, + new java.lang.String[] { + "SizeGb", "MaxSizeGb", "SourceSnapshot", "ReclaimPolicy", "ArchiveTimeout", + }); + internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_descriptor = internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor.getNestedType(2); + internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_descriptor, + new java.lang.String[] { + "GcePd", "MountPath", "DirectoryType", + }); + internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_descriptor = + internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_descriptor + .getNestedType(0); + internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_descriptor, + new java.lang.String[] { + "DiskType", "SourceSnapshot", "SourceImage", "ReadOnly", + }); + internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_descriptor = + internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor.getNestedType(3); internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_WorkstationConfig_Container_descriptor, @@ -841,7 +1143,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Key", "Value", }); internal_static_google_cloud_workstations_v1_WorkstationConfig_CustomerEncryptionKey_descriptor = - internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor.getNestedType(3); + internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor.getNestedType(4); internal_static_google_cloud_workstations_v1_WorkstationConfig_CustomerEncryptionKey_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_WorkstationConfig_CustomerEncryptionKey_descriptor, @@ -849,15 +1151,23 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "KmsKey", "KmsKeyServiceAccount", }); internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_descriptor = - internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor.getNestedType(4); + internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor.getNestedType(5); internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_WorkstationConfig_ReadinessCheck_descriptor, new java.lang.String[] { "Path", "Port", }); + internal_static_google_cloud_workstations_v1_WorkstationConfig_PortRange_descriptor = + internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor.getNestedType(6); + internal_static_google_cloud_workstations_v1_WorkstationConfig_PortRange_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_WorkstationConfig_PortRange_descriptor, + new java.lang.String[] { + "First", "Last", + }); internal_static_google_cloud_workstations_v1_WorkstationConfig_AnnotationsEntry_descriptor = - internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor.getNestedType(5); + internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor.getNestedType(7); internal_static_google_cloud_workstations_v1_WorkstationConfig_AnnotationsEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_WorkstationConfig_AnnotationsEntry_descriptor, @@ -865,7 +1175,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Key", "Value", }); internal_static_google_cloud_workstations_v1_WorkstationConfig_LabelsEntry_descriptor = - internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor.getNestedType(6); + internal_static_google_cloud_workstations_v1_WorkstationConfig_descriptor.getNestedType(8); internal_static_google_cloud_workstations_v1_WorkstationConfig_LabelsEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_WorkstationConfig_LabelsEntry_descriptor, @@ -889,11 +1199,41 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "StartTime", "DeleteTime", "Etag", + "PersistentDirectories", "State", "Host", + "Env", + "KmsKey", + "SourceWorkstation", + "RuntimeHost", }); - internal_static_google_cloud_workstations_v1_Workstation_AnnotationsEntry_descriptor = + internal_static_google_cloud_workstations_v1_Workstation_WorkstationPersistentDirectory_descriptor = internal_static_google_cloud_workstations_v1_Workstation_descriptor.getNestedType(0); + internal_static_google_cloud_workstations_v1_Workstation_WorkstationPersistentDirectory_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_Workstation_WorkstationPersistentDirectory_descriptor, + new java.lang.String[] { + "MountPath", "SizeGb", + }); + internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_descriptor = + internal_static_google_cloud_workstations_v1_Workstation_descriptor.getNestedType(1); + internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_descriptor, + new java.lang.String[] { + "GceInstanceHost", "HostType", + }); + internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_GceInstanceHost_descriptor = + internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_descriptor + .getNestedType(0); + internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_GceInstanceHost_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_Workstation_RuntimeHost_GceInstanceHost_descriptor, + new java.lang.String[] { + "Name", "Id", "Zone", + }); + internal_static_google_cloud_workstations_v1_Workstation_AnnotationsEntry_descriptor = + internal_static_google_cloud_workstations_v1_Workstation_descriptor.getNestedType(2); internal_static_google_cloud_workstations_v1_Workstation_AnnotationsEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_Workstation_AnnotationsEntry_descriptor, @@ -901,13 +1241,21 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Key", "Value", }); internal_static_google_cloud_workstations_v1_Workstation_LabelsEntry_descriptor = - internal_static_google_cloud_workstations_v1_Workstation_descriptor.getNestedType(1); + internal_static_google_cloud_workstations_v1_Workstation_descriptor.getNestedType(3); internal_static_google_cloud_workstations_v1_Workstation_LabelsEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_Workstation_LabelsEntry_descriptor, new java.lang.String[] { "Key", "Value", }); + internal_static_google_cloud_workstations_v1_Workstation_EnvEntry_descriptor = + internal_static_google_cloud_workstations_v1_Workstation_descriptor.getNestedType(4); + internal_static_google_cloud_workstations_v1_Workstation_EnvEntry_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1_Workstation_EnvEntry_descriptor, + new java.lang.String[] { + "Key", "Value", + }); internal_static_google_cloud_workstations_v1_GetWorkstationClusterRequest_descriptor = getDescriptor().getMessageType(3); internal_static_google_cloud_workstations_v1_GetWorkstationClusterRequest_fieldAccessorTable = @@ -922,7 +1270,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_ListWorkstationClustersRequest_descriptor, new java.lang.String[] { - "Parent", "PageSize", "PageToken", + "Parent", "PageSize", "PageToken", "Filter", }); internal_static_google_cloud_workstations_v1_ListWorkstationClustersResponse_descriptor = getDescriptor().getMessageType(5); @@ -970,7 +1318,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_ListWorkstationConfigsRequest_descriptor, new java.lang.String[] { - "Parent", "PageSize", "PageToken", + "Parent", "PageSize", "PageToken", "Filter", }); internal_static_google_cloud_workstations_v1_ListWorkstationConfigsResponse_descriptor = getDescriptor().getMessageType(11); @@ -1034,7 +1382,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_ListWorkstationsRequest_descriptor, new java.lang.String[] { - "Parent", "PageSize", "PageToken", + "Parent", "PageSize", "PageToken", "Filter", }); internal_static_google_cloud_workstations_v1_ListWorkstationsResponse_descriptor = getDescriptor().getMessageType(19); @@ -1090,7 +1438,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_StartWorkstationRequest_descriptor, new java.lang.String[] { - "Name", "ValidateOnly", "Etag", + "Name", "ValidateOnly", "Etag", "BoostConfig", }); internal_static_google_cloud_workstations_v1_StopWorkstationRequest_descriptor = getDescriptor().getMessageType(26); @@ -1106,7 +1454,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1_GenerateAccessTokenRequest_descriptor, new java.lang.String[] { - "ExpireTime", "Ttl", "Workstation", "Expiration", + "ExpireTime", "Ttl", "Workstation", "Port", "Expiration", }); internal_static_google_cloud_workstations_v1_GenerateAccessTokenResponse_descriptor = getDescriptor().getMessageType(28); @@ -1134,6 +1482,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { com.google.api.AnnotationsProto.getDescriptor(); com.google.api.ClientProto.getDescriptor(); com.google.api.FieldBehaviorProto.getDescriptor(); + com.google.api.FieldInfoProto.getDescriptor(); com.google.api.ResourceProto.getDescriptor(); com.google.longrunning.OperationsProto.getDescriptor(); com.google.protobuf.DurationProto.getDescriptor(); @@ -1144,6 +1493,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { com.google.protobuf.ExtensionRegistry.newInstance(); registry.add(com.google.api.ClientProto.defaultHost); registry.add(com.google.api.FieldBehaviorProto.fieldBehavior); + registry.add(com.google.api.FieldInfoProto.fieldInfo); registry.add(com.google.api.AnnotationsProto.http); registry.add(com.google.api.ClientProto.methodSignature); registry.add(com.google.api.ClientProto.oauthScopes); diff --git a/java-workstations/proto-google-cloud-workstations-v1/src/main/proto/google/cloud/workstations/v1/workstations.proto b/java-workstations/proto-google-cloud-workstations-v1/src/main/proto/google/cloud/workstations/v1/workstations.proto index 7a93abe1a975..8c74c74ae3e3 100644 --- a/java-workstations/proto-google-cloud-workstations-v1/src/main/proto/google/cloud/workstations/v1/workstations.proto +++ b/java-workstations/proto-google-cloud-workstations-v1/src/main/proto/google/cloud/workstations/v1/workstations.proto @@ -1,4 +1,4 @@ -// Copyright 2025 Google LLC +// 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. @@ -19,6 +19,7 @@ package google.cloud.workstations.v1; import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; +import "google/api/field_info.proto"; import "google/api/resource.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/duration.proto"; @@ -265,6 +266,8 @@ service Workstations { // Returns a short-lived credential that can be used to send authenticated and // authorized traffic to a workstation. + // Once generated this token cannot be revoked and is good for the lifetime + // of the token. rpc GenerateAccessToken(GenerateAccessTokenRequest) returns (GenerateAccessTokenResponse) { option (google.api.http) = { @@ -301,7 +304,7 @@ message WorkstationCluster { string cluster_hostname = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Service attachment URI for the workstation cluster. The - // service attachemnt is created when private endpoint is enabled. To access + // service attachment is created when private endpoint is enabled. To access // workstations in the workstation cluster, configure access to the managed // service using [Private Service // Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services). @@ -315,15 +318,31 @@ message WorkstationCluster { [(google.api.field_behavior) = OPTIONAL]; } - // Full name of this workstation cluster. - string name = 1; + // Configuration options for a custom domain. + message DomainConfig { + // Immutable. Domain used by Workstations for HTTP ingress. + string domain = 1 [(google.api.field_behavior) = IMMUTABLE]; + } + + // Configuration options for Cluster HTTP Gateway. + message GatewayConfig { + // Optional. Whether HTTP/2 is enabled for this workstation cluster. + // Defaults to false. + bool http2_enabled = 1 [(google.api.field_behavior) = OPTIONAL]; + } + + // Identifier. Full name of this workstation cluster. + string name = 1 [(google.api.field_behavior) = IDENTIFIER]; // Optional. Human-readable name for this workstation cluster. string display_name = 2 [(google.api.field_behavior) = OPTIONAL]; // Output only. A system-assigned unique identifier for this workstation // cluster. - string uid = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + string uid = 3 [ + (google.api.field_info).format = UUID4, + (google.api.field_behavior) = OUTPUT_ONLY + ]; // Output only. Indicates whether this workstation cluster is currently being // updated to match its intended state. @@ -374,16 +393,52 @@ message WorkstationCluster { PrivateClusterConfig private_cluster_config = 12 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Configuration options for a custom domain. + DomainConfig domain_config = 17 [(google.api.field_behavior) = OPTIONAL]; + // Output only. Whether this workstation cluster is in degraded mode, in which - // case it may require user action to restore full functionality. Details can - // be found in - // [conditions][google.cloud.workstations.v1.WorkstationCluster.conditions]. + // case it may require user action to restore full functionality. The + // [conditions][google.cloud.workstations.v1.WorkstationCluster.conditions] + // field contains detailed information about the status of the cluster. bool degraded = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Status conditions describing the workstation cluster's current // state. repeated google.rpc.Status conditions = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Input only. Immutable. Tag keys/values directly bound to this + // resource. For example: + // "123/environment": "production", + // "123/costCenter": "marketing" + map tags = 20 [ + (google.api.field_behavior) = INPUT_ONLY, + (google.api.field_behavior) = IMMUTABLE, + (google.api.field_behavior) = OPTIONAL + ]; + + // Optional. Configuration options for Cluster HTTP Gateway. + GatewayConfig gateway_config = 21 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Specifies the redirect URL for unauthorized requests received by + // workstation VMs in this cluster. + // + // Redirects to this endpoint will send a base64 encoded `state` query param + // containing the target workstation name and original request hostname. The + // endpoint is responsible for retrieving a token using `GenerateAccessToken` + // and redirecting back to the original hostname with the token. + string workstation_authorization_url = 22 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Specifies the launch URL for workstations in this cluster. + // Requests sent to unstarted workstations will be redirected to this URL. + // + // Requests redirected to the launch endpoint will be sent with a + // `workstation` and `project` query parameter containing the full workstation + // resource name and project ID, respectively. The launch endpoint is + // responsible for starting the workstation, polling it until it reaches + // `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL. + string workstation_launch_url = 23 [(google.api.field_behavior) = OPTIONAL]; } // A workstation configuration resource in the Cloud Workstations API. @@ -428,6 +483,78 @@ message WorkstationConfig { [(google.api.field_behavior) = OPTIONAL]; } + // An accelerator card attached to the instance. + message Accelerator { + // Optional. Type of accelerator resource to attach to the instance, for + // example, + // `"nvidia-tesla-p100"`. + string type = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Number of accelerator cards exposed to the instance. + int32 count = 2 [(google.api.field_behavior) = OPTIONAL]; + } + + // A boost configuration is a set of resources that a workstation can use + // to increase its performance. If you specify a boost configuration, upon + // startup, workstation users can choose to use a VM provisioned under the + // boost config by passing the boost config ID in the start request. If + // the workstation user does not provide a boost config ID in the start + // request, the system will choose a VM from the pool provisioned under + // the default config. + message BoostConfig { + // Required. The ID to be used for the boost configuration. + string id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The type of machine that boosted VM instances will use—for + // example, `e2-standard-4`. For more information about machine types + // that Cloud Workstations supports, see the list of [available machine + // types](https://cloud.google.com/workstations/docs/available-machine-types). + // Defaults to `e2-standard-4`. + string machine_type = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A list of the type and count of accelerator cards attached + // to the boost instance. Defaults to `none`. + repeated Accelerator accelerators = 3 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The size of the boot disk for the VM in gigabytes (GB). + // The minimum boot disk size is `30` GB. Defaults to `50` GB. + int32 boot_disk_size_gb = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Whether to enable nested virtualization on boosted Cloud + // Workstations VMs running using this boost configuration. + // + // Defaults to false. + // + // Nested virtualization lets you run virtual machine (VM) instances + // inside your workstation. Before enabling nested virtualization, + // consider the following important considerations. Cloud Workstations + // instances are subject to the [same restrictions as Compute Engine + // instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions): + // + // * **Organization policy**: projects, folders, or + // organizations may be restricted from creating nested VMs if the + // **Disable VM nested virtualization** constraint is enforced in + // the organization policy. For more information, see the + // Compute Engine section, + // [Checking whether nested virtualization is + // allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed). + // * **Performance**: nested VMs might experience a 10% or greater + // decrease in performance for workloads that are CPU-bound and + // possibly greater than a 10% decrease for workloads that are + // input/output bound. + // * **Machine Type**: nested virtualization can only be enabled on + // boost configurations that specify a + // [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.BoostConfig.machine_type] + // in the N1 or N2 machine series. + bool enable_nested_virtualization = 7 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The number of boost VMs that the system should keep idle so + // that workstations can be boosted quickly. Defaults to `0`. + int32 pool_size = 5 [(google.api.field_behavior) = OPTIONAL]; + } + // Optional. The type of machine to use for VM instances—for example, // `"e2-standard-4"`. For more information about machine types that // Cloud Workstations supports, see the list of @@ -437,10 +564,12 @@ message WorkstationConfig { // Optional. The email address of the service account for Cloud // Workstations VMs created with this configuration. When specified, be - // sure that the service account has `logginglogEntries.create` permission - // on the project so it can write logs out to Cloud Logging. If using a - // custom container image, the service account must have permissions to - // pull the specified image. + // sure that the service account has `logging.logEntries.create` and + // `monitoring.timeSeries.create` permissions on the project so it can + // write logs out to Cloud Logging. If using a custom container image, the + // service account must have [Artifact Registry + // Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles) + // permission to pull the specified image. // // If you as the administrator want to be able to `ssh` into the // underlying VM, you need to set this value to a service account @@ -456,9 +585,8 @@ message WorkstationConfig { // Optional. Scopes to grant to the // [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account]. - // Various scopes are automatically added based on feature usage. When - // specified, users of workstations under this configuration must have - // `iam.serviceAccounts.actAs` on the service account. + // When specified, users of workstations under this configuration must + // have `iam.serviceAccounts.actAs` on the service account. repeated string service_account_scopes = 3 [(google.api.field_behavior) = OPTIONAL]; @@ -491,7 +619,9 @@ message WorkstationConfig { [(google.api.field_behavior) = OPTIONAL]; // Optional. Whether to enable nested virtualization on Cloud Workstations - // VMs created under this workstation configuration. + // VMs created using this workstation configuration. + // + // Defaults to false. // // Nested virtualization lets you run virtual machine (VM) instances // inside your workstation. Before enabling nested virtualization, @@ -514,16 +644,6 @@ message WorkstationConfig { // workstation configurations that specify a // [machine_type][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.machine_type] // in the N1 or N2 machine series. - // * **GPUs**: nested virtualization may not be enabled on workstation - // configurations with accelerators. - // * **Operating System**: Because - // [Container-Optimized - // OS](https://cloud.google.com/compute/docs/images/os-details#container-optimized_os_cos) - // does not support nested virtualization, when nested virtualization is - // enabled, the underlying Compute Engine VM instances boot from an - // [Ubuntu - // LTS](https://cloud.google.com/compute/docs/images/os-details#ubuntu_lts) - // image. bool enable_nested_virtualization = 7 [(google.api.field_behavior) = OPTIONAL]; @@ -538,18 +658,58 @@ message WorkstationConfig { // Optional. The size of the boot disk for the VM in gigabytes (GB). // The minimum boot disk size is `30` GB. Defaults to `50` GB. int32 boot_disk_size_gb = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A list of the type and count of accelerator cards attached to + // the instance. + repeated Accelerator accelerators = 11 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A list of the boost configurations that workstations created + // using this workstation configuration are allowed to use. If specified, + // users will have the option to choose from the list of boost configs + // when starting a workstation. + repeated BoostConfig boost_configs = 25 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Whether to disable SSH access to the VM. + bool disable_ssh = 13 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Resource manager tags to be bound to this instance. + // Tag keys and values have the same definition as [resource manager + // tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview). + // Keys must be in the format `tagKeys/{tag_key_id}`, and + // values are in the format `tagValues/456`. + map vm_tags = 14 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Link to the startup script stored in Cloud Storage. This + // script will be run on the host workstation VM when the VM is created. + // The URI must be of the form gs://{bucket-name}/{object-name}. If + // specifying a startup script, the service account must have [Permission + // to access the bucket and script file in Cloud + // Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions). + // Otherwise, the script must be publicly accessible. + // Note that the service regularly updates the OS version of the host VM, + // and it is the responsibility of the user to ensure the script stays + // compatible with the OS version. + string startup_script_uri = 26 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Custom metadata to apply to Compute Engine instances. + map instance_metadata = 27 + [(google.api.field_behavior) = OPTIONAL]; } - // Type of host that will be used for the workstation's runtime. + // Type of host to be used for the workstation's runtime. oneof config { // Specifies a Compute Engine instance as the host. GceInstance gce_instance = 1; } } - // A directory to persist across workstation sessions. + // A directory to persist across workstation sessions. Updates to this field + // will not update existing workstations and will only take effect on new + // workstations. message PersistentDirectory { - // A PersistentDirectory backed by a Compute Engine regional persistent + // A Persistent Directory backed by a Compute Engine regional persistent // disk. The // [persistent_directories][google.cloud.workstations.v1.WorkstationConfig.persistent_directories] // field is repeated, but it may contain only one entry. It creates a @@ -586,6 +746,10 @@ message WorkstationConfig { // `"pd-balanced"` or `"pd-ssd"`. int32 size_gb = 1 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Maximum size in GB to which this persistent directory can be + // resized. Defaults to unlimited if not set. + int32 max_size_gb = 7 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Type of file system that the disk should be formatted with. // The workstation image must support this file system type. Must be empty // if @@ -603,25 +767,155 @@ message WorkstationConfig { // [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb] // and // [fs_type][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type] - // must be empty. + // must be empty. Must be formatted as ext4 file system with no + // partitions. string source_snapshot = 5 [(google.api.field_behavior) = OPTIONAL]; // Optional. Whether the persistent disk should be deleted when the // workstation is deleted. Valid values are `DELETE` and `RETAIN`. // Defaults to `DELETE`. ReclaimPolicy reclaim_policy = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Number of seconds to wait after initially creating or + // subsequently shutting down the workstation before converting its disk + // into a snapshot. This generally saves costs at the expense of greater + // startup time on next workstation start, as the service will need to + // create a disk from the archival snapshot. + // + // A value of `"0s"` indicates that the disk will never be archived. + google.protobuf.Duration archive_timeout = 6 + [(google.api.field_behavior) = OPTIONAL]; + } + + // A Persistent Directory backed by a Compute Engine + // [Hyperdisk Balanced High Availability + // Disk](https://cloud.google.com/compute/docs/disks/hd-types/hyperdisk-balanced-ha). + // This is a high-availability block storage solution that offers a balance + // between performance and cost for most general-purpose workloads. + message GceHyperdiskBalancedHighAvailability { + // Value representing what should happen to the disk after the workstation + // is deleted. + enum ReclaimPolicy { + // Do not use. + RECLAIM_POLICY_UNSPECIFIED = 0; + + // Delete the persistent disk when deleting the workstation. + DELETE = 1; + + // Keep the persistent disk when deleting the workstation. + // An administrator must manually delete the disk. + RETAIN = 2; + } + + // Optional. The GB capacity of a persistent home directory for each + // workstation created with this configuration. Must be empty if + // [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.source_snapshot] + // is set. + // + // Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`. + // Defaults to `200`. + int32 size_gb = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Maximum size in GB to which this persistent directory can be + // resized. Defaults to unlimited if not set. + int32 max_size_gb = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Name of the snapshot to use as the source for the disk. If + // set, + // [size_gb][google.cloud.workstations.v1.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb] + // must be empty. Must be formatted as ext4 file system with no + // partitions. + string source_snapshot = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Whether the persistent disk should be deleted when the + // workstation is deleted. Valid values are `DELETE` and `RETAIN`. + // Defaults to `DELETE`. + ReclaimPolicy reclaim_policy = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Number of seconds to wait after initially creating or + // subsequently shutting down the workstation before converting its disk + // into a snapshot. This generally saves costs at the expense of greater + // startup time on next workstation start, as the service will need to + // create a disk from the archival snapshot. + // + // A value of `"0s"` indicates that the disk will never be archived. + google.protobuf.Duration archive_timeout = 4 + [(google.api.field_behavior) = OPTIONAL]; } // How a persistent directory should be implemented. oneof directory_type { // A PersistentDirectory backed by a Compute Engine persistent disk. GceRegionalPersistentDisk gce_pd = 2; + + // A PersistentDirectory backed by a Compute Engine hyperdisk high + // availability disk. + GceHyperdiskBalancedHighAvailability gce_hd = 3; } // Optional. Location of this directory in the running workstation. string mount_path = 1 [(google.api.field_behavior) = OPTIONAL]; } + // An ephemeral directory which won't persist across workstation sessions. It + // is freshly created on every workstation start operation. + message EphemeralDirectory { + // An EphemeralDirectory is backed by a Compute Engine persistent disk. + message GcePersistentDisk { + // Optional. Type of the disk to use. Defaults to `"pd-standard"`. + string disk_type = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Name of the snapshot to use as the source for the disk. Must + // be empty if + // [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image] + // is set. Must be empty if + // [read_only][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only] + // is false. Updating + // [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot] + // will update content in the ephemeral directory after the workstation is + // restarted. + // + // Only file systems supported by Container-Optimized OS (COS) + // are explicitly supported. For a list of supported file systems, see + // [the filesystems available in Container-Optimized + // OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems). + // + // This field is mutable. + string source_snapshot = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Name of the disk image to use as the source for the disk. + // Must be empty if + // [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot] + // is set. Updating + // [source_image][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image] + // will update content in the ephemeral directory after the workstation is + // restarted. + // + // Only file systems supported by Container-Optimized OS (COS) + // are explicitly supported. For a list of supported file systems, please + // refer to the [COS + // documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems). + // + // This field is mutable. + string source_image = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Whether the disk is read only. If true, the disk may be + // shared by multiple VMs and + // [source_snapshot][google.cloud.workstations.v1.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot] + // must be set. + bool read_only = 4 [(google.api.field_behavior) = OPTIONAL]; + } + + // How an ephemeral directory should be implemented. + oneof directory_type { + // An EphemeralDirectory backed by a Compute Engine persistent disk. + GcePersistentDisk gce_pd = 3; + } + + // Required. Location of this directory in the running workstation. + string mount_path = 1 [(google.api.field_behavior) = REQUIRED]; + } + // A Docker container. message Container { // Optional. A Docker container image that defines a custom environment. @@ -633,7 +927,10 @@ message WorkstationConfig { // [custom container // images](https://cloud.google.com/workstations/docs/custom-container-images). // If using a private image, the `host.gceInstance.serviceAccount` field - // must be specified in the workstation configuration and must have + // must be specified in the workstation configuration. + // If using a custom container image, the service account must have + // [Artifact Registry + // Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles) // permission to pull the specified image. Otherwise, the image must be // publicly accessible. string image = 1 [(google.api.field_behavior) = OPTIONAL]; @@ -688,15 +985,36 @@ message WorkstationConfig { int32 port = 2 [(google.api.field_behavior) = OPTIONAL]; } - // Full name of this workstation configuration. - string name = 1; + // A PortRange defines a range of ports. Both + // [first][google.cloud.workstations.v1.WorkstationConfig.PortRange.first] and + // [last][google.cloud.workstations.v1.WorkstationConfig.PortRange.last] are + // inclusive. + // To specify a single port, both + // [first][google.cloud.workstations.v1.WorkstationConfig.PortRange.first] and + // [last][google.cloud.workstations.v1.WorkstationConfig.PortRange.last] + // should be the same. + message PortRange { + // Required. Starting port number for the current range of ports. + // Valid ports are 22, 80, and ports within the range 1024-65535. + int32 first = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Ending port number for the current range of ports. + // Valid ports are 22, 80, and ports within the range 1024-65535. + int32 last = 2 [(google.api.field_behavior) = REQUIRED]; + } + + // Identifier. Full name of this workstation configuration. + string name = 1 [(google.api.field_behavior) = IDENTIFIER]; // Optional. Human-readable name for this workstation configuration. string display_name = 2 [(google.api.field_behavior) = OPTIONAL]; // Output only. A system-assigned unique identifier for this workstation // configuration. - string uid = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + string uid = 3 [ + (google.api.field_info).format = UUID4, + (google.api.field_behavior) = OUTPUT_ONLY + ]; // Output only. Indicates whether this workstation configuration is currently // being updated to match its intended state. @@ -766,6 +1084,22 @@ message WorkstationConfig { google.protobuf.Duration running_timeout = 11 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Maximum number of workstations under this configuration a user + // can have `workstations.workstation.use` permission on. + // + // Only enforced on CreateWorkstation API calls on the user issuing the API + // request. Can be overridden by: + // + // - granting a user + // workstations.workstationConfigs.exemptMaxUsableWorkstationLimit permission, + // or + // - having a user with that permission create a workstation and + // granting another user `workstations.workstation.use` permission on + // that workstation. + // + // If not specified, defaults to `0`, which indicates unlimited. + int32 max_usable_workstations = 28 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Runtime host for the workstation. Host host = 12 [(google.api.field_behavior) = OPTIONAL]; @@ -773,6 +1107,11 @@ message WorkstationConfig { repeated PersistentDirectory persistent_directories = 13 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Ephemeral directories which won't persist across workstation + // sessions. + repeated EphemeralDirectory ephemeral_directories = 22 + [(google.api.field_behavior) = OPTIONAL]; + // Optional. Container that runs upon startup for each workstation using this // workstation configuration. Container container = 14 [(google.api.field_behavior) = OPTIONAL]; @@ -816,15 +1155,55 @@ message WorkstationConfig { (google.api.field_behavior) = IMMUTABLE ]; - // Output only. Whether this resource is degraded, in which case it may - // require user action to restore full functionality. See also the + // Output only. Whether this workstation configuration is in degraded mode, in + // which case it may require user action to restore full functionality. The // [conditions][google.cloud.workstations.v1.WorkstationConfig.conditions] - // field. + // field contains detailed information about the status of the configuration. bool degraded = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. Status conditions describing the current resource state. + // Output only. Status conditions describing the workstation configuration's + // current state. repeated google.rpc.Status conditions = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Whether to enable Linux `auditd` logging on the workstation. When + // enabled, a + // [service_account][google.cloud.workstations.v1.WorkstationConfig.Host.GceInstance.service_account] + // must also be specified that has `roles/logging.logWriter` and + // `roles/monitoring.metricWriter` on the project. Operating system audit + // logging is distinct from [Cloud Audit + // Logs](https://cloud.google.com/workstations/docs/audit-logging) and + // [Container output + // logging](https://cloud.google.com/workstations/docs/container-output-logging#overview). + // Operating system audit logs are available in the + // [Cloud Logging](https://cloud.google.com/logging/docs) console by querying: + // + // resource.type="gce_instance" + // log_name:"/logs/linux-auditd" + bool enable_audit_agent = 20 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Disables support for plain TCP connections in the workstation. + // By default the service supports TCP connections through a websocket relay. + // Setting this option to true disables that relay, which prevents the usage + // of services that require plain TCP connections, such as SSH. + // When enabled, all communication must occur over HTTPS or WSS. + bool disable_tcp_connections = 24 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A list of + // [PortRange][google.cloud.workstations.v1.WorkstationConfig.PortRange]s + // specifying single ports or ranges of ports that are externally accessible + // in the workstation. Allowed ports must be one of 22, 80, or within range + // 1024-65535. If not specified defaults to ports 22, 80, and ports + // 1024-65535. + repeated PortRange allowed_ports = 25 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Grant creator of a workstation `roles/workstations.policyAdmin` + // role along with `roles/workstations.user` role on the workstation created + // by them. This allows workstation users to share access to either their + // entire workstation, or individual ports. Defaults to false. + bool grant_workstation_admin_role_on_create = 29 + [(google.api.field_behavior) = OPTIONAL]; } // A single instance of a developer workstation with its own persistent storage. @@ -837,6 +1216,47 @@ message Workstation { style: DECLARATIVE_FRIENDLY }; + // A directory to persist across workstation sessions. Updates to this field + // will only take effect on this workstation after it is restarted. + message WorkstationPersistentDirectory { + // Optional. The mount path of the persistent directory. + string mount_path = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Size of the persistent directory in GB. If specified in an + // update request, this is the desired size of the directory. + int32 size_gb = 3 [(google.api.field_behavior) = OPTIONAL]; + } + + // Runtime host for the workstation. + message RuntimeHost { + // The Compute Engine instance host. + message GceInstanceHost { + // Optional. Output only. The name of the Compute Engine instance. + string name = 1 [ + (google.api.field_behavior) = OPTIONAL, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + + // Optional. Output only. The ID of the Compute Engine instance. + string id = 2 [ + (google.api.field_behavior) = OPTIONAL, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + + // Optional. Output only. The zone of the Compute Engine instance. + string zone = 3 [ + (google.api.field_behavior) = OPTIONAL, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + } + + // Type of host used by the workstation. + oneof host_type { + // Specifies a Compute Engine instance as the host. + GceInstanceHost gce_instance_host = 1; + } + } + // Whether a workstation is running and ready to receive user requests. enum State { // Do not use. @@ -857,14 +1277,17 @@ message Workstation { STATE_STOPPED = 4; } - // Full name of this workstation. - string name = 1; + // Identifier. Full name of this workstation. + string name = 1 [(google.api.field_behavior) = IDENTIFIER]; // Optional. Human-readable name for this workstation. string display_name = 2 [(google.api.field_behavior) = OPTIONAL]; // Output only. A system-assigned unique identifier for this workstation. - string uid = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + string uid = 3 [ + (google.api.field_info).format = UUID4, + (google.api.field_behavior) = OUTPUT_ONLY + ]; // Output only. Indicates whether this workstation is currently being updated // to match its intended state. @@ -901,6 +1324,10 @@ message Workstation { // proceeding. string etag = 9 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Directories to persist across workstation sessions. + repeated WorkstationPersistentDirectory persistent_directories = 25 + [(google.api.field_behavior) = OPTIONAL]; + // Output only. Current state of the workstation. State state = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -910,6 +1337,27 @@ message Workstation { // clients may prefix the host with the destination port in the format // `{port}-{host}`. string host = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Environment variables passed to the workstation container's + // entrypoint. + map env = 12 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. The name of the Google Cloud KMS encryption key used to + // encrypt this workstation. The KMS key can only be configured in the + // WorkstationConfig. The expected format is + // `projects/*/locations/*/keyRings/*/cryptoKeys/*`. + string kms_key = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. The source workstation from which this workstation's persistent + // directories were cloned on creation. + string source_workstation = 17 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Output only. Runtime host for the workstation when in + // STATE_RUNNING. + RuntimeHost runtime_host = 21 [ + (google.api.field_behavior) = OPTIONAL, + (google.api.field_behavior) = OUTPUT_ONLY + ]; } // Request message for GetWorkstationCluster. @@ -939,6 +1387,10 @@ message ListWorkstationClustersRequest { // Optional. next_page_token value returned from a previous List request, if // any. string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter the WorkstationClusters to be listed. Possible filters are + // described in https://google.aip.dev/160. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; } // Response message for ListWorkstationClusters. @@ -971,7 +1423,7 @@ message CreateWorkstationClusterRequest { WorkstationCluster workstation_cluster = 3 [(google.api.field_behavior) = REQUIRED]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; } @@ -987,7 +1439,7 @@ message UpdateWorkstationClusterRequest { google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL]; @@ -1007,7 +1459,7 @@ message DeleteWorkstationClusterRequest { } ]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // apply it. bool validate_only = 2 [(google.api.field_behavior) = OPTIONAL]; @@ -1048,6 +1500,10 @@ message ListWorkstationConfigsRequest { // Optional. next_page_token value returned from a previous List request, if // any. string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter the WorkstationConfigs to be listed. Possible filters are + // described in https://google.aip.dev/160. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; } // Response message for ListWorkstationConfigs. @@ -1107,18 +1563,18 @@ message CreateWorkstationConfigRequest { // Required. ID to use for the workstation configuration. string workstation_config_id = 2 [(google.api.field_behavior) = REQUIRED]; - // Required. Config to create. + // Required. Workstation configuration to create. WorkstationConfig workstation_config = 3 [(google.api.field_behavior) = REQUIRED]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; } // Request message for UpdateWorkstationConfig. message UpdateWorkstationConfigRequest { - // Required. Config to update. + // Required. Workstation configuration to update. WorkstationConfig workstation_config = 1 [(google.api.field_behavior) = REQUIRED]; @@ -1127,7 +1583,7 @@ message UpdateWorkstationConfigRequest { google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL]; @@ -1147,7 +1603,7 @@ message DeleteWorkstationConfigRequest { } ]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 2 [(google.api.field_behavior) = OPTIONAL]; @@ -1188,6 +1644,10 @@ message ListWorkstationsRequest { // Optional. next_page_token value returned from a previous List request, if // any. string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter the Workstations to be listed. Possible filters are + // described in https://google.aip.dev/160. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; } // Response message for ListWorkstations. @@ -1247,10 +1707,14 @@ message CreateWorkstationRequest { // Required. ID to use for the workstation. string workstation_id = 2 [(google.api.field_behavior) = REQUIRED]; - // Required. Workstation to create. + // Required. Workstation to create. If source_workstation is specified, the + // user must have `workstations.workstations.use` permission on the source + // workstation, and the Cloud Workstations Service Agent for the project where + // you are creating the new workstation must have compute.disks.createSnapshot + // and compute.snapshots.useReadOnly on the source project. Workstation workstation = 3 [(google.api.field_behavior) = REQUIRED]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; } @@ -1260,18 +1724,17 @@ message UpdateWorkstationRequest { // Required. Workstation to update. Workstation workstation = 1 [(google.api.field_behavior) = REQUIRED]; - // Required. Mask specifying which fields in the workstation configuration - // should be updated. + // Required. Mask specifying which fields in the workstation should be + // updated. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL]; - // Optional. If set and the workstation configuration is not found, a new - // workstation configuration is created. In this situation, update_mask - // is ignored. + // Optional. If set and the workstation is not found, a new workstation is + // created. In this situation, update_mask is ignored. bool allow_missing = 4 [(google.api.field_behavior) = OPTIONAL]; } @@ -1285,7 +1748,7 @@ message DeleteWorkstationRequest { } ]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 2 [(google.api.field_behavior) = OPTIONAL]; @@ -1304,13 +1767,17 @@ message StartWorkstationRequest { } ]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 2 [(google.api.field_behavior) = OPTIONAL]; // Optional. If set, the request will be rejected if the latest version of the // workstation on the server does not have this ETag. string etag = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set, the workstation starts using the boost configuration with + // the specified ID. + string boost_config = 4 [(google.api.field_behavior) = OPTIONAL]; } // Request message for StopWorkstation. @@ -1323,7 +1790,7 @@ message StopWorkstationRequest { } ]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 2 [(google.api.field_behavior) = OPTIONAL]; @@ -1356,6 +1823,13 @@ message GenerateAccessTokenRequest { type: "workstations.googleapis.com/Workstation" } ]; + + // Optional. Port for which the access token should be generated. If + // specified, the generated access token grants access only to the + // specified port of the workstation. If specified, values must be within the + // range [1 - 65535]. If not specified, the generated access token grants + // access to all ports of the workstation. + int32 port = 4 [(google.api.field_behavior) = OPTIONAL]; } // Response message for GenerateAccessToken. diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationClusterRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationClusterRequest.java index 053b1f5e2ba6..42a752d5f31d 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationClusterRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationClusterRequest.java @@ -249,7 +249,7 @@ public com.google.cloud.workstations.v1beta.WorkstationCluster getWorkstationClu * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -1130,7 +1130,7 @@ public Builder clearWorkstationCluster() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1147,7 +1147,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1168,7 +1168,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationClusterRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationClusterRequestOrBuilder.java index a20c3d9f88db..ffa0c28109ba 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationClusterRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationClusterRequestOrBuilder.java @@ -129,7 +129,7 @@ public interface CreateWorkstationClusterRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationConfigRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationConfigRequest.java index 43fc3c54e243..424d4345ae4a 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationConfigRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationConfigRequest.java @@ -189,7 +189,7 @@ public com.google.protobuf.ByteString getWorkstationConfigIdBytes() { * * *
            -   * Required. Config to create.
            +   * Required. Workstation configuration to create.
                * 
            * * @@ -207,7 +207,7 @@ public boolean hasWorkstationConfig() { * * *
            -   * Required. Config to create.
            +   * Required. Workstation configuration to create.
                * 
            * * @@ -227,7 +227,7 @@ public com.google.cloud.workstations.v1beta.WorkstationConfig getWorkstationConf * * *
            -   * Required. Config to create.
            +   * Required. Workstation configuration to create.
                * 
            * * @@ -249,7 +249,7 @@ public com.google.cloud.workstations.v1beta.WorkstationConfig getWorkstationConf * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -917,7 +917,7 @@ public Builder setWorkstationConfigIdBytes(com.google.protobuf.ByteString value) * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -934,7 +934,7 @@ public boolean hasWorkstationConfig() { * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -957,7 +957,7 @@ public com.google.cloud.workstations.v1beta.WorkstationConfig getWorkstationConf * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -983,7 +983,7 @@ public Builder setWorkstationConfig( * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -1006,7 +1006,7 @@ public Builder setWorkstationConfig( * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -1038,7 +1038,7 @@ public Builder mergeWorkstationConfig( * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -1060,7 +1060,7 @@ public Builder clearWorkstationConfig() { * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -1078,7 +1078,7 @@ public Builder clearWorkstationConfig() { * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -1100,7 +1100,7 @@ public Builder clearWorkstationConfig() { * * *
            -     * Required. Config to create.
            +     * Required. Workstation configuration to create.
                  * 
            * * @@ -1130,7 +1130,7 @@ public Builder clearWorkstationConfig() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1147,7 +1147,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1168,7 +1168,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationConfigRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationConfigRequestOrBuilder.java index 7ad22f8c84d4..583e4e0da09f 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationConfigRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationConfigRequestOrBuilder.java @@ -86,7 +86,7 @@ public interface CreateWorkstationConfigRequestOrBuilder * * *
            -   * Required. Config to create.
            +   * Required. Workstation configuration to create.
                * 
            * * @@ -101,7 +101,7 @@ public interface CreateWorkstationConfigRequestOrBuilder * * *
            -   * Required. Config to create.
            +   * Required. Workstation configuration to create.
                * 
            * * @@ -116,7 +116,7 @@ public interface CreateWorkstationConfigRequestOrBuilder * * *
            -   * Required. Config to create.
            +   * Required. Workstation configuration to create.
                * 
            * * @@ -129,7 +129,7 @@ public interface CreateWorkstationConfigRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationRequest.java index 3fa48647572a..7eb1b0ef98dc 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationRequest.java @@ -189,7 +189,11 @@ public com.google.protobuf.ByteString getWorkstationIdBytes() { * * *
            -   * Required. Workstation to create.
            +   * Required. Workstation to create. If source_workstation is specified, the
            +   * user must have `workstations.workstations.use` permission on the source
            +   * workstation, and the Cloud Workstations Service Agent for the project where
            +   * you are creating the new workstation must have compute.disks.createSnapshot
            +   * and compute.snapshots.useReadOnly on the source project.
                * 
            * * @@ -207,7 +211,11 @@ public boolean hasWorkstation() { * * *
            -   * Required. Workstation to create.
            +   * Required. Workstation to create. If source_workstation is specified, the
            +   * user must have `workstations.workstations.use` permission on the source
            +   * workstation, and the Cloud Workstations Service Agent for the project where
            +   * you are creating the new workstation must have compute.disks.createSnapshot
            +   * and compute.snapshots.useReadOnly on the source project.
                * 
            * * @@ -227,7 +235,11 @@ public com.google.cloud.workstations.v1beta.Workstation getWorkstation() { * * *
            -   * Required. Workstation to create.
            +   * Required. Workstation to create. If source_workstation is specified, the
            +   * user must have `workstations.workstations.use` permission on the source
            +   * workstation, and the Cloud Workstations Service Agent for the project where
            +   * you are creating the new workstation must have compute.disks.createSnapshot
            +   * and compute.snapshots.useReadOnly on the source project.
                * 
            * * @@ -248,7 +260,7 @@ public com.google.cloud.workstations.v1beta.WorkstationOrBuilder getWorkstationO * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -909,7 +921,11 @@ public Builder setWorkstationIdBytes(com.google.protobuf.ByteString value) { * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -926,7 +942,11 @@ public boolean hasWorkstation() { * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -949,7 +969,11 @@ public com.google.cloud.workstations.v1beta.Workstation getWorkstation() { * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -974,7 +998,11 @@ public Builder setWorkstation(com.google.cloud.workstations.v1beta.Workstation v * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -997,7 +1025,11 @@ public Builder setWorkstation( * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -1028,7 +1060,11 @@ public Builder mergeWorkstation(com.google.cloud.workstations.v1beta.Workstation * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -1050,7 +1086,11 @@ public Builder clearWorkstation() { * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -1067,7 +1107,11 @@ public com.google.cloud.workstations.v1beta.Workstation.Builder getWorkstationBu * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -1088,7 +1132,11 @@ public com.google.cloud.workstations.v1beta.WorkstationOrBuilder getWorkstationO * * *
            -     * Required. Workstation to create.
            +     * Required. Workstation to create. If source_workstation is specified, the
            +     * user must have `workstations.workstations.use` permission on the source
            +     * workstation, and the Cloud Workstations Service Agent for the project where
            +     * you are creating the new workstation must have compute.disks.createSnapshot
            +     * and compute.snapshots.useReadOnly on the source project.
                  * 
            * * @@ -1118,7 +1166,7 @@ public com.google.cloud.workstations.v1beta.WorkstationOrBuilder getWorkstationO * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1135,7 +1183,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1156,7 +1204,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationRequestOrBuilder.java index 80f1ef99835f..10bdd0262328 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/CreateWorkstationRequestOrBuilder.java @@ -86,7 +86,11 @@ public interface CreateWorkstationRequestOrBuilder * * *
            -   * Required. Workstation to create.
            +   * Required. Workstation to create. If source_workstation is specified, the
            +   * user must have `workstations.workstations.use` permission on the source
            +   * workstation, and the Cloud Workstations Service Agent for the project where
            +   * you are creating the new workstation must have compute.disks.createSnapshot
            +   * and compute.snapshots.useReadOnly on the source project.
                * 
            * * @@ -101,7 +105,11 @@ public interface CreateWorkstationRequestOrBuilder * * *
            -   * Required. Workstation to create.
            +   * Required. Workstation to create. If source_workstation is specified, the
            +   * user must have `workstations.workstations.use` permission on the source
            +   * workstation, and the Cloud Workstations Service Agent for the project where
            +   * you are creating the new workstation must have compute.disks.createSnapshot
            +   * and compute.snapshots.useReadOnly on the source project.
                * 
            * * @@ -116,7 +124,11 @@ public interface CreateWorkstationRequestOrBuilder * * *
            -   * Required. Workstation to create.
            +   * Required. Workstation to create. If source_workstation is specified, the
            +   * user must have `workstations.workstations.use` permission on the source
            +   * workstation, and the Cloud Workstations Service Agent for the project where
            +   * you are creating the new workstation must have compute.disks.createSnapshot
            +   * and compute.snapshots.useReadOnly on the source project.
                * 
            * * @@ -129,7 +141,7 @@ public interface CreateWorkstationRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationClusterRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationClusterRequest.java index 7aae74a4130b..73b6bcd2b1b2 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationClusterRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationClusterRequest.java @@ -135,7 +135,7 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * apply it.
                * 
            * @@ -738,7 +738,7 @@ public Builder setNameBytes(com.google.protobuf.ByteString value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * apply it.
                  * 
            * @@ -755,7 +755,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * apply it.
                  * 
            * @@ -776,7 +776,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationClusterRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationClusterRequestOrBuilder.java index aac995a4ea37..353161407697 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationClusterRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationClusterRequestOrBuilder.java @@ -60,7 +60,7 @@ public interface DeleteWorkstationClusterRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationConfigRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationConfigRequest.java index 69704356f8c2..6ee28eef37fe 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationConfigRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationConfigRequest.java @@ -135,7 +135,7 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -738,7 +738,7 @@ public Builder setNameBytes(com.google.protobuf.ByteString value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -755,7 +755,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -776,7 +776,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationConfigRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationConfigRequestOrBuilder.java index 0645e0404d9f..0bb7a5f44a91 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationConfigRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationConfigRequestOrBuilder.java @@ -60,7 +60,7 @@ public interface DeleteWorkstationConfigRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationRequest.java index 0acfa65d8d51..43d4e2efd1d4 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationRequest.java @@ -135,7 +135,7 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -690,7 +690,7 @@ public Builder setNameBytes(com.google.protobuf.ByteString value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -707,7 +707,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -728,7 +728,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationRequestOrBuilder.java index 39f445e5a5db..ca9897a0305f 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/DeleteWorkstationRequestOrBuilder.java @@ -60,7 +60,7 @@ public interface DeleteWorkstationRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/GenerateAccessTokenRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/GenerateAccessTokenRequest.java index 65a43effbb9c..1a7459d88f84 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/GenerateAccessTokenRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/GenerateAccessTokenRequest.java @@ -302,6 +302,29 @@ public com.google.protobuf.ByteString getWorkstationBytes() { } } + public static final int PORT_FIELD_NUMBER = 4; + private int port_ = 0; + + /** + * + * + *
            +   * Optional. Port for which the access token should be generated. If
            +   * specified, the generated access token grants access only to the
            +   * specified port of the workstation. If specified, values must be within the
            +   * range [1 - 65535]. If not specified, the generated access token grants
            +   * access to all ports of the workstation.
            +   * 
            + * + * int32 port = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The port. + */ + @java.lang.Override + public int getPort() { + return port_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -325,6 +348,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (expirationCase_ == 3) { output.writeMessage(3, (com.google.protobuf.Duration) expiration_); } + if (port_ != 0) { + output.writeInt32(4, port_); + } getUnknownFields().writeTo(output); } @@ -347,6 +373,9 @@ public int getSerializedSize() { com.google.protobuf.CodedOutputStream.computeMessageSize( 3, (com.google.protobuf.Duration) expiration_); } + if (port_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(4, port_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -364,6 +393,7 @@ public boolean equals(final java.lang.Object obj) { (com.google.cloud.workstations.v1beta.GenerateAccessTokenRequest) obj; if (!getWorkstation().equals(other.getWorkstation())) return false; + if (getPort() != other.getPort()) return false; if (!getExpirationCase().equals(other.getExpirationCase())) return false; switch (expirationCase_) { case 2: @@ -388,6 +418,8 @@ public int hashCode() { hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + WORKSTATION_FIELD_NUMBER; hash = (53 * hash) + getWorkstation().hashCode(); + hash = (37 * hash) + PORT_FIELD_NUMBER; + hash = (53 * hash) + getPort(); switch (expirationCase_) { case 2: hash = (37 * hash) + EXPIRE_TIME_FIELD_NUMBER; @@ -548,6 +580,7 @@ public Builder clear() { ttlBuilder_.clear(); } workstation_ = ""; + port_ = 0; expirationCase_ = 0; expiration_ = null; return this; @@ -592,6 +625,9 @@ private void buildPartial0( if (((from_bitField0_ & 0x00000004) != 0)) { result.workstation_ = workstation_; } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.port_ = port_; + } } private void buildPartialOneofs( @@ -626,6 +662,9 @@ public Builder mergeFrom( bitField0_ |= 0x00000004; onChanged(); } + if (other.getPort() != 0) { + setPort(other.getPort()); + } switch (other.getExpirationCase()) { case EXPIRE_TIME: { @@ -687,6 +726,12 @@ public Builder mergeFrom( expirationCase_ = 3; break; } // case 26 + case 32: + { + port_ = input.readInt32(); + bitField0_ |= 0x00000008; + break; + } // case 32 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -1319,6 +1364,74 @@ public Builder setWorkstationBytes(com.google.protobuf.ByteString value) { return this; } + private int port_; + + /** + * + * + *
            +     * Optional. Port for which the access token should be generated. If
            +     * specified, the generated access token grants access only to the
            +     * specified port of the workstation. If specified, values must be within the
            +     * range [1 - 65535]. If not specified, the generated access token grants
            +     * access to all ports of the workstation.
            +     * 
            + * + * int32 port = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The port. + */ + @java.lang.Override + public int getPort() { + return port_; + } + + /** + * + * + *
            +     * Optional. Port for which the access token should be generated. If
            +     * specified, the generated access token grants access only to the
            +     * specified port of the workstation. If specified, values must be within the
            +     * range [1 - 65535]. If not specified, the generated access token grants
            +     * access to all ports of the workstation.
            +     * 
            + * + * int32 port = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The port to set. + * @return This builder for chaining. + */ + public Builder setPort(int value) { + + port_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Port for which the access token should be generated. If
            +     * specified, the generated access token grants access only to the
            +     * specified port of the workstation. If specified, values must be within the
            +     * range [1 - 65535]. If not specified, the generated access token grants
            +     * access to all ports of the workstation.
            +     * 
            + * + * int32 port = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearPort() { + bitField0_ = (bitField0_ & ~0x00000008); + port_ = 0; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.GenerateAccessTokenRequest) } diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/GenerateAccessTokenRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/GenerateAccessTokenRequestOrBuilder.java index dfea9d02d249..74dd350ab1e5 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/GenerateAccessTokenRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/GenerateAccessTokenRequestOrBuilder.java @@ -147,6 +147,23 @@ public interface GenerateAccessTokenRequestOrBuilder */ com.google.protobuf.ByteString getWorkstationBytes(); + /** + * + * + *
            +   * Optional. Port for which the access token should be generated. If
            +   * specified, the generated access token grants access only to the
            +   * specified port of the workstation. If specified, values must be within the
            +   * range [1 - 65535]. If not specified, the generated access token grants
            +   * access to all ports of the workstation.
            +   * 
            + * + * int32 port = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The port. + */ + int getPort(); + com.google.cloud.workstations.v1beta.GenerateAccessTokenRequest.ExpirationCase getExpirationCase(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationClustersRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationClustersRequest.java index 9c101f63fddb..84453b00cc3d 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationClustersRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationClustersRequest.java @@ -54,6 +54,7 @@ private ListWorkstationClustersRequest(com.google.protobuf.GeneratedMessage.Buil private ListWorkstationClustersRequest() { parent_ = ""; pageToken_ = ""; + filter_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -202,6 +203,61 @@ public com.google.protobuf.ByteString getPageTokenBytes() { } } + public static final int FILTER_FIELD_NUMBER = 4; + + @SuppressWarnings("serial") + private volatile java.lang.Object filter_ = ""; + + /** + * + * + *
            +   * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + @java.lang.Override + public java.lang.String getFilter() { + java.lang.Object ref = filter_; + 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(); + filter_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + @java.lang.Override + public com.google.protobuf.ByteString getFilterBytes() { + java.lang.Object ref = filter_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + filter_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -225,6 +281,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessage.writeString(output, 3, pageToken_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 4, filter_); + } getUnknownFields().writeTo(output); } @@ -243,6 +302,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(3, pageToken_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(4, filter_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -262,6 +324,7 @@ public boolean equals(final java.lang.Object obj) { if (!getParent().equals(other.getParent())) return false; if (getPageSize() != other.getPageSize()) return false; if (!getPageToken().equals(other.getPageToken())) return false; + if (!getFilter().equals(other.getFilter())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -279,6 +342,8 @@ public int hashCode() { hash = (53 * hash) + getPageSize(); hash = (37 * hash) + PAGE_TOKEN_FIELD_NUMBER; hash = (53 * hash) + getPageToken().hashCode(); + hash = (37 * hash) + FILTER_FIELD_NUMBER; + hash = (53 * hash) + getFilter().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -425,6 +490,7 @@ public Builder clear() { parent_ = ""; pageSize_ = 0; pageToken_ = ""; + filter_ = ""; return this; } @@ -473,6 +539,9 @@ private void buildPartial0( if (((from_bitField0_ & 0x00000004) != 0)) { result.pageToken_ = pageToken_; } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.filter_ = filter_; + } } @java.lang.Override @@ -504,6 +573,11 @@ public Builder mergeFrom( bitField0_ |= 0x00000004; onChanged(); } + if (!other.getFilter().isEmpty()) { + filter_ = other.filter_; + bitField0_ |= 0x00000008; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -548,6 +622,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000004; break; } // case 26 + case 34: + { + filter_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 34 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -860,6 +940,122 @@ public Builder setPageTokenBytes(com.google.protobuf.ByteString value) { return this; } + private java.lang.Object filter_ = ""; + + /** + * + * + *
            +     * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + public java.lang.String getFilter() { + java.lang.Object ref = filter_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + filter_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + public com.google.protobuf.ByteString getFilterBytes() { + java.lang.Object ref = filter_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + filter_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The filter to set. + * @return This builder for chaining. + */ + public Builder setFilter(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + filter_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearFilter() { + filter_ = getDefaultInstance().getFilter(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for filter to set. + * @return This builder for chaining. + */ + public Builder setFilterBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + filter_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.ListWorkstationClustersRequest) } diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationClustersRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationClustersRequestOrBuilder.java index 9ce515868c46..2dbba937a9b7 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationClustersRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationClustersRequestOrBuilder.java @@ -96,4 +96,32 @@ public interface ListWorkstationClustersRequestOrBuilder * @return The bytes for pageToken. */ com.google.protobuf.ByteString getPageTokenBytes(); + + /** + * + * + *
            +   * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + java.lang.String getFilter(); + + /** + * + * + *
            +   * Optional. Filter the WorkstationClusters to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + com.google.protobuf.ByteString getFilterBytes(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationConfigsRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationConfigsRequest.java index 4d7cfa192360..ba3068c0aa30 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationConfigsRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationConfigsRequest.java @@ -54,6 +54,7 @@ private ListWorkstationConfigsRequest(com.google.protobuf.GeneratedMessage.Build private ListWorkstationConfigsRequest() { parent_ = ""; pageToken_ = ""; + filter_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -202,6 +203,61 @@ public com.google.protobuf.ByteString getPageTokenBytes() { } } + public static final int FILTER_FIELD_NUMBER = 4; + + @SuppressWarnings("serial") + private volatile java.lang.Object filter_ = ""; + + /** + * + * + *
            +   * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + @java.lang.Override + public java.lang.String getFilter() { + java.lang.Object ref = filter_; + 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(); + filter_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + @java.lang.Override + public com.google.protobuf.ByteString getFilterBytes() { + java.lang.Object ref = filter_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + filter_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -225,6 +281,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessage.writeString(output, 3, pageToken_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 4, filter_); + } getUnknownFields().writeTo(output); } @@ -243,6 +302,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(3, pageToken_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(4, filter_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -262,6 +324,7 @@ public boolean equals(final java.lang.Object obj) { if (!getParent().equals(other.getParent())) return false; if (getPageSize() != other.getPageSize()) return false; if (!getPageToken().equals(other.getPageToken())) return false; + if (!getFilter().equals(other.getFilter())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -279,6 +342,8 @@ public int hashCode() { hash = (53 * hash) + getPageSize(); hash = (37 * hash) + PAGE_TOKEN_FIELD_NUMBER; hash = (53 * hash) + getPageToken().hashCode(); + hash = (37 * hash) + FILTER_FIELD_NUMBER; + hash = (53 * hash) + getFilter().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -425,6 +490,7 @@ public Builder clear() { parent_ = ""; pageSize_ = 0; pageToken_ = ""; + filter_ = ""; return this; } @@ -473,6 +539,9 @@ private void buildPartial0( if (((from_bitField0_ & 0x00000004) != 0)) { result.pageToken_ = pageToken_; } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.filter_ = filter_; + } } @java.lang.Override @@ -504,6 +573,11 @@ public Builder mergeFrom( bitField0_ |= 0x00000004; onChanged(); } + if (!other.getFilter().isEmpty()) { + filter_ = other.filter_; + bitField0_ |= 0x00000008; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -548,6 +622,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000004; break; } // case 26 + case 34: + { + filter_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 34 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -860,6 +940,122 @@ public Builder setPageTokenBytes(com.google.protobuf.ByteString value) { return this; } + private java.lang.Object filter_ = ""; + + /** + * + * + *
            +     * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + public java.lang.String getFilter() { + java.lang.Object ref = filter_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + filter_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + public com.google.protobuf.ByteString getFilterBytes() { + java.lang.Object ref = filter_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + filter_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The filter to set. + * @return This builder for chaining. + */ + public Builder setFilter(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + filter_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearFilter() { + filter_ = getDefaultInstance().getFilter(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for filter to set. + * @return This builder for chaining. + */ + public Builder setFilterBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + filter_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.ListWorkstationConfigsRequest) } diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationConfigsRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationConfigsRequestOrBuilder.java index 10c73cf37ad7..51b0a5133747 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationConfigsRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationConfigsRequestOrBuilder.java @@ -96,4 +96,32 @@ public interface ListWorkstationConfigsRequestOrBuilder * @return The bytes for pageToken. */ com.google.protobuf.ByteString getPageTokenBytes(); + + /** + * + * + *
            +   * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + java.lang.String getFilter(); + + /** + * + * + *
            +   * Optional. Filter the WorkstationConfigs to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + com.google.protobuf.ByteString getFilterBytes(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationsRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationsRequest.java index 0d3ca7a8a8ec..9ec54a863300 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationsRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationsRequest.java @@ -54,6 +54,7 @@ private ListWorkstationsRequest(com.google.protobuf.GeneratedMessage.Builder private ListWorkstationsRequest() { parent_ = ""; pageToken_ = ""; + filter_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -202,6 +203,61 @@ public com.google.protobuf.ByteString getPageTokenBytes() { } } + public static final int FILTER_FIELD_NUMBER = 4; + + @SuppressWarnings("serial") + private volatile java.lang.Object filter_ = ""; + + /** + * + * + *
            +   * Optional. Filter the Workstations to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + @java.lang.Override + public java.lang.String getFilter() { + java.lang.Object ref = filter_; + 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(); + filter_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Filter the Workstations to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + @java.lang.Override + public com.google.protobuf.ByteString getFilterBytes() { + java.lang.Object ref = filter_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + filter_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -225,6 +281,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessage.writeString(output, 3, pageToken_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 4, filter_); + } getUnknownFields().writeTo(output); } @@ -243,6 +302,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(3, pageToken_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(4, filter_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -262,6 +324,7 @@ public boolean equals(final java.lang.Object obj) { if (!getParent().equals(other.getParent())) return false; if (getPageSize() != other.getPageSize()) return false; if (!getPageToken().equals(other.getPageToken())) return false; + if (!getFilter().equals(other.getFilter())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -279,6 +342,8 @@ public int hashCode() { hash = (53 * hash) + getPageSize(); hash = (37 * hash) + PAGE_TOKEN_FIELD_NUMBER; hash = (53 * hash) + getPageToken().hashCode(); + hash = (37 * hash) + FILTER_FIELD_NUMBER; + hash = (53 * hash) + getFilter().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -423,6 +488,7 @@ public Builder clear() { parent_ = ""; pageSize_ = 0; pageToken_ = ""; + filter_ = ""; return this; } @@ -470,6 +536,9 @@ private void buildPartial0( if (((from_bitField0_ & 0x00000004) != 0)) { result.pageToken_ = pageToken_; } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.filter_ = filter_; + } } @java.lang.Override @@ -499,6 +568,11 @@ public Builder mergeFrom(com.google.cloud.workstations.v1beta.ListWorkstationsRe bitField0_ |= 0x00000004; onChanged(); } + if (!other.getFilter().isEmpty()) { + filter_ = other.filter_; + bitField0_ |= 0x00000008; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -543,6 +617,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000004; break; } // case 26 + case 34: + { + filter_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 34 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -855,6 +935,122 @@ public Builder setPageTokenBytes(com.google.protobuf.ByteString value) { return this; } + private java.lang.Object filter_ = ""; + + /** + * + * + *
            +     * Optional. Filter the Workstations to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + public java.lang.String getFilter() { + java.lang.Object ref = filter_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + filter_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +     * Optional. Filter the Workstations to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + public com.google.protobuf.ByteString getFilterBytes() { + java.lang.Object ref = filter_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + filter_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Optional. Filter the Workstations to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The filter to set. + * @return This builder for chaining. + */ + public Builder setFilter(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + filter_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Filter the Workstations to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearFilter() { + filter_ = getDefaultInstance().getFilter(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Filter the Workstations to be listed. Possible filters are
            +     * described in https://google.aip.dev/160.
            +     * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for filter to set. + * @return This builder for chaining. + */ + public Builder setFilterBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + filter_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.ListWorkstationsRequest) } diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationsRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationsRequestOrBuilder.java index cce02d9d9f71..1a2b483c49d1 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationsRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/ListWorkstationsRequestOrBuilder.java @@ -96,4 +96,32 @@ public interface ListWorkstationsRequestOrBuilder * @return The bytes for pageToken. */ com.google.protobuf.ByteString getPageTokenBytes(); + + /** + * + * + *
            +   * Optional. Filter the Workstations to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + java.lang.String getFilter(); + + /** + * + * + *
            +   * Optional. Filter the Workstations to be listed. Possible filters are
            +   * described in https://google.aip.dev/160.
            +   * 
            + * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + com.google.protobuf.ByteString getFilterBytes(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/PushCredentialsMetadata.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/PushCredentialsMetadata.java new file mode 100644 index 000000000000..45812d4d09f9 --- /dev/null +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/PushCredentialsMetadata.java @@ -0,0 +1,400 @@ +/* + * 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/cloud/workstations/v1beta/workstations.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.workstations.v1beta; + +/** + * + * + *
            + * Metadata message for PushCredentials.
            + * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.PushCredentialsMetadata} + */ +@com.google.protobuf.Generated +public final class PushCredentialsMetadata extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.PushCredentialsMetadata) + PushCredentialsMetadataOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "PushCredentialsMetadata"); + } + + // Use PushCredentialsMetadata.newBuilder() to construct. + private PushCredentialsMetadata(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private PushCredentialsMetadata() {} + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsMetadata_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsMetadata_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.PushCredentialsMetadata.class, + com.google.cloud.workstations.v1beta.PushCredentialsMetadata.Builder.class); + } + + 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 { + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + 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.cloud.workstations.v1beta.PushCredentialsMetadata)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.PushCredentialsMetadata other = + (com.google.cloud.workstations.v1beta.PushCredentialsMetadata) obj; + + 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 = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsMetadata parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsMetadata parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsMetadata parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsMetadata 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.cloud.workstations.v1beta.PushCredentialsMetadata parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsMetadata parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsMetadata parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsMetadata 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.cloud.workstations.v1beta.PushCredentialsMetadata parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsMetadata 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.cloud.workstations.v1beta.PushCredentialsMetadata parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsMetadata 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.cloud.workstations.v1beta.PushCredentialsMetadata 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 message for PushCredentials.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.PushCredentialsMetadata} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.PushCredentialsMetadata) + com.google.cloud.workstations.v1beta.PushCredentialsMetadataOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsMetadata_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsMetadata_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.PushCredentialsMetadata.class, + com.google.cloud.workstations.v1beta.PushCredentialsMetadata.Builder.class); + } + + // Construct using com.google.cloud.workstations.v1beta.PushCredentialsMetadata.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsMetadata_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.PushCredentialsMetadata + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.PushCredentialsMetadata.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.PushCredentialsMetadata build() { + com.google.cloud.workstations.v1beta.PushCredentialsMetadata result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.PushCredentialsMetadata buildPartial() { + com.google.cloud.workstations.v1beta.PushCredentialsMetadata result = + new com.google.cloud.workstations.v1beta.PushCredentialsMetadata(this); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1beta.PushCredentialsMetadata) { + return mergeFrom((com.google.cloud.workstations.v1beta.PushCredentialsMetadata) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.workstations.v1beta.PushCredentialsMetadata other) { + if (other + == com.google.cloud.workstations.v1beta.PushCredentialsMetadata.getDefaultInstance()) + return this; + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.PushCredentialsMetadata) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.PushCredentialsMetadata) + private static final com.google.cloud.workstations.v1beta.PushCredentialsMetadata + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1beta.PushCredentialsMetadata(); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsMetadata getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public PushCredentialsMetadata parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.PushCredentialsMetadata getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/PushCredentialsMetadataOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/PushCredentialsMetadataOrBuilder.java new file mode 100644 index 000000000000..ccf28fe44078 --- /dev/null +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/PushCredentialsMetadataOrBuilder.java @@ -0,0 +1,27 @@ +/* + * 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/cloud/workstations/v1beta/workstations.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.workstations.v1beta; + +@com.google.protobuf.Generated +public interface PushCredentialsMetadataOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.PushCredentialsMetadata) + com.google.protobuf.MessageOrBuilder {} diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/PushCredentialsRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/PushCredentialsRequest.java new file mode 100644 index 000000000000..e2319e4923a1 --- /dev/null +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/PushCredentialsRequest.java @@ -0,0 +1,2426 @@ +/* + * 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/cloud/workstations/v1beta/workstations.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.workstations.v1beta; + +/** + * + * + *
            + * Request message for PushCredentials.
            + * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.PushCredentialsRequest} + */ +@com.google.protobuf.Generated +public final class PushCredentialsRequest extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.PushCredentialsRequest) + PushCredentialsRequestOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "PushCredentialsRequest"); + } + + // Use PushCredentialsRequest.newBuilder() to construct. + private PushCredentialsRequest(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private PushCredentialsRequest() { + workstation_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.PushCredentialsRequest.class, + com.google.cloud.workstations.v1beta.PushCredentialsRequest.Builder.class); + } + + public interface OAuthTokenOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +     * Optional. The email address encapsulated in the OAuth token.
            +     * 
            + * + * string email = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The email. + */ + java.lang.String getEmail(); + + /** + * + * + *
            +     * Optional. The email address encapsulated in the OAuth token.
            +     * 
            + * + * string email = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for email. + */ + com.google.protobuf.ByteString getEmailBytes(); + + /** + * + * + *
            +     * Optional. The scopes encapsulated in the OAuth token.
            +     * See https://developers.google.com/identity/protocols/oauth2/scopes for
            +     * more information.
            +     * 
            + * + * string scopes = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The scopes. + */ + java.lang.String getScopes(); + + /** + * + * + *
            +     * Optional. The scopes encapsulated in the OAuth token.
            +     * See https://developers.google.com/identity/protocols/oauth2/scopes for
            +     * more information.
            +     * 
            + * + * string scopes = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for scopes. + */ + com.google.protobuf.ByteString getScopesBytes(); + + /** + * + * + *
            +     * Required. The OAuth token.
            +     * 
            + * + * string access_token = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The accessToken. + */ + java.lang.String getAccessToken(); + + /** + * + * + *
            +     * Required. The OAuth token.
            +     * 
            + * + * string access_token = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for accessToken. + */ + com.google.protobuf.ByteString getAccessTokenBytes(); + + /** + * + * + *
            +     * Optional. The time the OAuth access token will expire. This should be the
            +     * time the access token was generated plus the expires_in offset returned
            +     * from the Access Token Response.
            +     * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the expireTime field is set. + */ + boolean hasExpireTime(); + + /** + * + * + *
            +     * Optional. The time the OAuth access token will expire. This should be the
            +     * time the access token was generated plus the expires_in offset returned
            +     * from the Access Token Response.
            +     * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The expireTime. + */ + com.google.protobuf.Timestamp getExpireTime(); + + /** + * + * + *
            +     * Optional. The time the OAuth access token will expire. This should be the
            +     * time the access token was generated plus the expires_in offset returned
            +     * from the Access Token Response.
            +     * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.protobuf.TimestampOrBuilder getExpireTimeOrBuilder(); + } + + /** + * + * + *
            +   * OAuth token.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken} + */ + public static final class OAuthToken extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken) + OAuthTokenOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "OAuthToken"); + } + + // Use OAuthToken.newBuilder() to construct. + private OAuthToken(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private OAuthToken() { + email_ = ""; + scopes_ = ""; + accessToken_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_OAuthToken_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_OAuthToken_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken.class, + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken.Builder.class); + } + + private int bitField0_; + public static final int EMAIL_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object email_ = ""; + + /** + * + * + *
            +     * Optional. The email address encapsulated in the OAuth token.
            +     * 
            + * + * string email = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The email. + */ + @java.lang.Override + public java.lang.String getEmail() { + java.lang.Object ref = email_; + 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(); + email_ = s; + return s; + } + } + + /** + * + * + *
            +     * Optional. The email address encapsulated in the OAuth token.
            +     * 
            + * + * string email = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for email. + */ + @java.lang.Override + public com.google.protobuf.ByteString getEmailBytes() { + java.lang.Object ref = email_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + email_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SCOPES_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object scopes_ = ""; + + /** + * + * + *
            +     * Optional. The scopes encapsulated in the OAuth token.
            +     * See https://developers.google.com/identity/protocols/oauth2/scopes for
            +     * more information.
            +     * 
            + * + * string scopes = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The scopes. + */ + @java.lang.Override + public java.lang.String getScopes() { + java.lang.Object ref = scopes_; + 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(); + scopes_ = s; + return s; + } + } + + /** + * + * + *
            +     * Optional. The scopes encapsulated in the OAuth token.
            +     * See https://developers.google.com/identity/protocols/oauth2/scopes for
            +     * more information.
            +     * 
            + * + * string scopes = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for scopes. + */ + @java.lang.Override + public com.google.protobuf.ByteString getScopesBytes() { + java.lang.Object ref = scopes_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + scopes_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ACCESS_TOKEN_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object accessToken_ = ""; + + /** + * + * + *
            +     * Required. The OAuth token.
            +     * 
            + * + * string access_token = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The accessToken. + */ + @java.lang.Override + public java.lang.String getAccessToken() { + java.lang.Object ref = accessToken_; + 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(); + accessToken_ = s; + return s; + } + } + + /** + * + * + *
            +     * Required. The OAuth token.
            +     * 
            + * + * string access_token = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for accessToken. + */ + @java.lang.Override + public com.google.protobuf.ByteString getAccessTokenBytes() { + java.lang.Object ref = accessToken_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + accessToken_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int EXPIRE_TIME_FIELD_NUMBER = 4; + private com.google.protobuf.Timestamp expireTime_; + + /** + * + * + *
            +     * Optional. The time the OAuth access token will expire. This should be the
            +     * time the access token was generated plus the expires_in offset returned
            +     * from the Access Token Response.
            +     * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the expireTime field is set. + */ + @java.lang.Override + public boolean hasExpireTime() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
            +     * Optional. The time the OAuth access token will expire. This should be the
            +     * time the access token was generated plus the expires_in offset returned
            +     * from the Access Token Response.
            +     * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The expireTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getExpireTime() { + return expireTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : expireTime_; + } + + /** + * + * + *
            +     * Optional. The time the OAuth access token will expire. This should be the
            +     * time the access token was generated plus the expires_in offset returned
            +     * from the Access Token Response.
            +     * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getExpireTimeOrBuilder() { + return expireTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : expireTime_; + } + + 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(email_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, email_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(scopes_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, scopes_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(accessToken_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, accessToken_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(4, getExpireTime()); + } + 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(email_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, email_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(scopes_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, scopes_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(accessToken_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, accessToken_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, getExpireTime()); + } + 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.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken other = + (com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken) obj; + + if (!getEmail().equals(other.getEmail())) return false; + if (!getScopes().equals(other.getScopes())) return false; + if (!getAccessToken().equals(other.getAccessToken())) return false; + if (hasExpireTime() != other.hasExpireTime()) return false; + if (hasExpireTime()) { + if (!getExpireTime().equals(other.getExpireTime())) 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) + EMAIL_FIELD_NUMBER; + hash = (53 * hash) + getEmail().hashCode(); + hash = (37 * hash) + SCOPES_FIELD_NUMBER; + hash = (53 * hash) + getScopes().hashCode(); + hash = (37 * hash) + ACCESS_TOKEN_FIELD_NUMBER; + hash = (53 * hash) + getAccessToken().hashCode(); + if (hasExpireTime()) { + hash = (37 * hash) + EXPIRE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getExpireTime().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken 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.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken 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.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + 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.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken 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.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken 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; + } + + /** + * + * + *
            +     * OAuth token.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken) + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthTokenOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_OAuthToken_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_OAuthToken_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken.class, + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken.Builder + .class); + } + + // Construct using + // com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetExpireTimeFieldBuilder(); + } + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + email_ = ""; + scopes_ = ""; + accessToken_ = ""; + expireTime_ = null; + if (expireTimeBuilder_ != null) { + expireTimeBuilder_.dispose(); + expireTimeBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_OAuthToken_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken build() { + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken buildPartial() { + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken result = + new com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.email_ = email_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.scopes_ = scopes_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.accessToken_ = accessToken_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000008) != 0)) { + result.expireTime_ = + expireTimeBuilder_ == null ? expireTime_ : expireTimeBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken other) { + if (other + == com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + .getDefaultInstance()) return this; + if (!other.getEmail().isEmpty()) { + email_ = other.email_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getScopes().isEmpty()) { + scopes_ = other.scopes_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getAccessToken().isEmpty()) { + accessToken_ = other.accessToken_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.hasExpireTime()) { + mergeExpireTime(other.getExpireTime()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + email_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + scopes_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + accessToken_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 34: + { + input.readMessage( + internalGetExpireTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000008; + break; + } // case 34 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object email_ = ""; + + /** + * + * + *
            +       * Optional. The email address encapsulated in the OAuth token.
            +       * 
            + * + * string email = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The email. + */ + public java.lang.String getEmail() { + java.lang.Object ref = email_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + email_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Optional. The email address encapsulated in the OAuth token.
            +       * 
            + * + * string email = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for email. + */ + public com.google.protobuf.ByteString getEmailBytes() { + java.lang.Object ref = email_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + email_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Optional. The email address encapsulated in the OAuth token.
            +       * 
            + * + * string email = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The email to set. + * @return This builder for chaining. + */ + public Builder setEmail(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + email_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. The email address encapsulated in the OAuth token.
            +       * 
            + * + * string email = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearEmail() { + email_ = getDefaultInstance().getEmail(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. The email address encapsulated in the OAuth token.
            +       * 
            + * + * string email = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for email to set. + * @return This builder for chaining. + */ + public Builder setEmailBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + email_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object scopes_ = ""; + + /** + * + * + *
            +       * Optional. The scopes encapsulated in the OAuth token.
            +       * See https://developers.google.com/identity/protocols/oauth2/scopes for
            +       * more information.
            +       * 
            + * + * string scopes = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The scopes. + */ + public java.lang.String getScopes() { + java.lang.Object ref = scopes_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + scopes_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Optional. The scopes encapsulated in the OAuth token.
            +       * See https://developers.google.com/identity/protocols/oauth2/scopes for
            +       * more information.
            +       * 
            + * + * string scopes = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for scopes. + */ + public com.google.protobuf.ByteString getScopesBytes() { + java.lang.Object ref = scopes_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + scopes_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Optional. The scopes encapsulated in the OAuth token.
            +       * See https://developers.google.com/identity/protocols/oauth2/scopes for
            +       * more information.
            +       * 
            + * + * string scopes = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The scopes to set. + * @return This builder for chaining. + */ + public Builder setScopes(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + scopes_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. The scopes encapsulated in the OAuth token.
            +       * See https://developers.google.com/identity/protocols/oauth2/scopes for
            +       * more information.
            +       * 
            + * + * string scopes = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearScopes() { + scopes_ = getDefaultInstance().getScopes(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. The scopes encapsulated in the OAuth token.
            +       * See https://developers.google.com/identity/protocols/oauth2/scopes for
            +       * more information.
            +       * 
            + * + * string scopes = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for scopes to set. + * @return This builder for chaining. + */ + public Builder setScopesBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + scopes_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object accessToken_ = ""; + + /** + * + * + *
            +       * Required. The OAuth token.
            +       * 
            + * + * string access_token = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The accessToken. + */ + public java.lang.String getAccessToken() { + java.lang.Object ref = accessToken_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + accessToken_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Required. The OAuth token.
            +       * 
            + * + * string access_token = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for accessToken. + */ + public com.google.protobuf.ByteString getAccessTokenBytes() { + java.lang.Object ref = accessToken_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + accessToken_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Required. The OAuth token.
            +       * 
            + * + * string access_token = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The accessToken to set. + * @return This builder for chaining. + */ + public Builder setAccessToken(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + accessToken_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Required. The OAuth token.
            +       * 
            + * + * string access_token = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearAccessToken() { + accessToken_ = getDefaultInstance().getAccessToken(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Required. The OAuth token.
            +       * 
            + * + * string access_token = 3 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The bytes for accessToken to set. + * @return This builder for chaining. + */ + public Builder setAccessTokenBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + accessToken_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private com.google.protobuf.Timestamp expireTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + expireTimeBuilder_; + + /** + * + * + *
            +       * Optional. The time the OAuth access token will expire. This should be the
            +       * time the access token was generated plus the expires_in offset returned
            +       * from the Access Token Response.
            +       * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the expireTime field is set. + */ + public boolean hasExpireTime() { + return ((bitField0_ & 0x00000008) != 0); + } + + /** + * + * + *
            +       * Optional. The time the OAuth access token will expire. This should be the
            +       * time the access token was generated plus the expires_in offset returned
            +       * from the Access Token Response.
            +       * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The expireTime. + */ + public com.google.protobuf.Timestamp getExpireTime() { + if (expireTimeBuilder_ == null) { + return expireTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : expireTime_; + } else { + return expireTimeBuilder_.getMessage(); + } + } + + /** + * + * + *
            +       * Optional. The time the OAuth access token will expire. This should be the
            +       * time the access token was generated plus the expires_in offset returned
            +       * from the Access Token Response.
            +       * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setExpireTime(com.google.protobuf.Timestamp value) { + if (expireTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + expireTime_ = value; + } else { + expireTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. The time the OAuth access token will expire. This should be the
            +       * time the access token was generated plus the expires_in offset returned
            +       * from the Access Token Response.
            +       * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setExpireTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (expireTimeBuilder_ == null) { + expireTime_ = builderForValue.build(); + } else { + expireTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. The time the OAuth access token will expire. This should be the
            +       * time the access token was generated plus the expires_in offset returned
            +       * from the Access Token Response.
            +       * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeExpireTime(com.google.protobuf.Timestamp value) { + if (expireTimeBuilder_ == null) { + if (((bitField0_ & 0x00000008) != 0) + && expireTime_ != null + && expireTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getExpireTimeBuilder().mergeFrom(value); + } else { + expireTime_ = value; + } + } else { + expireTimeBuilder_.mergeFrom(value); + } + if (expireTime_ != null) { + bitField0_ |= 0x00000008; + onChanged(); + } + return this; + } + + /** + * + * + *
            +       * Optional. The time the OAuth access token will expire. This should be the
            +       * time the access token was generated plus the expires_in offset returned
            +       * from the Access Token Response.
            +       * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearExpireTime() { + bitField0_ = (bitField0_ & ~0x00000008); + expireTime_ = null; + if (expireTimeBuilder_ != null) { + expireTimeBuilder_.dispose(); + expireTimeBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. The time the OAuth access token will expire. This should be the
            +       * time the access token was generated plus the expires_in offset returned
            +       * from the Access Token Response.
            +       * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.protobuf.Timestamp.Builder getExpireTimeBuilder() { + bitField0_ |= 0x00000008; + onChanged(); + return internalGetExpireTimeFieldBuilder().getBuilder(); + } + + /** + * + * + *
            +       * Optional. The time the OAuth access token will expire. This should be the
            +       * time the access token was generated plus the expires_in offset returned
            +       * from the Access Token Response.
            +       * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.protobuf.TimestampOrBuilder getExpireTimeOrBuilder() { + if (expireTimeBuilder_ != null) { + return expireTimeBuilder_.getMessageOrBuilder(); + } else { + return expireTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : expireTime_; + } + } + + /** + * + * + *
            +       * Optional. The time the OAuth access token will expire. This should be the
            +       * time the access token was generated plus the expires_in offset returned
            +       * from the Access Token Response.
            +       * 
            + * + * .google.protobuf.Timestamp expire_time = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetExpireTimeFieldBuilder() { + if (expireTimeBuilder_ == null) { + expireTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getExpireTime(), getParentForChildren(), isClean()); + expireTime_ = null; + } + return expireTimeBuilder_; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken) + private static final com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken(); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public OAuthToken parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + private int bitField0_; + public static final int WORKSTATION_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object workstation_ = ""; + + /** + * + * + *
            +   * Required. Name of the workstation for which the credentials should be
            +   * pushed.
            +   * 
            + * + * + * string workstation = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The workstation. + */ + @java.lang.Override + public java.lang.String getWorkstation() { + java.lang.Object ref = workstation_; + 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(); + workstation_ = s; + return s; + } + } + + /** + * + * + *
            +   * Required. Name of the workstation for which the credentials should be
            +   * pushed.
            +   * 
            + * + * + * string workstation = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for workstation. + */ + @java.lang.Override + public com.google.protobuf.ByteString getWorkstationBytes() { + java.lang.Object ref = workstation_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + workstation_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int APPLICATION_DEFAULT_CREDENTIALS_FIELD_NUMBER = 2; + private com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + applicationDefaultCredentials_; + + /** + * + * + *
            +   * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +   * Libraries, and other tooling within the user conainer:
            +   * https://cloud.google.com/docs/authentication/application-default-credentials
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the applicationDefaultCredentials field is set. + */ + @java.lang.Override + public boolean hasApplicationDefaultCredentials() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
            +   * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +   * Libraries, and other tooling within the user conainer:
            +   * https://cloud.google.com/docs/authentication/application-default-credentials
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The applicationDefaultCredentials. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + getApplicationDefaultCredentials() { + return applicationDefaultCredentials_ == null + ? com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + .getDefaultInstance() + : applicationDefaultCredentials_; + } + + /** + * + * + *
            +   * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +   * Libraries, and other tooling within the user conainer:
            +   * https://cloud.google.com/docs/authentication/application-default-credentials
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthTokenOrBuilder + getApplicationDefaultCredentialsOrBuilder() { + return applicationDefaultCredentials_ == null + ? com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + .getDefaultInstance() + : applicationDefaultCredentials_; + } + + 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(workstation_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, workstation_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(2, getApplicationDefaultCredentials()); + } + 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(workstation_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, workstation_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 2, getApplicationDefaultCredentials()); + } + 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.cloud.workstations.v1beta.PushCredentialsRequest)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.PushCredentialsRequest other = + (com.google.cloud.workstations.v1beta.PushCredentialsRequest) obj; + + if (!getWorkstation().equals(other.getWorkstation())) return false; + if (hasApplicationDefaultCredentials() != other.hasApplicationDefaultCredentials()) + return false; + if (hasApplicationDefaultCredentials()) { + if (!getApplicationDefaultCredentials().equals(other.getApplicationDefaultCredentials())) + 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) + WORKSTATION_FIELD_NUMBER; + hash = (53 * hash) + getWorkstation().hashCode(); + if (hasApplicationDefaultCredentials()) { + hash = (37 * hash) + APPLICATION_DEFAULT_CREDENTIALS_FIELD_NUMBER; + hash = (53 * hash) + getApplicationDefaultCredentials().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest 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.cloud.workstations.v1beta.PushCredentialsRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest 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.cloud.workstations.v1beta.PushCredentialsRequest parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest 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.cloud.workstations.v1beta.PushCredentialsRequest parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest 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.cloud.workstations.v1beta.PushCredentialsRequest 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 PushCredentials.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.PushCredentialsRequest} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.PushCredentialsRequest) + com.google.cloud.workstations.v1beta.PushCredentialsRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.PushCredentialsRequest.class, + com.google.cloud.workstations.v1beta.PushCredentialsRequest.Builder.class); + } + + // Construct using com.google.cloud.workstations.v1beta.PushCredentialsRequest.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetApplicationDefaultCredentialsFieldBuilder(); + } + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + workstation_ = ""; + applicationDefaultCredentials_ = null; + if (applicationDefaultCredentialsBuilder_ != null) { + applicationDefaultCredentialsBuilder_.dispose(); + applicationDefaultCredentialsBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.PushCredentialsRequest getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.PushCredentialsRequest.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.PushCredentialsRequest build() { + com.google.cloud.workstations.v1beta.PushCredentialsRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.PushCredentialsRequest buildPartial() { + com.google.cloud.workstations.v1beta.PushCredentialsRequest result = + new com.google.cloud.workstations.v1beta.PushCredentialsRequest(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.cloud.workstations.v1beta.PushCredentialsRequest result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.workstation_ = workstation_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.applicationDefaultCredentials_ = + applicationDefaultCredentialsBuilder_ == null + ? applicationDefaultCredentials_ + : applicationDefaultCredentialsBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1beta.PushCredentialsRequest) { + return mergeFrom((com.google.cloud.workstations.v1beta.PushCredentialsRequest) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.workstations.v1beta.PushCredentialsRequest other) { + if (other == com.google.cloud.workstations.v1beta.PushCredentialsRequest.getDefaultInstance()) + return this; + if (!other.getWorkstation().isEmpty()) { + workstation_ = other.workstation_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.hasApplicationDefaultCredentials()) { + mergeApplicationDefaultCredentials(other.getApplicationDefaultCredentials()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + workstation_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + input.readMessage( + internalGetApplicationDefaultCredentialsFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000002; + break; + } // case 18 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object workstation_ = ""; + + /** + * + * + *
            +     * Required. Name of the workstation for which the credentials should be
            +     * pushed.
            +     * 
            + * + * + * string workstation = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The workstation. + */ + public java.lang.String getWorkstation() { + java.lang.Object ref = workstation_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + workstation_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +     * Required. Name of the workstation for which the credentials should be
            +     * pushed.
            +     * 
            + * + * + * string workstation = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for workstation. + */ + public com.google.protobuf.ByteString getWorkstationBytes() { + java.lang.Object ref = workstation_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + workstation_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Required. Name of the workstation for which the credentials should be
            +     * pushed.
            +     * 
            + * + * + * string workstation = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param value The workstation to set. + * @return This builder for chaining. + */ + public Builder setWorkstation(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + workstation_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Required. Name of the workstation for which the credentials should be
            +     * pushed.
            +     * 
            + * + * + * string workstation = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearWorkstation() { + workstation_ = getDefaultInstance().getWorkstation(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Required. Name of the workstation for which the credentials should be
            +     * pushed.
            +     * 
            + * + * + * string workstation = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param value The bytes for workstation to set. + * @return This builder for chaining. + */ + public Builder setWorkstationBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + workstation_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + applicationDefaultCredentials_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken, + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken.Builder, + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthTokenOrBuilder> + applicationDefaultCredentialsBuilder_; + + /** + * + * + *
            +     * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +     * Libraries, and other tooling within the user conainer:
            +     * https://cloud.google.com/docs/authentication/application-default-credentials
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the applicationDefaultCredentials field is set. + */ + public boolean hasApplicationDefaultCredentials() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
            +     * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +     * Libraries, and other tooling within the user conainer:
            +     * https://cloud.google.com/docs/authentication/application-default-credentials
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The applicationDefaultCredentials. + */ + public com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + getApplicationDefaultCredentials() { + if (applicationDefaultCredentialsBuilder_ == null) { + return applicationDefaultCredentials_ == null + ? com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + .getDefaultInstance() + : applicationDefaultCredentials_; + } else { + return applicationDefaultCredentialsBuilder_.getMessage(); + } + } + + /** + * + * + *
            +     * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +     * Libraries, and other tooling within the user conainer:
            +     * https://cloud.google.com/docs/authentication/application-default-credentials
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setApplicationDefaultCredentials( + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken value) { + if (applicationDefaultCredentialsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + applicationDefaultCredentials_ = value; + } else { + applicationDefaultCredentialsBuilder_.setMessage(value); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +     * Libraries, and other tooling within the user conainer:
            +     * https://cloud.google.com/docs/authentication/application-default-credentials
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setApplicationDefaultCredentials( + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken.Builder + builderForValue) { + if (applicationDefaultCredentialsBuilder_ == null) { + applicationDefaultCredentials_ = builderForValue.build(); + } else { + applicationDefaultCredentialsBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +     * Libraries, and other tooling within the user conainer:
            +     * https://cloud.google.com/docs/authentication/application-default-credentials
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeApplicationDefaultCredentials( + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken value) { + if (applicationDefaultCredentialsBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0) + && applicationDefaultCredentials_ != null + && applicationDefaultCredentials_ + != com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + .getDefaultInstance()) { + getApplicationDefaultCredentialsBuilder().mergeFrom(value); + } else { + applicationDefaultCredentials_ = value; + } + } else { + applicationDefaultCredentialsBuilder_.mergeFrom(value); + } + if (applicationDefaultCredentials_ != null) { + bitField0_ |= 0x00000002; + onChanged(); + } + return this; + } + + /** + * + * + *
            +     * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +     * Libraries, and other tooling within the user conainer:
            +     * https://cloud.google.com/docs/authentication/application-default-credentials
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearApplicationDefaultCredentials() { + bitField0_ = (bitField0_ & ~0x00000002); + applicationDefaultCredentials_ = null; + if (applicationDefaultCredentialsBuilder_ != null) { + applicationDefaultCredentialsBuilder_.dispose(); + applicationDefaultCredentialsBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +     * Libraries, and other tooling within the user conainer:
            +     * https://cloud.google.com/docs/authentication/application-default-credentials
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken.Builder + getApplicationDefaultCredentialsBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return internalGetApplicationDefaultCredentialsFieldBuilder().getBuilder(); + } + + /** + * + * + *
            +     * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +     * Libraries, and other tooling within the user conainer:
            +     * https://cloud.google.com/docs/authentication/application-default-credentials
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthTokenOrBuilder + getApplicationDefaultCredentialsOrBuilder() { + if (applicationDefaultCredentialsBuilder_ != null) { + return applicationDefaultCredentialsBuilder_.getMessageOrBuilder(); + } else { + return applicationDefaultCredentials_ == null + ? com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + .getDefaultInstance() + : applicationDefaultCredentials_; + } + } + + /** + * + * + *
            +     * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +     * Libraries, and other tooling within the user conainer:
            +     * https://cloud.google.com/docs/authentication/application-default-credentials
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken, + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken.Builder, + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthTokenOrBuilder> + internalGetApplicationDefaultCredentialsFieldBuilder() { + if (applicationDefaultCredentialsBuilder_ == null) { + applicationDefaultCredentialsBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken, + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken.Builder, + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthTokenOrBuilder>( + getApplicationDefaultCredentials(), getParentForChildren(), isClean()); + applicationDefaultCredentials_ = null; + } + return applicationDefaultCredentialsBuilder_; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.PushCredentialsRequest) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.PushCredentialsRequest) + private static final com.google.cloud.workstations.v1beta.PushCredentialsRequest DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1beta.PushCredentialsRequest(); + } + + public static com.google.cloud.workstations.v1beta.PushCredentialsRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public PushCredentialsRequest parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.PushCredentialsRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/PushCredentialsRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/PushCredentialsRequestOrBuilder.java new file mode 100644 index 000000000000..0845260c71ce --- /dev/null +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/PushCredentialsRequestOrBuilder.java @@ -0,0 +1,111 @@ +/* + * 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/cloud/workstations/v1beta/workstations.proto +// Protobuf Java Version: 4.33.2 + +package com.google.cloud.workstations.v1beta; + +@com.google.protobuf.Generated +public interface PushCredentialsRequestOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.PushCredentialsRequest) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +   * Required. Name of the workstation for which the credentials should be
            +   * pushed.
            +   * 
            + * + * + * string workstation = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The workstation. + */ + java.lang.String getWorkstation(); + + /** + * + * + *
            +   * Required. Name of the workstation for which the credentials should be
            +   * pushed.
            +   * 
            + * + * + * string workstation = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for workstation. + */ + com.google.protobuf.ByteString getWorkstationBytes(); + + /** + * + * + *
            +   * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +   * Libraries, and other tooling within the user conainer:
            +   * https://cloud.google.com/docs/authentication/application-default-credentials
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the applicationDefaultCredentials field is set. + */ + boolean hasApplicationDefaultCredentials(); + + /** + * + * + *
            +   * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +   * Libraries, and other tooling within the user conainer:
            +   * https://cloud.google.com/docs/authentication/application-default-credentials
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The applicationDefaultCredentials. + */ + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken + getApplicationDefaultCredentials(); + + /** + * + * + *
            +   * Optional. Credentials used by Cloud Client Libraries, Google API Client
            +   * Libraries, and other tooling within the user conainer:
            +   * https://cloud.google.com/docs/authentication/application-default-credentials
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthToken application_default_credentials = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1beta.PushCredentialsRequest.OAuthTokenOrBuilder + getApplicationDefaultCredentialsOrBuilder(); +} diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StartWorkstationRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StartWorkstationRequest.java index 4b2109c13353..ccb9baa2ceaf 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StartWorkstationRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StartWorkstationRequest.java @@ -54,6 +54,7 @@ private StartWorkstationRequest(com.google.protobuf.GeneratedMessage.Builder private StartWorkstationRequest() { name_ = ""; etag_ = ""; + boostConfig_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -135,7 +136,7 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -203,6 +204,61 @@ public com.google.protobuf.ByteString getEtagBytes() { } } + public static final int BOOST_CONFIG_FIELD_NUMBER = 4; + + @SuppressWarnings("serial") + private volatile java.lang.Object boostConfig_ = ""; + + /** + * + * + *
            +   * Optional. If set, the workstation starts using the boost configuration with
            +   * the specified ID.
            +   * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The boostConfig. + */ + @java.lang.Override + public java.lang.String getBoostConfig() { + java.lang.Object ref = boostConfig_; + 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(); + boostConfig_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. If set, the workstation starts using the boost configuration with
            +   * the specified ID.
            +   * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for boostConfig. + */ + @java.lang.Override + public com.google.protobuf.ByteString getBoostConfigBytes() { + java.lang.Object ref = boostConfig_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + boostConfig_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -226,6 +282,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { com.google.protobuf.GeneratedMessage.writeString(output, 3, etag_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(boostConfig_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 4, boostConfig_); + } getUnknownFields().writeTo(output); } @@ -244,6 +303,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(3, etag_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(boostConfig_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(4, boostConfig_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -263,6 +325,7 @@ public boolean equals(final java.lang.Object obj) { if (!getName().equals(other.getName())) return false; if (getValidateOnly() != other.getValidateOnly()) return false; if (!getEtag().equals(other.getEtag())) return false; + if (!getBoostConfig().equals(other.getBoostConfig())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -280,6 +343,8 @@ public int hashCode() { hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getValidateOnly()); hash = (37 * hash) + ETAG_FIELD_NUMBER; hash = (53 * hash) + getEtag().hashCode(); + hash = (37 * hash) + BOOST_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getBoostConfig().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -424,6 +489,7 @@ public Builder clear() { name_ = ""; validateOnly_ = false; etag_ = ""; + boostConfig_ = ""; return this; } @@ -471,6 +537,9 @@ private void buildPartial0( if (((from_bitField0_ & 0x00000004) != 0)) { result.etag_ = etag_; } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.boostConfig_ = boostConfig_; + } } @java.lang.Override @@ -500,6 +569,11 @@ public Builder mergeFrom(com.google.cloud.workstations.v1beta.StartWorkstationRe bitField0_ |= 0x00000004; onChanged(); } + if (!other.getBoostConfig().isEmpty()) { + boostConfig_ = other.boostConfig_; + bitField0_ |= 0x00000008; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -544,6 +618,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000004; break; } // case 26 + case 34: + { + boostConfig_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 34 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -690,7 +770,7 @@ public Builder setNameBytes(com.google.protobuf.ByteString value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -707,7 +787,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -728,7 +808,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -859,6 +939,122 @@ public Builder setEtagBytes(com.google.protobuf.ByteString value) { return this; } + private java.lang.Object boostConfig_ = ""; + + /** + * + * + *
            +     * Optional. If set, the workstation starts using the boost configuration with
            +     * the specified ID.
            +     * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The boostConfig. + */ + public java.lang.String getBoostConfig() { + java.lang.Object ref = boostConfig_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + boostConfig_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +     * Optional. If set, the workstation starts using the boost configuration with
            +     * the specified ID.
            +     * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for boostConfig. + */ + public com.google.protobuf.ByteString getBoostConfigBytes() { + java.lang.Object ref = boostConfig_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + boostConfig_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Optional. If set, the workstation starts using the boost configuration with
            +     * the specified ID.
            +     * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The boostConfig to set. + * @return This builder for chaining. + */ + public Builder setBoostConfig(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + boostConfig_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. If set, the workstation starts using the boost configuration with
            +     * the specified ID.
            +     * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearBoostConfig() { + boostConfig_ = getDefaultInstance().getBoostConfig(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. If set, the workstation starts using the boost configuration with
            +     * the specified ID.
            +     * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for boostConfig to set. + * @return This builder for chaining. + */ + public Builder setBoostConfigBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + boostConfig_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.StartWorkstationRequest) } diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StartWorkstationRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StartWorkstationRequestOrBuilder.java index 890d0e1f6c56..e19914e643d8 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StartWorkstationRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StartWorkstationRequestOrBuilder.java @@ -60,7 +60,7 @@ public interface StartWorkstationRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -97,4 +97,32 @@ public interface StartWorkstationRequestOrBuilder * @return The bytes for etag. */ com.google.protobuf.ByteString getEtagBytes(); + + /** + * + * + *
            +   * Optional. If set, the workstation starts using the boost configuration with
            +   * the specified ID.
            +   * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The boostConfig. + */ + java.lang.String getBoostConfig(); + + /** + * + * + *
            +   * Optional. If set, the workstation starts using the boost configuration with
            +   * the specified ID.
            +   * 
            + * + * string boost_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for boostConfig. + */ + com.google.protobuf.ByteString getBoostConfigBytes(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StopWorkstationRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StopWorkstationRequest.java index 7e70b4951e38..f1745297f5a7 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StopWorkstationRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StopWorkstationRequest.java @@ -135,7 +135,7 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -687,7 +687,7 @@ public Builder setNameBytes(com.google.protobuf.ByteString value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -704,7 +704,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -725,7 +725,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StopWorkstationRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StopWorkstationRequestOrBuilder.java index 1ab6ccde20fb..adcaf0da1820 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StopWorkstationRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/StopWorkstationRequestOrBuilder.java @@ -60,7 +60,7 @@ public interface StopWorkstationRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationClusterRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationClusterRequest.java index 461b3fb4204b..9892d3fbda9c 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationClusterRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationClusterRequest.java @@ -191,7 +191,7 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -1081,7 +1081,7 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1098,7 +1098,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1119,7 +1119,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationClusterRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationClusterRequestOrBuilder.java index b07a74b29140..c8639957cf16 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationClusterRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationClusterRequestOrBuilder.java @@ -116,7 +116,7 @@ public interface UpdateWorkstationClusterRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationConfigRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationConfigRequest.java index 5fdf510171ce..a096bbc427bf 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationConfigRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationConfigRequest.java @@ -76,7 +76,7 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
            -   * Required. Config to update.
            +   * Required. Workstation configuration to update.
                * 
            * * @@ -94,7 +94,7 @@ public boolean hasWorkstationConfig() { * * *
            -   * Required. Config to update.
            +   * Required. Workstation configuration to update.
                * 
            * * @@ -114,7 +114,7 @@ public com.google.cloud.workstations.v1beta.WorkstationConfig getWorkstationConf * * *
            -   * Required. Config to update.
            +   * Required. Workstation configuration to update.
                * 
            * * @@ -191,7 +191,7 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -656,7 +656,7 @@ public Builder mergeFrom( * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -673,7 +673,7 @@ public boolean hasWorkstationConfig() { * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -696,7 +696,7 @@ public com.google.cloud.workstations.v1beta.WorkstationConfig getWorkstationConf * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -722,7 +722,7 @@ public Builder setWorkstationConfig( * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -745,7 +745,7 @@ public Builder setWorkstationConfig( * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -777,7 +777,7 @@ public Builder mergeWorkstationConfig( * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -799,7 +799,7 @@ public Builder clearWorkstationConfig() { * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -817,7 +817,7 @@ public Builder clearWorkstationConfig() { * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -839,7 +839,7 @@ public Builder clearWorkstationConfig() { * * *
            -     * Required. Config to update.
            +     * Required. Workstation configuration to update.
                  * 
            * * @@ -1081,7 +1081,7 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1098,7 +1098,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1119,7 +1119,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationConfigRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationConfigRequestOrBuilder.java index ed90b133c667..df3466b1e345 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationConfigRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationConfigRequestOrBuilder.java @@ -30,7 +30,7 @@ public interface UpdateWorkstationConfigRequestOrBuilder * * *
            -   * Required. Config to update.
            +   * Required. Workstation configuration to update.
                * 
            * * @@ -45,7 +45,7 @@ public interface UpdateWorkstationConfigRequestOrBuilder * * *
            -   * Required. Config to update.
            +   * Required. Workstation configuration to update.
                * 
            * * @@ -60,7 +60,7 @@ public interface UpdateWorkstationConfigRequestOrBuilder * * *
            -   * Required. Config to update.
            +   * Required. Workstation configuration to update.
                * 
            * * @@ -116,7 +116,7 @@ public interface UpdateWorkstationConfigRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationRequest.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationRequest.java index 0a777c3d50b9..62473100d7c1 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationRequest.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationRequest.java @@ -135,8 +135,8 @@ public com.google.cloud.workstations.v1beta.WorkstationOrBuilder getWorkstationO * * *
            -   * Required. Mask specifying which fields in the workstation configuration
            -   * should be updated.
            +   * Required. Mask specifying which fields in the workstation should be
            +   * updated.
                * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -153,8 +153,8 @@ public boolean hasUpdateMask() { * * *
            -   * Required. Mask specifying which fields in the workstation configuration
            -   * should be updated.
            +   * Required. Mask specifying which fields in the workstation should be
            +   * updated.
                * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -171,8 +171,8 @@ public com.google.protobuf.FieldMask getUpdateMask() { * * *
            -   * Required. Mask specifying which fields in the workstation configuration
            -   * should be updated.
            +   * Required. Mask specifying which fields in the workstation should be
            +   * updated.
                * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -190,7 +190,7 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -210,9 +210,8 @@ public boolean getValidateOnly() { * * *
            -   * Optional. If set and the workstation configuration is not found, a new
            -   * workstation configuration is created. In this situation, update_mask
            -   * is ignored.
            +   * Optional. If set and the workstation is not found, a new workstation is
            +   * created. In this situation, update_mask is ignored.
                * 
            * * bool allow_missing = 4 [(.google.api.field_behavior) = OPTIONAL]; @@ -862,8 +861,8 @@ public com.google.cloud.workstations.v1beta.WorkstationOrBuilder getWorkstationO * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -879,8 +878,8 @@ public boolean hasUpdateMask() { * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -902,8 +901,8 @@ public com.google.protobuf.FieldMask getUpdateMask() { * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -927,8 +926,8 @@ public Builder setUpdateMask(com.google.protobuf.FieldMask value) { * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -949,8 +948,8 @@ public Builder setUpdateMask(com.google.protobuf.FieldMask.Builder builderForVal * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -979,8 +978,8 @@ public Builder mergeUpdateMask(com.google.protobuf.FieldMask value) { * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -1001,8 +1000,8 @@ public Builder clearUpdateMask() { * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -1018,8 +1017,8 @@ public com.google.protobuf.FieldMask.Builder getUpdateMaskBuilder() { * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -1039,8 +1038,8 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * * *
            -     * Required. Mask specifying which fields in the workstation configuration
            -     * should be updated.
            +     * Required. Mask specifying which fields in the workstation should be
            +     * updated.
                  * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -1069,7 +1068,7 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1086,7 +1085,7 @@ public boolean getValidateOnly() { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1107,7 +1106,7 @@ public Builder setValidateOnly(boolean value) { * * *
            -     * Optional. If set, validate the request and preview the review, but do not
            +     * Optional. If set, validate the request and preview the result, but do not
                  * actually apply it.
                  * 
            * @@ -1128,9 +1127,8 @@ public Builder clearValidateOnly() { * * *
            -     * Optional. If set and the workstation configuration is not found, a new
            -     * workstation configuration is created. In this situation, update_mask
            -     * is ignored.
            +     * Optional. If set and the workstation is not found, a new workstation is
            +     * created. In this situation, update_mask is ignored.
                  * 
            * * bool allow_missing = 4 [(.google.api.field_behavior) = OPTIONAL]; @@ -1146,9 +1144,8 @@ public boolean getAllowMissing() { * * *
            -     * Optional. If set and the workstation configuration is not found, a new
            -     * workstation configuration is created. In this situation, update_mask
            -     * is ignored.
            +     * Optional. If set and the workstation is not found, a new workstation is
            +     * created. In this situation, update_mask is ignored.
                  * 
            * * bool allow_missing = 4 [(.google.api.field_behavior) = OPTIONAL]; @@ -1168,9 +1165,8 @@ public Builder setAllowMissing(boolean value) { * * *
            -     * Optional. If set and the workstation configuration is not found, a new
            -     * workstation configuration is created. In this situation, update_mask
            -     * is ignored.
            +     * Optional. If set and the workstation is not found, a new workstation is
            +     * created. In this situation, update_mask is ignored.
                  * 
            * * bool allow_missing = 4 [(.google.api.field_behavior) = OPTIONAL]; diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationRequestOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationRequestOrBuilder.java index 8591286b4c90..669006264180 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationRequestOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/UpdateWorkstationRequestOrBuilder.java @@ -73,8 +73,8 @@ public interface UpdateWorkstationRequestOrBuilder * * *
            -   * Required. Mask specifying which fields in the workstation configuration
            -   * should be updated.
            +   * Required. Mask specifying which fields in the workstation should be
            +   * updated.
                * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -88,8 +88,8 @@ public interface UpdateWorkstationRequestOrBuilder * * *
            -   * Required. Mask specifying which fields in the workstation configuration
            -   * should be updated.
            +   * Required. Mask specifying which fields in the workstation should be
            +   * updated.
                * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -103,8 +103,8 @@ public interface UpdateWorkstationRequestOrBuilder * * *
            -   * Required. Mask specifying which fields in the workstation configuration
            -   * should be updated.
            +   * Required. Mask specifying which fields in the workstation should be
            +   * updated.
                * 
            * * .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -116,7 +116,7 @@ public interface UpdateWorkstationRequestOrBuilder * * *
            -   * Optional. If set, validate the request and preview the review, but do not
            +   * Optional. If set, validate the request and preview the result, but do not
                * actually apply it.
                * 
            * @@ -130,9 +130,8 @@ public interface UpdateWorkstationRequestOrBuilder * * *
            -   * Optional. If set and the workstation configuration is not found, a new
            -   * workstation configuration is created. In this situation, update_mask
            -   * is ignored.
            +   * Optional. If set and the workstation is not found, a new workstation is
            +   * created. In this situation, update_mask is ignored.
                * 
            * * bool allow_missing = 4 [(.google.api.field_behavior) = OPTIONAL]; diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/Workstation.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/Workstation.java index eee2c93602d3..5c2c2a2ce466 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/Workstation.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/Workstation.java @@ -56,8 +56,13 @@ private Workstation() { displayName_ = ""; uid_ = ""; etag_ = ""; + persistentDirectories_ = java.util.Collections.emptyList(); state_ = 0; host_ = ""; + kmsKey_ = ""; + boostConfigs_ = java.util.Collections.emptyList(); + sourceWorkstation_ = ""; + conditions_ = java.util.Collections.emptyList(); } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -310,1652 +315,7681 @@ private State(int value) { // @@protoc_insertion_point(enum_scope:google.cloud.workstations.v1beta.Workstation.State) } - private int bitField0_; - public static final int NAME_FIELD_NUMBER = 1; + public interface WorkstationPersistentDirectoryOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory) + com.google.protobuf.MessageOrBuilder { - @SuppressWarnings("serial") - private volatile java.lang.Object name_ = ""; + /** + * + * + *
            +     * Optional. The mount path of the persistent directory.
            +     * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The mountPath. + */ + java.lang.String getMountPath(); - /** - * - * - *
            -   * Full name of this workstation.
            -   * 
            - * - * string name = 1; - * - * @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; - } + /** + * + * + *
            +     * Optional. The mount path of the persistent directory.
            +     * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for mountPath. + */ + com.google.protobuf.ByteString getMountPathBytes(); + + /** + * + * + *
            +     * Optional. Size of the persistent directory in GB. If specified in an
            +     * update request, this is the desired size of the directory.
            +     * 
            + * + * int32 size_gb = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sizeGb. + */ + int getSizeGb(); } /** * * *
            -   * Full name of this workstation.
            +   * A directory to persist across workstation sessions. Updates to this field
            +   * will only take effect on this workstation after it is restarted.
                * 
            * - * string name = 1; - * - * @return The bytes for name. + * Protobuf type {@code + * google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory} */ - @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 class WorkstationPersistentDirectory + extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory) + WorkstationPersistentDirectoryOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "WorkstationPersistentDirectory"); } - } - public static final int DISPLAY_NAME_FIELD_NUMBER = 2; + // Use WorkstationPersistentDirectory.newBuilder() to construct. + private WorkstationPersistentDirectory( + com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } - @SuppressWarnings("serial") - private volatile java.lang.Object displayName_ = ""; + private WorkstationPersistentDirectory() { + mountPath_ = ""; + } - /** - * - * - *
            -   * Optional. Human-readable name for this workstation.
            -   * 
            - * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The displayName. - */ - @java.lang.Override - public java.lang.String getDisplayName() { - java.lang.Object ref = displayName_; - 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(); - displayName_ = s; - return s; + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationPersistentDirectory_descriptor; } - } - /** - * - * - *
            -   * Optional. Human-readable name for this workstation.
            -   * 
            - * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for displayName. - */ - @java.lang.Override - public com.google.protobuf.ByteString getDisplayNameBytes() { - java.lang.Object ref = displayName_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - displayName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationPersistentDirectory_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory.class, + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + .Builder.class); } - } - public static final int UID_FIELD_NUMBER = 3; + public static final int MOUNT_PATH_FIELD_NUMBER = 2; - @SuppressWarnings("serial") - private volatile java.lang.Object uid_ = ""; + @SuppressWarnings("serial") + private volatile java.lang.Object mountPath_ = ""; - /** - * - * - *
            -   * Output only. A system-assigned unique identifier for this workstation.
            -   * 
            - * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The uid. - */ - @java.lang.Override - public java.lang.String getUid() { - java.lang.Object ref = uid_; - 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(); - uid_ = s; - return s; + /** + * + * + *
            +     * Optional. The mount path of the persistent directory.
            +     * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The mountPath. + */ + @java.lang.Override + public java.lang.String getMountPath() { + java.lang.Object ref = mountPath_; + 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(); + mountPath_ = s; + return s; + } } - } - /** - * - * - *
            -   * Output only. A system-assigned unique identifier for this workstation.
            -   * 
            - * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for uid. - */ - @java.lang.Override - public com.google.protobuf.ByteString getUidBytes() { - java.lang.Object ref = uid_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - uid_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
            +     * Optional. The mount path of the persistent directory.
            +     * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for mountPath. + */ + @java.lang.Override + public com.google.protobuf.ByteString getMountPathBytes() { + java.lang.Object ref = mountPath_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + mountPath_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - } - public static final int RECONCILING_FIELD_NUMBER = 4; - private boolean reconciling_ = false; + public static final int SIZE_GB_FIELD_NUMBER = 3; + private int sizeGb_ = 0; - /** - * - * - *
            -   * Output only. Indicates whether this workstation is currently being updated
            -   * to match its intended state.
            -   * 
            - * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The reconciling. - */ - @java.lang.Override - public boolean getReconciling() { - return reconciling_; - } + /** + * + * + *
            +     * Optional. Size of the persistent directory in GB. If specified in an
            +     * update request, this is the desired size of the directory.
            +     * 
            + * + * int32 size_gb = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sizeGb. + */ + @java.lang.Override + public int getSizeGb() { + return sizeGb_; + } - public static final int ANNOTATIONS_FIELD_NUMBER = 5; + private byte memoizedIsInitialized = -1; - private static final class AnnotationsDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_Workstation_AnnotationsEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - @SuppressWarnings("serial") - private com.google.protobuf.MapField annotations_; + memoizedIsInitialized = 1; + return true; + } - private com.google.protobuf.MapField - internalGetAnnotations() { - if (annotations_ == null) { - return com.google.protobuf.MapField.emptyMapField(AnnotationsDefaultEntryHolder.defaultEntry); + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mountPath_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, mountPath_); + } + if (sizeGb_ != 0) { + output.writeInt32(3, sizeGb_); + } + getUnknownFields().writeTo(output); } - return annotations_; - } - public int getAnnotationsCount() { - return internalGetAnnotations().getMap().size(); - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public boolean containsAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mountPath_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, mountPath_); + } + if (sizeGb_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(3, sizeGb_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - return internalGetAnnotations().getMap().containsKey(key); - } - /** Use {@link #getAnnotationsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getAnnotations() { - return getAnnotationsMap(); - } + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory other = + (com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory) obj; - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.Map getAnnotationsMap() { - return internalGetAnnotations().getMap(); - } + if (!getMountPath().equals(other.getMountPath())) return false; + if (getSizeGb() != other.getSizeGb()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public /* nullable */ java.lang.String getAnnotationsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + MOUNT_PATH_FIELD_NUMBER; + hash = (53 * hash) + getMountPath().hashCode(); + hash = (37 * hash) + SIZE_GB_FIELD_NUMBER; + hash = (53 * hash) + getSizeGb(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - java.util.Map map = internalGetAnnotations().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.lang.String getAnnotationsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - java.util.Map map = internalGetAnnotations().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - return map.get(key); - } - public static final int LABELS_FIELD_NUMBER = 13; + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - private static final class LabelsDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_Workstation_LabelsEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - @SuppressWarnings("serial") - private com.google.protobuf.MapField labels_; + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - private com.google.protobuf.MapField internalGetLabels() { - if (labels_ == null) { - return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - return labels_; - } - public int getLabelsCount() { - return internalGetLabels().getMap().size(); - } + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public boolean containsLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); } - return internalGetLabels().getMap().containsKey(key); - } - /** Use {@link #getLabelsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getLabels() { - return getLabelsMap(); - } + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.util.Map getLabelsMap() { - return internalGetLabels().getMap(); - } + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public /* nullable */ java.lang.String getLabelsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + 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.util.Map map = internalGetLabels().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.lang.String getLabelsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); } - java.util.Map map = internalGetLabels().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); } - return map.get(key); - } - public static final int CREATE_TIME_FIELD_NUMBER = 6; - private com.google.protobuf.Timestamp createTime_; + public static Builder newBuilder( + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - /** - * - * - *
            -   * Output only. Time when this workstation was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the createTime field is set. - */ - @java.lang.Override - public boolean hasCreateTime() { - return ((bitField0_ & 0x00000001) != 0); - } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } - /** - * - * - *
            -   * Output only. Time when this workstation was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The createTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getCreateTime() { - return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; - } + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } - /** - * - * - *
            -   * Output only. Time when this workstation was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { - return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; - } + /** + * + * + *
            +     * A directory to persist across workstation sessions. Updates to this field
            +     * will only take effect on this workstation after it is restarted.
            +     * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory) + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectoryOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationPersistentDirectory_descriptor; + } - public static final int UPDATE_TIME_FIELD_NUMBER = 7; - private com.google.protobuf.Timestamp updateTime_; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationPersistentDirectory_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + .class, + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + .Builder.class); + } - /** - * - * - *
            -   * Output only. Time when this workstation was most recently updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the updateTime field is set. - */ - @java.lang.Override - public boolean hasUpdateTime() { - return ((bitField0_ & 0x00000002) != 0); - } + // Construct using + // com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory.newBuilder() + private Builder() {} - /** - * - * - *
            -   * Output only. Time when this workstation was most recently updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The updateTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getUpdateTime() { - return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; - } + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } - /** - * - * - *
            -   * Output only. Time when this workstation was most recently updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { - return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; - } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + mountPath_ = ""; + sizeGb_ = 0; + return this; + } - public static final int START_TIME_FIELD_NUMBER = 14; - private com.google.protobuf.Timestamp startTime_; + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationPersistentDirectory_descriptor; + } - /** - * - * - *
            -   * Output only. Time when this workstation was most recently successfully
            -   * started, regardless of the workstation's initial state.
            -   * 
            - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the startTime field is set. - */ - @java.lang.Override - public boolean hasStartTime() { - return ((bitField0_ & 0x00000004) != 0); - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + .getDefaultInstance(); + } - /** - * - * - *
            -   * Output only. Time when this workstation was most recently successfully
            -   * started, regardless of the workstation's initial state.
            -   * 
            - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The startTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getStartTime() { - return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + build() { + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - /** - * - * - *
            -   * Output only. Time when this workstation was most recently successfully
            -   * started, regardless of the workstation's initial state.
            -   * 
            - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getStartTimeOrBuilder() { - return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + buildPartial() { + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory result = + new com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory( + this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.mountPath_ = mountPath_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.sizeGb_ = sizeGb_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory) + other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory other) { + if (other + == com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + .getDefaultInstance()) return this; + if (!other.getMountPath().isEmpty()) { + mountPath_ = other.mountPath_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.getSizeGb() != 0) { + setSizeGb(other.getSizeGb()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 18: + { + mountPath_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 18 + case 24: + { + sizeGb_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 24 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object mountPath_ = ""; + + /** + * + * + *
            +       * Optional. The mount path of the persistent directory.
            +       * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The mountPath. + */ + public java.lang.String getMountPath() { + java.lang.Object ref = mountPath_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + mountPath_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Optional. The mount path of the persistent directory.
            +       * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for mountPath. + */ + public com.google.protobuf.ByteString getMountPathBytes() { + java.lang.Object ref = mountPath_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + mountPath_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Optional. The mount path of the persistent directory.
            +       * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The mountPath to set. + * @return This builder for chaining. + */ + public Builder setMountPath(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + mountPath_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. The mount path of the persistent directory.
            +       * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearMountPath() { + mountPath_ = getDefaultInstance().getMountPath(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. The mount path of the persistent directory.
            +       * 
            + * + * string mount_path = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for mountPath to set. + * @return This builder for chaining. + */ + public Builder setMountPathBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + mountPath_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private int sizeGb_; + + /** + * + * + *
            +       * Optional. Size of the persistent directory in GB. If specified in an
            +       * update request, this is the desired size of the directory.
            +       * 
            + * + * int32 size_gb = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sizeGb. + */ + @java.lang.Override + public int getSizeGb() { + return sizeGb_; + } + + /** + * + * + *
            +       * Optional. Size of the persistent directory in GB. If specified in an
            +       * update request, this is the desired size of the directory.
            +       * 
            + * + * int32 size_gb = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sizeGb to set. + * @return This builder for chaining. + */ + public Builder setSizeGb(int value) { + + sizeGb_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Size of the persistent directory in GB. If specified in an
            +       * update request, this is the desired size of the directory.
            +       * 
            + * + * int32 size_gb = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSizeGb() { + bitField0_ = (bitField0_ & ~0x00000002); + sizeGb_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory) + private static final com.google.cloud.workstations.v1beta.Workstation + .WorkstationPersistentDirectory + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory(); + } + + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public WorkstationPersistentDirectory parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } } - public static final int DELETE_TIME_FIELD_NUMBER = 8; - private com.google.protobuf.Timestamp deleteTime_; + public interface WorkstationBoostConfigOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig) + com.google.protobuf.MessageOrBuilder { - /** - * - * - *
            -   * Output only. Time when this workstation was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the deleteTime field is set. - */ - @java.lang.Override - public boolean hasDeleteTime() { - return ((bitField0_ & 0x00000008) != 0); + /** + * + * + *
            +     * Output only. Boost configuration ID.
            +     * 
            + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The id. + */ + java.lang.String getId(); + + /** + * + * + *
            +     * Output only. Boost configuration ID.
            +     * 
            + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for id. + */ + com.google.protobuf.ByteString getIdBytes(); + + /** + * + * + *
            +     * Output only. Whether or not the current workstation is actively boosted
            +     * with this id.
            +     * 
            + * + * bool running = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The running. + */ + boolean getRunning(); } /** * * *
            -   * Output only. Time when this workstation was soft-deleted.
            +   * Boost configuration for this workstation. This object is populated from the
            +   * parent workstation configuration.
                * 
            * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The deleteTime. + * Protobuf type {@code google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig} */ - @java.lang.Override - public com.google.protobuf.Timestamp getDeleteTime() { - return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; - } + public static final class WorkstationBoostConfig extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig) + WorkstationBoostConfigOrBuilder { + private static final long serialVersionUID = 0L; - /** - * - * - *
            -   * Output only. Time when this workstation was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { - return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; - } + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "WorkstationBoostConfig"); + } - public static final int ETAG_FIELD_NUMBER = 9; + // Use WorkstationBoostConfig.newBuilder() to construct. + private WorkstationBoostConfig(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } - @SuppressWarnings("serial") - private volatile java.lang.Object etag_ = ""; + private WorkstationBoostConfig() { + id_ = ""; + } - /** - * - * - *
            -   * Optional. Checksum computed by the server. May be sent on update and delete
            -   * requests to make sure that the client has an up-to-date value before
            -   * proceeding.
            -   * 
            - * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The etag. - */ - @java.lang.Override - public java.lang.String getEtag() { - java.lang.Object ref = etag_; - 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(); - etag_ = s; - return s; + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationBoostConfig_descriptor; } - } - /** - * - * - *
            -   * Optional. Checksum computed by the server. May be sent on update and delete
            -   * requests to make sure that the client has an up-to-date value before
            -   * proceeding.
            -   * 
            - * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for etag. - */ - @java.lang.Override - public com.google.protobuf.ByteString getEtagBytes() { - java.lang.Object ref = etag_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - etag_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationBoostConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.class, + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.Builder + .class); } - } - public static final int STATE_FIELD_NUMBER = 10; - private int state_ = 0; + public static final int ID_FIELD_NUMBER = 1; - /** - * - * - *
            -   * Output only. Current state of the workstation.
            -   * 
            - * - * - * .google.cloud.workstations.v1beta.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The enum numeric value on the wire for state. - */ - @java.lang.Override - public int getStateValue() { - return state_; - } + @SuppressWarnings("serial") + private volatile java.lang.Object id_ = ""; - /** - * - * - *
            -   * Output only. Current state of the workstation.
            -   * 
            - * - * - * .google.cloud.workstations.v1beta.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The state. - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.Workstation.State getState() { - com.google.cloud.workstations.v1beta.Workstation.State result = - com.google.cloud.workstations.v1beta.Workstation.State.forNumber(state_); - return result == null - ? com.google.cloud.workstations.v1beta.Workstation.State.UNRECOGNIZED - : result; - } + /** + * + * + *
            +     * Output only. Boost configuration ID.
            +     * 
            + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The id. + */ + @java.lang.Override + public java.lang.String getId() { + java.lang.Object ref = id_; + 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(); + id_ = s; + return s; + } + } - public static final int HOST_FIELD_NUMBER = 11; + /** + * + * + *
            +     * Output only. Boost configuration ID.
            +     * 
            + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for id. + */ + @java.lang.Override + public com.google.protobuf.ByteString getIdBytes() { + java.lang.Object ref = id_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + id_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - @SuppressWarnings("serial") - private volatile java.lang.Object host_ = ""; + public static final int RUNNING_FIELD_NUMBER = 2; + private boolean running_ = false; - /** - * - * - *
            -   * Output only. Host to which clients can send HTTPS traffic that will be
            -   * received by the workstation. Authorized traffic will be received to the
            -   * workstation as HTTP on port 80. To send traffic to a different port,
            -   * clients may prefix the host with the destination port in the format
            -   * `{port}-{host}`.
            -   * 
            - * - * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The host. - */ - @java.lang.Override - public java.lang.String getHost() { - java.lang.Object ref = host_; - 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(); - host_ = s; - return s; + /** + * + * + *
            +     * Output only. Whether or not the current workstation is actively boosted
            +     * with this id.
            +     * 
            + * + * bool running = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The running. + */ + @java.lang.Override + public boolean getRunning() { + return running_; } - } - /** - * - * - *
            -   * Output only. Host to which clients can send HTTPS traffic that will be
            -   * received by the workstation. Authorized traffic will be received to the
            -   * workstation as HTTP on port 80. To send traffic to a different port,
            -   * clients may prefix the host with the destination port in the format
            -   * `{port}-{host}`.
            -   * 
            - * - * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for host. - */ - @java.lang.Override - public com.google.protobuf.ByteString getHostBytes() { - java.lang.Object ref = host_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - host_ = 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; } - } - public static final int ENV_FIELD_NUMBER = 12; + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(id_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, id_); + } + if (running_ != false) { + output.writeBool(2, running_); + } + getUnknownFields().writeTo(output); + } - private static final class EnvDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_Workstation_EnvEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - @SuppressWarnings("serial") - private com.google.protobuf.MapField env_; + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(id_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, id_); + } + if (running_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(2, running_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - private com.google.protobuf.MapField internalGetEnv() { - if (env_ == null) { - return com.google.protobuf.MapField.emptyMapField(EnvDefaultEntryHolder.defaultEntry); + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig other = + (com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig) obj; + + if (!getId().equals(other.getId())) return false; + if (getRunning() != other.getRunning()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; } - return env_; - } - public int getEnvCount() { - return internalGetEnv().getMap().size(); - } + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + ID_FIELD_NUMBER; + hash = (53 * hash) + getId().hashCode(); + hash = (37 * hash) + RUNNING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getRunning()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - /** - * - * - *
            -   * Optional. Environment variables passed to the workstation container's
            -   * entrypoint.
            -   * 
            - * - * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public boolean containsEnv(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - return internalGetEnv().getMap().containsKey(key); - } - - /** Use {@link #getEnvMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getEnv() { - return getEnvMap(); - } - - /** - * - * - *
            -   * Optional. Environment variables passed to the workstation container's
            -   * entrypoint.
            -   * 
            - * - * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.util.Map getEnvMap() { - return internalGetEnv().getMap(); - } - /** - * - * - *
            -   * Optional. Environment variables passed to the workstation container's
            -   * entrypoint.
            -   * 
            - * - * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public /* nullable */ java.lang.String getEnvOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - java.util.Map map = internalGetEnv().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } - /** - * - * - *
            -   * Optional. Environment variables passed to the workstation container's
            -   * entrypoint.
            -   * 
            - * - * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.lang.String getEnvOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetEnv().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - return map.get(key); - } - private byte memoizedIsInitialized = -1; + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - memoizedIsInitialized = 1; - return true; - } + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - @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_); + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, displayName_); + + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 3, uid_); + + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); } - if (reconciling_ != false) { - output.writeBool(4, reconciling_); + + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig + parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); } - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetAnnotations(), AnnotationsDefaultEntryHolder.defaultEntry, 5); - if (((bitField0_ & 0x00000001) != 0)) { - output.writeMessage(6, getCreateTime()); + + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - if (((bitField0_ & 0x00000002) != 0)) { - output.writeMessage(7, getUpdateTime()); + + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - if (((bitField0_ & 0x00000008) != 0)) { - output.writeMessage(8, getDeleteTime()); + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 9, etag_); + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); } - if (state_ - != com.google.cloud.workstations.v1beta.Workstation.State.STATE_UNSPECIFIED.getNumber()) { - output.writeEnum(10, state_); + + public static Builder newBuilder( + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(host_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 11, host_); + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetEnv(), EnvDefaultEntryHolder.defaultEntry, 12); - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 13); - if (((bitField0_ & 0x00000004) != 0)) { - output.writeMessage(14, getStartTime()); + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; } - getUnknownFields().writeTo(output); - } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + /** + * + * + *
            +     * Boost configuration for this workstation. This object is populated from the
            +     * parent workstation configuration.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig) + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationBoostConfig_descriptor; + } - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_); + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationBoostConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.class, + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.Builder + .class); + } + + // Construct using + // com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + id_ = ""; + running_ = false; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationBoostConfig_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig build() { + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig + buildPartial() { + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig result = + new com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.id_ = id_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.running_ = running_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig other) { + if (other + == com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig + .getDefaultInstance()) return this; + if (!other.getId().isEmpty()) { + id_ = other.id_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.getRunning() != false) { + setRunning(other.getRunning()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + id_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 16: + { + running_ = input.readBool(); + bitField0_ |= 0x00000002; + break; + } // case 16 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object id_ = ""; + + /** + * + * + *
            +       * Output only. Boost configuration ID.
            +       * 
            + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The id. + */ + public java.lang.String getId() { + java.lang.Object ref = id_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + id_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Output only. Boost configuration ID.
            +       * 
            + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for id. + */ + public com.google.protobuf.ByteString getIdBytes() { + java.lang.Object ref = id_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + id_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Output only. Boost configuration ID.
            +       * 
            + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The id to set. + * @return This builder for chaining. + */ + public Builder setId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + id_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Output only. Boost configuration ID.
            +       * 
            + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearId() { + id_ = getDefaultInstance().getId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Output only. Boost configuration ID.
            +       * 
            + * + * string id = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for id to set. + * @return This builder for chaining. + */ + public Builder setIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + id_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private boolean running_; + + /** + * + * + *
            +       * Output only. Whether or not the current workstation is actively boosted
            +       * with this id.
            +       * 
            + * + * bool running = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The running. + */ + @java.lang.Override + public boolean getRunning() { + return running_; + } + + /** + * + * + *
            +       * Output only. Whether or not the current workstation is actively boosted
            +       * with this id.
            +       * 
            + * + * bool running = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The running to set. + * @return This builder for chaining. + */ + public Builder setRunning(boolean value) { + + running_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Output only. Whether or not the current workstation is actively boosted
            +       * with this id.
            +       * 
            + * + * bool running = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearRunning() { + bitField0_ = (bitField0_ & ~0x00000002); + running_ = false; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig) } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(2, displayName_); + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig) + private static final com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig(); + } + + public static com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public WorkstationBoostConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(3, uid_); + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; } - if (reconciling_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, reconciling_); + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } - for (java.util.Map.Entry entry : - internalGetAnnotations().getMap().entrySet()) { - com.google.protobuf.MapEntry annotations__ = - AnnotationsDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, annotations__); - } - if (((bitField0_ & 0x00000001) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getCreateTime()); - } - if (((bitField0_ & 0x00000002) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getUpdateTime()); - } - if (((bitField0_ & 0x00000008) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getDeleteTime()); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(9, etag_); - } - if (state_ - != com.google.cloud.workstations.v1beta.Workstation.State.STATE_UNSPECIFIED.getNumber()) { - size += com.google.protobuf.CodedOutputStream.computeEnumSize(10, state_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(host_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(11, host_); - } - for (java.util.Map.Entry entry : - internalGetEnv().getMap().entrySet()) { - com.google.protobuf.MapEntry env__ = - EnvDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, env__); - } - for (java.util.Map.Entry entry : - internalGetLabels().getMap().entrySet()) { - com.google.protobuf.MapEntry labels__ = - LabelsDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(13, labels__); - } - if (((bitField0_ & 0x00000004) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, getStartTime()); - } - 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.cloud.workstations.v1beta.Workstation)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1beta.Workstation other = - (com.google.cloud.workstations.v1beta.Workstation) obj; + public interface RuntimeHostOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.Workstation.RuntimeHost) + com.google.protobuf.MessageOrBuilder { - if (!getName().equals(other.getName())) return false; - if (!getDisplayName().equals(other.getDisplayName())) return false; - if (!getUid().equals(other.getUid())) return false; - if (getReconciling() != other.getReconciling()) return false; - if (!internalGetAnnotations().equals(other.internalGetAnnotations())) return false; - if (!internalGetLabels().equals(other.internalGetLabels())) return false; - if (hasCreateTime() != other.hasCreateTime()) return false; - if (hasCreateTime()) { - if (!getCreateTime().equals(other.getCreateTime())) return false; - } - if (hasUpdateTime() != other.hasUpdateTime()) return false; - if (hasUpdateTime()) { - if (!getUpdateTime().equals(other.getUpdateTime())) return false; - } - if (hasStartTime() != other.hasStartTime()) return false; - if (hasStartTime()) { - if (!getStartTime().equals(other.getStartTime())) return false; - } - if (hasDeleteTime() != other.hasDeleteTime()) return false; - if (hasDeleteTime()) { - if (!getDeleteTime().equals(other.getDeleteTime())) return false; - } - if (!getEtag().equals(other.getEtag())) return false; - if (state_ != other.state_) return false; - if (!getHost().equals(other.getHost())) return false; - if (!internalGetEnv().equals(other.internalGetEnv())) return false; - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + * + * @return Whether the gceInstanceHost field is set. + */ + boolean hasGceInstanceHost(); + + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + * + * @return The gceInstanceHost. + */ + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + getGceInstanceHost(); + + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHostOrBuilder + getGceInstanceHostOrBuilder(); + + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.HostTypeCase getHostTypeCase(); } - @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) + DISPLAY_NAME_FIELD_NUMBER; - hash = (53 * hash) + getDisplayName().hashCode(); - hash = (37 * hash) + UID_FIELD_NUMBER; - hash = (53 * hash) + getUid().hashCode(); - hash = (37 * hash) + RECONCILING_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReconciling()); - if (!internalGetAnnotations().getMap().isEmpty()) { - hash = (37 * hash) + ANNOTATIONS_FIELD_NUMBER; - hash = (53 * hash) + internalGetAnnotations().hashCode(); - } - if (!internalGetLabels().getMap().isEmpty()) { - hash = (37 * hash) + LABELS_FIELD_NUMBER; - hash = (53 * hash) + internalGetLabels().hashCode(); - } - if (hasCreateTime()) { - hash = (37 * hash) + CREATE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getCreateTime().hashCode(); - } - if (hasUpdateTime()) { - hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getUpdateTime().hashCode(); + /** + * + * + *
            +   * Runtime host for the workstation.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.Workstation.RuntimeHost} + */ + public static final class RuntimeHost extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.Workstation.RuntimeHost) + RuntimeHostOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "RuntimeHost"); } - if (hasStartTime()) { - hash = (37 * hash) + START_TIME_FIELD_NUMBER; - hash = (53 * hash) + getStartTime().hashCode(); + + // Use RuntimeHost.newBuilder() to construct. + private RuntimeHost(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); } - if (hasDeleteTime()) { - hash = (37 * hash) + DELETE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getDeleteTime().hashCode(); + + private RuntimeHost() {} + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_descriptor; } - hash = (37 * hash) + ETAG_FIELD_NUMBER; - hash = (53 * hash) + getEtag().hashCode(); - hash = (37 * hash) + STATE_FIELD_NUMBER; - hash = (53 * hash) + state_; - hash = (37 * hash) + HOST_FIELD_NUMBER; - hash = (53 * hash) + getHost().hashCode(); - if (!internalGetEnv().getMap().isEmpty()) { - hash = (37 * hash) + ENV_FIELD_NUMBER; - hash = (53 * hash) + internalGetEnv().hashCode(); + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.class, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.Builder.class); + } + + public interface GceInstanceHostOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +       * Optional. Output only. The name of the Compute Engine instance.
            +       * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The name. + */ + java.lang.String getName(); + + /** + * + * + *
            +       * Optional. Output only. The name of the Compute Engine instance.
            +       * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for name. + */ + com.google.protobuf.ByteString getNameBytes(); + + /** + * + * + *
            +       * Optional. Output only. The ID of the Compute Engine instance.
            +       * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The id. + */ + java.lang.String getId(); + + /** + * + * + *
            +       * Optional. Output only. The ID of the Compute Engine instance.
            +       * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for id. + */ + com.google.protobuf.ByteString getIdBytes(); + + /** + * + * + *
            +       * Optional. Output only. The zone of the Compute Engine instance.
            +       * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The zone. + */ + java.lang.String getZone(); + + /** + * + * + *
            +       * Optional. Output only. The zone of the Compute Engine instance.
            +       * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for zone. + */ + com.google.protobuf.ByteString getZoneBytes(); } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - public static com.google.cloud.workstations.v1beta.Workstation parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +     * The Compute Engine instance host.
            +     * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost} + */ + public static final class GceInstanceHost extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) + GceInstanceHostOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "GceInstanceHost"); + } - public static com.google.cloud.workstations.v1beta.Workstation parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + // Use GceInstanceHost.newBuilder() to construct. + private GceInstanceHost(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } - public static com.google.cloud.workstations.v1beta.Workstation parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + private GceInstanceHost() { + name_ = ""; + id_ = ""; + zone_ = ""; + } - public static com.google.cloud.workstations.v1beta.Workstation parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_GceInstanceHost_descriptor; + } - public static com.google.cloud.workstations.v1beta.Workstation parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_GceInstanceHost_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost.class, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost.Builder + .class); + } - public static com.google.cloud.workstations.v1beta.Workstation parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + + /** + * + * + *
            +       * Optional. Output only. The name of the Compute Engine instance.
            +       * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @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; + } + } - public static com.google.cloud.workstations.v1beta.Workstation parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + /** + * + * + *
            +       * Optional. Output only. The name of the Compute Engine instance.
            +       * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @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 com.google.cloud.workstations.v1beta.Workstation 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 final int ID_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object id_ = ""; + + /** + * + * + *
            +       * Optional. Output only. The ID of the Compute Engine instance.
            +       * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The id. + */ + @java.lang.Override + public java.lang.String getId() { + java.lang.Object ref = id_; + 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(); + id_ = s; + return s; + } + } - public static com.google.cloud.workstations.v1beta.Workstation parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1beta.Workstation 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.cloud.workstations.v1beta.Workstation parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1beta.Workstation 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(); - } + /** + * + * + *
            +       * Optional. Output only. The ID of the Compute Engine instance.
            +       * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for id. + */ + @java.lang.Override + public com.google.protobuf.ByteString getIdBytes() { + java.lang.Object ref = id_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + id_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - public static Builder newBuilder(com.google.cloud.workstations.v1beta.Workstation prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + public static final int ZONE_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object zone_ = ""; + + /** + * + * + *
            +       * Optional. Output only. The zone of the Compute Engine instance.
            +       * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The zone. + */ + @java.lang.Override + public java.lang.String getZone() { + java.lang.Object ref = zone_; + 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(); + zone_ = s; + return s; + } + } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + /** + * + * + *
            +       * Optional. Output only. The zone of the Compute Engine instance.
            +       * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for zone. + */ + @java.lang.Override + public com.google.protobuf.ByteString getZoneBytes() { + java.lang.Object ref = zone_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + zone_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - @java.lang.Override - protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } + private byte memoizedIsInitialized = -1; - /** - * - * - *
            -   * A single instance of a developer workstation with its own persistent storage.
            -   * 
            - * - * Protobuf type {@code google.cloud.workstations.v1beta.Workstation} - */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.Workstation) - com.google.cloud.workstations.v1beta.WorkstationOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_Workstation_descriptor; - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( - int number) { - switch (number) { - case 5: - return internalGetAnnotations(); - case 13: - return internalGetLabels(); - case 12: - return internalGetEnv(); - default: - throw new RuntimeException("Invalid map field number: " + number); + memoizedIsInitialized = 1; + return true; } - } - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( - int number) { - switch (number) { - case 5: - return internalGetMutableAnnotations(); - case 13: - return internalGetMutableLabels(); - case 12: - return internalGetMutableEnv(); - default: - throw new RuntimeException("Invalid map field number: " + number); + @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(id_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, id_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(zone_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, zone_); + } + getUnknownFields().writeTo(output); } - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_Workstation_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.Workstation.class, - com.google.cloud.workstations.v1beta.Workstation.Builder.class); - } - - // Construct using com.google.cloud.workstations.v1beta.Workstation.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); - } - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { - internalGetCreateTimeFieldBuilder(); - internalGetUpdateTimeFieldBuilder(); - internalGetStartTimeFieldBuilder(); - internalGetDeleteTimeFieldBuilder(); + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(id_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, id_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(zone_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, zone_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - } - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - name_ = ""; - displayName_ = ""; - uid_ = ""; - reconciling_ = false; - internalGetMutableAnnotations().clear(); - internalGetMutableLabels().clear(); - createTime_ = null; - if (createTimeBuilder_ != null) { - createTimeBuilder_.dispose(); - createTimeBuilder_ = null; - } - updateTime_ = null; - if (updateTimeBuilder_ != null) { - updateTimeBuilder_.dispose(); - updateTimeBuilder_ = null; - } - startTime_ = null; - if (startTimeBuilder_ != null) { - startTimeBuilder_.dispose(); - startTimeBuilder_ = null; - } - deleteTime_ = null; - if (deleteTimeBuilder_ != null) { - deleteTimeBuilder_.dispose(); - deleteTimeBuilder_ = null; + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost other = + (com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) obj; + + if (!getName().equals(other.getName())) return false; + if (!getId().equals(other.getId())) return false; + if (!getZone().equals(other.getZone())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; } - etag_ = ""; - state_ = 0; - host_ = ""; - internalGetMutableEnv().clear(); - return this; - } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_Workstation_descriptor; - } - @java.lang.Override - public com.google.cloud.workstations.v1beta.Workstation getDefaultInstanceForType() { - return com.google.cloud.workstations.v1beta.Workstation.getDefaultInstance(); - } + @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) + ID_FIELD_NUMBER; + hash = (53 * hash) + getId().hashCode(); + hash = (37 * hash) + ZONE_FIELD_NUMBER; + hash = (53 * hash) + getZone().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - @java.lang.Override - public com.google.cloud.workstations.v1beta.Workstation build() { - com.google.cloud.workstations.v1beta.Workstation result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - return result; - } - @java.lang.Override - public com.google.cloud.workstations.v1beta.Workstation buildPartial() { - com.google.cloud.workstations.v1beta.Workstation result = - new com.google.cloud.workstations.v1beta.Workstation(this); - if (bitField0_ != 0) { - buildPartial0(result); + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - onBuilt(); - return result; - } - private void buildPartial0(com.google.cloud.workstations.v1beta.Workstation result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.name_ = name_; + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.displayName_ = displayName_; + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - if (((from_bitField0_ & 0x00000004) != 0)) { - result.uid_ = uid_; + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - if (((from_bitField0_ & 0x00000008) != 0)) { - result.reconciling_ = reconciling_; + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - if (((from_bitField0_ & 0x00000010) != 0)) { - result.annotations_ = internalGetAnnotations(); - result.annotations_.makeImmutable(); + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - if (((from_bitField0_ & 0x00000020) != 0)) { - result.labels_ = internalGetLabels(); - result.labels_.makeImmutable(); + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - int to_bitField0_ = 0; - if (((from_bitField0_ & 0x00000040) != 0)) { - result.createTime_ = createTimeBuilder_ == null ? createTime_ : createTimeBuilder_.build(); - to_bitField0_ |= 0x00000001; + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); } - if (((from_bitField0_ & 0x00000080) != 0)) { - result.updateTime_ = updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build(); - to_bitField0_ |= 0x00000002; + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); } - if (((from_bitField0_ & 0x00000100) != 0)) { - result.startTime_ = startTimeBuilder_ == null ? startTime_ : startTimeBuilder_.build(); - to_bitField0_ |= 0x00000004; + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - if (((from_bitField0_ & 0x00000200) != 0)) { - result.deleteTime_ = deleteTimeBuilder_ == null ? deleteTime_ : deleteTimeBuilder_.build(); - to_bitField0_ |= 0x00000008; + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - if (((from_bitField0_ & 0x00000400) != 0)) { - result.etag_ = etag_; + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); } - if (((from_bitField0_ & 0x00000800) != 0)) { - result.state_ = state_; + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); } - if (((from_bitField0_ & 0x00001000) != 0)) { - result.host_ = host_; + + public static Builder newBuilder( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } - if (((from_bitField0_ & 0x00002000) != 0)) { - result.env_ = internalGetEnv(); - result.env_.makeImmutable(); + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } - result.bitField0_ |= to_bitField0_; - } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.cloud.workstations.v1beta.Workstation) { - return mergeFrom((com.google.cloud.workstations.v1beta.Workstation) other); - } else { - super.mergeFrom(other); - return this; + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; } - } - public Builder mergeFrom(com.google.cloud.workstations.v1beta.Workstation other) { - if (other == com.google.cloud.workstations.v1beta.Workstation.getDefaultInstance()) - return this; - if (!other.getName().isEmpty()) { - name_ = other.name_; - bitField0_ |= 0x00000001; - onChanged(); + /** + * + * + *
            +       * The Compute Engine instance host.
            +       * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHostOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_GceInstanceHost_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_GceInstanceHost_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + .class, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + .Builder.class); + } + + // Construct using + // com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + id_ = ""; + zone_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_GceInstanceHost_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + build() { + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + buildPartial() { + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost result = + new com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost( + this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.id_ = id_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.zone_ = zone_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) + other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost other) { + if (other + == com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance()) return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getId().isEmpty()) { + id_ = other.id_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getZone().isEmpty()) { + zone_ = other.zone_; + bitField0_ |= 0x00000004; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + name_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + id_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + zone_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object name_ = ""; + + /** + * + * + *
            +         * Optional. Output only. The name of the Compute Engine instance.
            +         * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @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; + } + } + + /** + * + * + *
            +         * Optional. Output only. The name of the Compute Engine instance.
            +         * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @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; + } + } + + /** + * + * + *
            +         * Optional. Output only. The name of the Compute Engine instance.
            +         * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @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; + } + + /** + * + * + *
            +         * Optional. Output only. The name of the Compute Engine instance.
            +         * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return This builder for chaining. + */ + public Builder clearName() { + name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Output only. The name of the Compute Engine instance.
            +         * 
            + * + * + * string name = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @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 id_ = ""; + + /** + * + * + *
            +         * Optional. Output only. The ID of the Compute Engine instance.
            +         * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The id. + */ + public java.lang.String getId() { + java.lang.Object ref = id_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + id_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +         * Optional. Output only. The ID of the Compute Engine instance.
            +         * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for id. + */ + public com.google.protobuf.ByteString getIdBytes() { + java.lang.Object ref = id_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + id_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +         * Optional. Output only. The ID of the Compute Engine instance.
            +         * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The id to set. + * @return This builder for chaining. + */ + public Builder setId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + id_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Output only. The ID of the Compute Engine instance.
            +         * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return This builder for chaining. + */ + public Builder clearId() { + id_ = getDefaultInstance().getId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Output only. The ID of the Compute Engine instance.
            +         * 
            + * + * + * string id = 2 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The bytes for id to set. + * @return This builder for chaining. + */ + public Builder setIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + id_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object zone_ = ""; + + /** + * + * + *
            +         * Optional. Output only. The zone of the Compute Engine instance.
            +         * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The zone. + */ + public java.lang.String getZone() { + java.lang.Object ref = zone_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + zone_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +         * Optional. Output only. The zone of the Compute Engine instance.
            +         * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for zone. + */ + public com.google.protobuf.ByteString getZoneBytes() { + java.lang.Object ref = zone_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + zone_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +         * Optional. Output only. The zone of the Compute Engine instance.
            +         * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The zone to set. + * @return This builder for chaining. + */ + public Builder setZone(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + zone_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Output only. The zone of the Compute Engine instance.
            +         * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return This builder for chaining. + */ + public Builder clearZone() { + zone_ = getDefaultInstance().getZone(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Output only. The zone of the Compute Engine instance.
            +         * 
            + * + * + * string zone = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The bytes for zone to set. + * @return This builder for chaining. + */ + public Builder setZoneBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + zone_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) } - if (!other.getDisplayName().isEmpty()) { - displayName_ = other.displayName_; - bitField0_ |= 0x00000002; - onChanged(); + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) + private static final com.google.cloud.workstations.v1beta.Workstation.RuntimeHost + .GceInstanceHost + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost(); } - if (!other.getUid().isEmpty()) { - uid_ = other.uid_; - bitField0_ |= 0x00000004; - onChanged(); + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + getDefaultInstance() { + return DEFAULT_INSTANCE; } - if (other.getReconciling() != false) { - setReconciling(other.getReconciling()); + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GceInstanceHost parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; } - internalGetMutableAnnotations().mergeFrom(other.internalGetAnnotations()); - bitField0_ |= 0x00000010; - internalGetMutableLabels().mergeFrom(other.internalGetLabels()); - bitField0_ |= 0x00000020; - if (other.hasCreateTime()) { - mergeCreateTime(other.getCreateTime()); + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; } - if (other.hasUpdateTime()) { - mergeUpdateTime(other.getUpdateTime()); + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } - if (other.hasStartTime()) { - mergeStartTime(other.getStartTime()); + } + + private int hostTypeCase_ = 0; + + @SuppressWarnings("serial") + private java.lang.Object hostType_; + + public enum HostTypeCase + implements + com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + GCE_INSTANCE_HOST(1), + HOSTTYPE_NOT_SET(0); + private final int value; + + private HostTypeCase(int value) { + this.value = value; } - if (other.hasDeleteTime()) { - mergeDeleteTime(other.getDeleteTime()); + + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static HostTypeCase valueOf(int value) { + return forNumber(value); } - if (!other.getEtag().isEmpty()) { - etag_ = other.etag_; - bitField0_ |= 0x00000400; - onChanged(); + + public static HostTypeCase forNumber(int value) { + switch (value) { + case 1: + return GCE_INSTANCE_HOST; + case 0: + return HOSTTYPE_NOT_SET; + default: + return null; + } } - if (other.state_ != 0) { - setStateValue(other.getStateValue()); + + public int getNumber() { + return this.value; } - if (!other.getHost().isEmpty()) { - host_ = other.host_; - bitField0_ |= 0x00001000; - onChanged(); + }; + + public HostTypeCase getHostTypeCase() { + return HostTypeCase.forNumber(hostTypeCase_); + } + + public static final int GCE_INSTANCE_HOST_FIELD_NUMBER = 1; + + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + * + * @return Whether the gceInstanceHost field is set. + */ + @java.lang.Override + public boolean hasGceInstanceHost() { + return hostTypeCase_ == 1; + } + + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + * + * @return The gceInstanceHost. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + getGceInstanceHost() { + if (hostTypeCase_ == 1) { + return (com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) + hostType_; } - internalGetMutableEnv().mergeFrom(other.internalGetEnv()); - bitField0_ |= 0x00002000; - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; + return com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance(); + } + + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHostOrBuilder + getGceInstanceHostOrBuilder() { + if (hostTypeCase_ == 1) { + return (com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) + hostType_; + } + return com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + .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 Builder mergeFrom( + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (hostTypeCase_ == 1) { + output.writeMessage( + 1, + (com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) + hostType_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (hostTypeCase_ == 1) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 1, + (com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) + hostType_); + } + 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.cloud.workstations.v1beta.Workstation.RuntimeHost)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost other = + (com.google.cloud.workstations.v1beta.Workstation.RuntimeHost) obj; + + if (!getHostTypeCase().equals(other.getHostTypeCase())) return false; + switch (hostTypeCase_) { + case 1: + if (!getGceInstanceHost().equals(other.getGceInstanceHost())) 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 (hostTypeCase_) { + case 1: + hash = (37 * hash) + GCE_INSTANCE_HOST_FIELD_NUMBER; + hash = (53 * hash) + getGceInstanceHost().hashCode(); + break; + case 0: + default: + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost 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.cloud.workstations.v1beta.Workstation.RuntimeHost parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost 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.cloud.workstations.v1beta.Workstation.RuntimeHost parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost 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.cloud.workstations.v1beta.Workstation.RuntimeHost parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - name_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - displayName_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 18 - case 26: - { - uid_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000004; - break; - } // case 26 - case 32: - { - reconciling_ = input.readBool(); - bitField0_ |= 0x00000008; - break; - } // case 32 - case 42: - { - com.google.protobuf.MapEntry annotations__ = - input.readMessage( - AnnotationsDefaultEntryHolder.defaultEntry.getParserForType(), - extensionRegistry); - internalGetMutableAnnotations() - .getMutableMap() - .put(annotations__.getKey(), annotations__.getValue()); - bitField0_ |= 0x00000010; - break; - } // case 42 - case 50: - { - input.readMessage( - internalGetCreateTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000040; - break; - } // case 50 - case 58: - { - input.readMessage( - internalGetUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000080; - break; - } // case 58 - case 66: - { - input.readMessage( - internalGetDeleteTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000200; - break; - } // case 66 - case 74: - { - etag_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000400; - break; - } // case 74 - case 80: - { - state_ = input.readEnum(); - bitField0_ |= 0x00000800; - break; - } // case 80 - case 90: - { - host_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00001000; - break; - } // case 90 - case 98: - { - com.google.protobuf.MapEntry env__ = - input.readMessage( - EnvDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableEnv().getMutableMap().put(env__.getKey(), env__.getValue()); - bitField0_ |= 0x00002000; - break; - } // case 98 - case 106: - { - com.google.protobuf.MapEntry labels__ = - input.readMessage( - LabelsDefaultEntryHolder.defaultEntry.getParserForType(), - extensionRegistry); - internalGetMutableLabels() - .getMutableMap() - .put(labels__.getKey(), labels__.getValue()); - bitField0_ |= 0x00000020; - break; - } // case 106 - case 114: - { - input.readMessage( - internalGetStartTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000100; - break; - } // case 114 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } + 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.cloud.workstations.v1beta.Workstation.RuntimeHost 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; + } + + /** + * + * + *
            +     * Runtime host for the workstation.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.Workstation.RuntimeHost} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.Workstation.RuntimeHost) + com.google.cloud.workstations.v1beta.Workstation.RuntimeHostOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.class, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.Builder.class); + } + + // Construct using com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (gceInstanceHostBuilder_ != null) { + gceInstanceHostBuilder_.clear(); + } + hostTypeCase_ = 0; + hostType_ = null; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost build() { + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost buildPartial() { + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost result = + new com.google.cloud.workstations.v1beta.Workstation.RuntimeHost(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + buildPartialOneofs(result); + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost result) { + int from_bitField0_ = bitField0_; + } + + private void buildPartialOneofs( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost result) { + result.hostTypeCase_ = hostTypeCase_; + result.hostType_ = this.hostType_; + if (hostTypeCase_ == 1 && gceInstanceHostBuilder_ != null) { + result.hostType_ = gceInstanceHostBuilder_.build(); + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1beta.Workstation.RuntimeHost) { + return mergeFrom((com.google.cloud.workstations.v1beta.Workstation.RuntimeHost) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.workstations.v1beta.Workstation.RuntimeHost other) { + if (other + == com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.getDefaultInstance()) + return this; + switch (other.getHostTypeCase()) { + case GCE_INSTANCE_HOST: + { + mergeGceInstanceHost(other.getGceInstanceHost()); + break; + } + case HOSTTYPE_NOT_SET: + { + break; + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { + case 10: + { + input.readMessage( + internalGetGceInstanceHostFieldBuilder().getBuilder(), extensionRegistry); + hostTypeCase_ = 1; + break; + } // case 10 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int hostTypeCase_ = 0; + private java.lang.Object hostType_; + + public HostTypeCase getHostTypeCase() { + return HostTypeCase.forNumber(hostTypeCase_); + } + + public Builder clearHostType() { + hostTypeCase_ = 0; + hostType_ = null; onChanged(); - } // finally + return this; + } + + private int bitField0_; + + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost.Builder, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHostOrBuilder> + gceInstanceHostBuilder_; + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + * + * @return Whether the gceInstanceHost field is set. + */ + @java.lang.Override + public boolean hasGceInstanceHost() { + return hostTypeCase_ == 1; + } + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + * + * @return The gceInstanceHost. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + getGceInstanceHost() { + if (gceInstanceHostBuilder_ == null) { + if (hostTypeCase_ == 1) { + return (com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) + hostType_; + } + return com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance(); + } else { + if (hostTypeCase_ == 1) { + return gceInstanceHostBuilder_.getMessage(); + } + return com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance(); + } + } + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + public Builder setGceInstanceHost( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost value) { + if (gceInstanceHostBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + hostType_ = value; + onChanged(); + } else { + gceInstanceHostBuilder_.setMessage(value); + } + hostTypeCase_ = 1; + return this; + } + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + public Builder setGceInstanceHost( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost.Builder + builderForValue) { + if (gceInstanceHostBuilder_ == null) { + hostType_ = builderForValue.build(); + onChanged(); + } else { + gceInstanceHostBuilder_.setMessage(builderForValue.build()); + } + hostTypeCase_ = 1; + return this; + } + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + public Builder mergeGceInstanceHost( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost value) { + if (gceInstanceHostBuilder_ == null) { + if (hostTypeCase_ == 1 + && hostType_ + != com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance()) { + hostType_ = + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + .newBuilder( + (com.google.cloud.workstations.v1beta.Workstation.RuntimeHost + .GceInstanceHost) + hostType_) + .mergeFrom(value) + .buildPartial(); + } else { + hostType_ = value; + } + onChanged(); + } else { + if (hostTypeCase_ == 1) { + gceInstanceHostBuilder_.mergeFrom(value); + } else { + gceInstanceHostBuilder_.setMessage(value); + } + } + hostTypeCase_ = 1; + return this; + } + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + public Builder clearGceInstanceHost() { + if (gceInstanceHostBuilder_ == null) { + if (hostTypeCase_ == 1) { + hostTypeCase_ = 0; + hostType_ = null; + onChanged(); + } + } else { + if (hostTypeCase_ == 1) { + hostTypeCase_ = 0; + hostType_ = null; + } + gceInstanceHostBuilder_.clear(); + } + return this; + } + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost.Builder + getGceInstanceHostBuilder() { + return internalGetGceInstanceHostFieldBuilder().getBuilder(); + } + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHostOrBuilder + getGceInstanceHostOrBuilder() { + if ((hostTypeCase_ == 1) && (gceInstanceHostBuilder_ != null)) { + return gceInstanceHostBuilder_.getMessageOrBuilder(); + } else { + if (hostTypeCase_ == 1) { + return (com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) + hostType_; + } + return com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance(); + } + } + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost gce_instance_host = 1; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost.Builder, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHostOrBuilder> + internalGetGceInstanceHostFieldBuilder() { + if (gceInstanceHostBuilder_ == null) { + if (!(hostTypeCase_ == 1)) { + hostType_ = + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + .getDefaultInstance(); + } + gceInstanceHostBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost + .Builder, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost + .GceInstanceHostOrBuilder>( + (com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHost) + hostType_, + getParentForChildren(), + isClean()); + hostType_ = null; + } + hostTypeCase_ = 1; + onChanged(); + return gceInstanceHostBuilder_; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.Workstation.RuntimeHost) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.Workstation.RuntimeHost) + private static final com.google.cloud.workstations.v1beta.Workstation.RuntimeHost + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1beta.Workstation.RuntimeHost(); + } + + public static com.google.cloud.workstations.v1beta.Workstation.RuntimeHost + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public RuntimeHost parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + private int bitField0_; + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + + /** + * + * + *
            +   * Identifier. Full name of this workstation.
            +   * 
            + * + * 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. Full name of this workstation.
            +   * 
            + * + * 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 DISPLAY_NAME_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object displayName_ = ""; + + /** + * + * + *
            +   * Optional. Human-readable name for this workstation.
            +   * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The displayName. + */ + @java.lang.Override + public java.lang.String getDisplayName() { + java.lang.Object ref = displayName_; + 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(); + displayName_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Human-readable name for this workstation.
            +   * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for displayName. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDisplayNameBytes() { + java.lang.Object ref = displayName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + displayName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int UID_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object uid_ = ""; + + /** + * + * + *
            +   * Output only. A system-assigned unique identifier for this workstation.
            +   * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The uid. + */ + @java.lang.Override + public java.lang.String getUid() { + java.lang.Object ref = uid_; + 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(); + uid_ = s; + return s; + } + } + + /** + * + * + *
            +   * Output only. A system-assigned unique identifier for this workstation.
            +   * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The bytes for uid. + */ + @java.lang.Override + public com.google.protobuf.ByteString getUidBytes() { + java.lang.Object ref = uid_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int RECONCILING_FIELD_NUMBER = 4; + private boolean reconciling_ = false; + + /** + * + * + *
            +   * Output only. Indicates whether this workstation is currently being updated
            +   * to match its intended state.
            +   * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The reconciling. + */ + @java.lang.Override + public boolean getReconciling() { + return reconciling_; + } + + public static final int ANNOTATIONS_FIELD_NUMBER = 5; + + private static final class AnnotationsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_AnnotationsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField annotations_; + + private com.google.protobuf.MapField + internalGetAnnotations() { + if (annotations_ == null) { + return com.google.protobuf.MapField.emptyMapField(AnnotationsDefaultEntryHolder.defaultEntry); + } + return annotations_; + } + + public int getAnnotationsCount() { + return internalGetAnnotations().getMap().size(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetAnnotations().getMap().containsKey(key); + } + + /** Use {@link #getAnnotationsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getAnnotations() { + return getAnnotationsMap(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getAnnotationsMap() { + return internalGetAnnotations().getMap(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getAnnotationsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getAnnotationsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int LABELS_FIELD_NUMBER = 13; + + private static final class LabelsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_LabelsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField labels_; + + private com.google.protobuf.MapField internalGetLabels() { + if (labels_ == null) { + return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); + } + return labels_; + } + + public int getLabelsCount() { + return internalGetLabels().getMap().size(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetLabels().getMap().containsKey(key); + } + + /** Use {@link #getLabelsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getLabels() { + return getLabelsMap(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getLabelsMap() { + return internalGetLabels().getMap(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getLabelsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getLabelsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int CREATE_TIME_FIELD_NUMBER = 6; + private com.google.protobuf.Timestamp createTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the createTime field is set. + */ + @java.lang.Override + public boolean hasCreateTime() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The createTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getCreateTime() { + return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { + return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; + } + + public static final int UPDATE_TIME_FIELD_NUMBER = 7; + private com.google.protobuf.Timestamp updateTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation was most recently updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the updateTime field is set. + */ + @java.lang.Override + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation was most recently updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The updateTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getUpdateTime() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation was most recently updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + public static final int START_TIME_FIELD_NUMBER = 14; + private com.google.protobuf.Timestamp startTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation was most recently successfully
            +   * started, regardless of the workstation's initial state.
            +   * 
            + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the startTime field is set. + */ + @java.lang.Override + public boolean hasStartTime() { + return ((bitField0_ & 0x00000004) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation was most recently successfully
            +   * started, regardless of the workstation's initial state.
            +   * 
            + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The startTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getStartTime() { + return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation was most recently successfully
            +   * started, regardless of the workstation's initial state.
            +   * 
            + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getStartTimeOrBuilder() { + return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; + } + + public static final int DELETE_TIME_FIELD_NUMBER = 8; + private com.google.protobuf.Timestamp deleteTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the deleteTime field is set. + */ + @java.lang.Override + public boolean hasDeleteTime() { + return ((bitField0_ & 0x00000008) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The deleteTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getDeleteTime() { + return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { + return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; + } + + public static final int ETAG_FIELD_NUMBER = 9; + + @SuppressWarnings("serial") + private volatile java.lang.Object etag_ = ""; + + /** + * + * + *
            +   * Optional. Checksum computed by the server. May be sent on update and delete
            +   * requests to make sure that the client has an up-to-date value before
            +   * proceeding.
            +   * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The etag. + */ + @java.lang.Override + public java.lang.String getEtag() { + java.lang.Object ref = etag_; + 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(); + etag_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Checksum computed by the server. May be sent on update and delete
            +   * requests to make sure that the client has an up-to-date value before
            +   * proceeding.
            +   * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for etag. + */ + @java.lang.Override + public com.google.protobuf.ByteString getEtagBytes() { + java.lang.Object ref = etag_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + etag_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PERSISTENT_DIRECTORIES_FIELD_NUMBER = 25; + + @SuppressWarnings("serial") + private java.util.List< + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory> + persistentDirectories_; + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory> + getPersistentDirectoriesList() { + return persistentDirectories_; + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends + com.google.cloud.workstations.v1beta.Workstation + .WorkstationPersistentDirectoryOrBuilder> + getPersistentDirectoriesOrBuilderList() { + return persistentDirectories_; + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getPersistentDirectoriesCount() { + return persistentDirectories_.size(); + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + getPersistentDirectories(int index) { + return persistentDirectories_.get(index); + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectoryOrBuilder + getPersistentDirectoriesOrBuilder(int index) { + return persistentDirectories_.get(index); + } + + public static final int STATE_FIELD_NUMBER = 10; + private int state_ = 0; + + /** + * + * + *
            +   * Output only. Current state of the workstation.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The enum numeric value on the wire for state. + */ + @java.lang.Override + public int getStateValue() { + return state_; + } + + /** + * + * + *
            +   * Output only. Current state of the workstation.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The state. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.State getState() { + com.google.cloud.workstations.v1beta.Workstation.State result = + com.google.cloud.workstations.v1beta.Workstation.State.forNumber(state_); + return result == null + ? com.google.cloud.workstations.v1beta.Workstation.State.UNRECOGNIZED + : result; + } + + public static final int HOST_FIELD_NUMBER = 11; + + @SuppressWarnings("serial") + private volatile java.lang.Object host_ = ""; + + /** + * + * + *
            +   * Output only. Host to which clients can send HTTPS traffic that will be
            +   * received by the workstation. Authorized traffic will be received to the
            +   * workstation as HTTP on port 80. To send traffic to a different port,
            +   * clients may prefix the host with the destination port in the format
            +   * `{port}-{host}`.
            +   * 
            + * + * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The host. + */ + @java.lang.Override + public java.lang.String getHost() { + java.lang.Object ref = host_; + 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(); + host_ = s; + return s; + } + } + + /** + * + * + *
            +   * Output only. Host to which clients can send HTTPS traffic that will be
            +   * received by the workstation. Authorized traffic will be received to the
            +   * workstation as HTTP on port 80. To send traffic to a different port,
            +   * clients may prefix the host with the destination port in the format
            +   * `{port}-{host}`.
            +   * 
            + * + * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for host. + */ + @java.lang.Override + public com.google.protobuf.ByteString getHostBytes() { + java.lang.Object ref = host_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + host_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ENV_FIELD_NUMBER = 12; + + private static final class EnvDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_EnvEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField env_; + + private com.google.protobuf.MapField internalGetEnv() { + if (env_ == null) { + return com.google.protobuf.MapField.emptyMapField(EnvDefaultEntryHolder.defaultEntry); + } + return env_; + } + + public int getEnvCount() { + return internalGetEnv().getMap().size(); + } + + /** + * + * + *
            +   * Optional. Environment variables passed to the workstation container's
            +   * entrypoint.
            +   * 
            + * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsEnv(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetEnv().getMap().containsKey(key); + } + + /** Use {@link #getEnvMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getEnv() { + return getEnvMap(); + } + + /** + * + * + *
            +   * Optional. Environment variables passed to the workstation container's
            +   * entrypoint.
            +   * 
            + * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getEnvMap() { + return internalGetEnv().getMap(); + } + + /** + * + * + *
            +   * Optional. Environment variables passed to the workstation container's
            +   * entrypoint.
            +   * 
            + * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getEnvOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetEnv().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional. Environment variables passed to the workstation container's
            +   * entrypoint.
            +   * 
            + * + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getEnvOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetEnv().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int KMS_KEY_FIELD_NUMBER = 15; + + @SuppressWarnings("serial") + private volatile java.lang.Object kmsKey_ = ""; + + /** + * + * + *
            +   * Output only. The name of the Google Cloud KMS encryption key used to
            +   * encrypt this workstation. The KMS key can only be configured in the
            +   * WorkstationConfig. The expected format is
            +   * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
            +   * 
            + * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The kmsKey. + */ + @java.lang.Override + public java.lang.String getKmsKey() { + java.lang.Object ref = kmsKey_; + 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(); + kmsKey_ = s; + return s; + } + } + + /** + * + * + *
            +   * Output only. The name of the Google Cloud KMS encryption key used to
            +   * encrypt this workstation. The KMS key can only be configured in the
            +   * WorkstationConfig. The expected format is
            +   * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
            +   * 
            + * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for kmsKey. + */ + @java.lang.Override + public com.google.protobuf.ByteString getKmsKeyBytes() { + java.lang.Object ref = kmsKey_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int BOOST_CONFIGS_FIELD_NUMBER = 16; + + @SuppressWarnings("serial") + private java.util.List + boostConfigs_; + + /** + * + * + *
            +   * Output only. List of available boost configuration IDs that this
            +   * workstation can be boosted up to.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getBoostConfigsList() { + return boostConfigs_; + } + + /** + * + * + *
            +   * Output only. List of available boost configuration IDs that this
            +   * workstation can be boosted up to.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List< + ? extends + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfigOrBuilder> + getBoostConfigsOrBuilderList() { + return boostConfigs_; + } + + /** + * + * + *
            +   * Output only. List of available boost configuration IDs that this
            +   * workstation can be boosted up to.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getBoostConfigsCount() { + return boostConfigs_.size(); + } + + /** + * + * + *
            +   * Output only. List of available boost configuration IDs that this
            +   * workstation can be boosted up to.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig getBoostConfigs( + int index) { + return boostConfigs_.get(index); + } + + /** + * + * + *
            +   * Output only. List of available boost configuration IDs that this
            +   * workstation can be boosted up to.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfigOrBuilder + getBoostConfigsOrBuilder(int index) { + return boostConfigs_.get(index); + } + + public static final int SOURCE_WORKSTATION_FIELD_NUMBER = 17; + + @SuppressWarnings("serial") + private volatile java.lang.Object sourceWorkstation_ = ""; + + /** + * + * + *
            +   * Optional. The source workstation from which this workstation's persistent
            +   * directories were cloned on creation.
            +   * 
            + * + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceWorkstation. + */ + @java.lang.Override + public java.lang.String getSourceWorkstation() { + java.lang.Object ref = sourceWorkstation_; + 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(); + sourceWorkstation_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. The source workstation from which this workstation's persistent
            +   * directories were cloned on creation.
            +   * 
            + * + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceWorkstation. + */ + @java.lang.Override + public com.google.protobuf.ByteString getSourceWorkstationBytes() { + java.lang.Object ref = sourceWorkstation_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceWorkstation_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SATISFIES_PZS_FIELD_NUMBER = 18; + private boolean satisfiesPzs_ = false; + + /** + * + * + *
            +   * Output only. Reserved for future use.
            +   * 
            + * + * bool satisfies_pzs = 18 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzs. + */ + @java.lang.Override + public boolean getSatisfiesPzs() { + return satisfiesPzs_; + } + + public static final int SATISFIES_PZI_FIELD_NUMBER = 19; + private boolean satisfiesPzi_ = false; + + /** + * + * + *
            +   * Output only. Reserved for future use.
            +   * 
            + * + * bool satisfies_pzi = 19 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzi. + */ + @java.lang.Override + public boolean getSatisfiesPzi() { + return satisfiesPzi_; + } + + public static final int RUNTIME_HOST_FIELD_NUMBER = 21; + private com.google.cloud.workstations.v1beta.Workstation.RuntimeHost runtimeHost_; + + /** + * + * + *
            +   * Optional. Output only. Runtime host for the workstation when in
            +   * STATE_RUNNING.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the runtimeHost field is set. + */ + @java.lang.Override + public boolean hasRuntimeHost() { + return ((bitField0_ & 0x00000010) != 0); + } + + /** + * + * + *
            +   * Optional. Output only. Runtime host for the workstation when in
            +   * STATE_RUNNING.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The runtimeHost. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost getRuntimeHost() { + return runtimeHost_ == null + ? com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.getDefaultInstance() + : runtimeHost_; + } + + /** + * + * + *
            +   * Optional. Output only. Runtime host for the workstation when in
            +   * STATE_RUNNING.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHostOrBuilder + getRuntimeHostOrBuilder() { + return runtimeHost_ == null + ? com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.getDefaultInstance() + : runtimeHost_; + } + + public static final int DEGRADED_FIELD_NUMBER = 23; + private boolean degraded_ = false; + + /** + * + * + *
            +   * Output only. Whether this workstation is in degraded mode, in which case it
            +   * may require user action to restore full functionality. The
            +   * [conditions][google.cloud.workstations.v1beta.Workstation.conditions] field
            +   * contains detailed information about the status of the workstation.
            +   * 
            + * + * bool degraded = 23 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The degraded. + */ + @java.lang.Override + public boolean getDegraded() { + return degraded_; + } + + public static final int CONDITIONS_FIELD_NUMBER = 24; + + @SuppressWarnings("serial") + private java.util.List conditions_; + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation's current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getConditionsList() { + return conditions_; + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation's current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getConditionsOrBuilderList() { + return conditions_; + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation's current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getConditionsCount() { + return conditions_.size(); + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation's current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.rpc.Status getConditions(int index) { + return conditions_.get(index); + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation's current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { + return conditions_.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 (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, name_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, displayName_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, uid_); + } + if (reconciling_ != false) { + output.writeBool(4, reconciling_); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetAnnotations(), AnnotationsDefaultEntryHolder.defaultEntry, 5); + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(6, getCreateTime()); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(7, getUpdateTime()); + } + if (((bitField0_ & 0x00000008) != 0)) { + output.writeMessage(8, getDeleteTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 9, etag_); + } + if (state_ + != com.google.cloud.workstations.v1beta.Workstation.State.STATE_UNSPECIFIED.getNumber()) { + output.writeEnum(10, state_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(host_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 11, host_); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetEnv(), EnvDefaultEntryHolder.defaultEntry, 12); + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 13); + if (((bitField0_ & 0x00000004) != 0)) { + output.writeMessage(14, getStartTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kmsKey_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 15, kmsKey_); + } + for (int i = 0; i < boostConfigs_.size(); i++) { + output.writeMessage(16, boostConfigs_.get(i)); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceWorkstation_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 17, sourceWorkstation_); + } + if (satisfiesPzs_ != false) { + output.writeBool(18, satisfiesPzs_); + } + if (satisfiesPzi_ != false) { + output.writeBool(19, satisfiesPzi_); + } + if (((bitField0_ & 0x00000010) != 0)) { + output.writeMessage(21, getRuntimeHost()); + } + if (degraded_ != false) { + output.writeBool(23, degraded_); + } + for (int i = 0; i < conditions_.size(); i++) { + output.writeMessage(24, conditions_.get(i)); + } + for (int i = 0; i < persistentDirectories_.size(); i++) { + output.writeMessage(25, persistentDirectories_.get(i)); + } + 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(displayName_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, displayName_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, uid_); + } + if (reconciling_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, reconciling_); + } + for (java.util.Map.Entry entry : + internalGetAnnotations().getMap().entrySet()) { + com.google.protobuf.MapEntry annotations__ = + AnnotationsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, annotations__); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getCreateTime()); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getUpdateTime()); + } + if (((bitField0_ & 0x00000008) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getDeleteTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(9, etag_); + } + if (state_ + != com.google.cloud.workstations.v1beta.Workstation.State.STATE_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(10, state_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(host_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(11, host_); + } + for (java.util.Map.Entry entry : + internalGetEnv().getMap().entrySet()) { + com.google.protobuf.MapEntry env__ = + EnvDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, env__); + } + for (java.util.Map.Entry entry : + internalGetLabels().getMap().entrySet()) { + com.google.protobuf.MapEntry labels__ = + LabelsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(13, labels__); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, getStartTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kmsKey_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(15, kmsKey_); + } + for (int i = 0; i < boostConfigs_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(16, boostConfigs_.get(i)); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceWorkstation_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(17, sourceWorkstation_); + } + if (satisfiesPzs_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(18, satisfiesPzs_); + } + if (satisfiesPzi_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(19, satisfiesPzi_); + } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(21, getRuntimeHost()); + } + if (degraded_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(23, degraded_); + } + for (int i = 0; i < conditions_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(24, conditions_.get(i)); + } + for (int i = 0; i < persistentDirectories_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 25, persistentDirectories_.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.cloud.workstations.v1beta.Workstation)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.Workstation other = + (com.google.cloud.workstations.v1beta.Workstation) obj; + + if (!getName().equals(other.getName())) return false; + if (!getDisplayName().equals(other.getDisplayName())) return false; + if (!getUid().equals(other.getUid())) return false; + if (getReconciling() != other.getReconciling()) return false; + if (!internalGetAnnotations().equals(other.internalGetAnnotations())) return false; + if (!internalGetLabels().equals(other.internalGetLabels())) return false; + if (hasCreateTime() != other.hasCreateTime()) return false; + if (hasCreateTime()) { + if (!getCreateTime().equals(other.getCreateTime())) return false; + } + if (hasUpdateTime() != other.hasUpdateTime()) return false; + if (hasUpdateTime()) { + if (!getUpdateTime().equals(other.getUpdateTime())) return false; + } + if (hasStartTime() != other.hasStartTime()) return false; + if (hasStartTime()) { + if (!getStartTime().equals(other.getStartTime())) return false; + } + if (hasDeleteTime() != other.hasDeleteTime()) return false; + if (hasDeleteTime()) { + if (!getDeleteTime().equals(other.getDeleteTime())) return false; + } + if (!getEtag().equals(other.getEtag())) return false; + if (!getPersistentDirectoriesList().equals(other.getPersistentDirectoriesList())) return false; + if (state_ != other.state_) return false; + if (!getHost().equals(other.getHost())) return false; + if (!internalGetEnv().equals(other.internalGetEnv())) return false; + if (!getKmsKey().equals(other.getKmsKey())) return false; + if (!getBoostConfigsList().equals(other.getBoostConfigsList())) return false; + if (!getSourceWorkstation().equals(other.getSourceWorkstation())) return false; + if (getSatisfiesPzs() != other.getSatisfiesPzs()) return false; + if (getSatisfiesPzi() != other.getSatisfiesPzi()) return false; + if (hasRuntimeHost() != other.hasRuntimeHost()) return false; + if (hasRuntimeHost()) { + if (!getRuntimeHost().equals(other.getRuntimeHost())) return false; + } + if (getDegraded() != other.getDegraded()) return false; + if (!getConditionsList().equals(other.getConditionsList())) 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) + DISPLAY_NAME_FIELD_NUMBER; + hash = (53 * hash) + getDisplayName().hashCode(); + hash = (37 * hash) + UID_FIELD_NUMBER; + hash = (53 * hash) + getUid().hashCode(); + hash = (37 * hash) + RECONCILING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReconciling()); + if (!internalGetAnnotations().getMap().isEmpty()) { + hash = (37 * hash) + ANNOTATIONS_FIELD_NUMBER; + hash = (53 * hash) + internalGetAnnotations().hashCode(); + } + if (!internalGetLabels().getMap().isEmpty()) { + hash = (37 * hash) + LABELS_FIELD_NUMBER; + hash = (53 * hash) + internalGetLabels().hashCode(); + } + if (hasCreateTime()) { + hash = (37 * hash) + CREATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getCreateTime().hashCode(); + } + if (hasUpdateTime()) { + hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getUpdateTime().hashCode(); + } + if (hasStartTime()) { + hash = (37 * hash) + START_TIME_FIELD_NUMBER; + hash = (53 * hash) + getStartTime().hashCode(); + } + if (hasDeleteTime()) { + hash = (37 * hash) + DELETE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getDeleteTime().hashCode(); + } + hash = (37 * hash) + ETAG_FIELD_NUMBER; + hash = (53 * hash) + getEtag().hashCode(); + if (getPersistentDirectoriesCount() > 0) { + hash = (37 * hash) + PERSISTENT_DIRECTORIES_FIELD_NUMBER; + hash = (53 * hash) + getPersistentDirectoriesList().hashCode(); + } + hash = (37 * hash) + STATE_FIELD_NUMBER; + hash = (53 * hash) + state_; + hash = (37 * hash) + HOST_FIELD_NUMBER; + hash = (53 * hash) + getHost().hashCode(); + if (!internalGetEnv().getMap().isEmpty()) { + hash = (37 * hash) + ENV_FIELD_NUMBER; + hash = (53 * hash) + internalGetEnv().hashCode(); + } + hash = (37 * hash) + KMS_KEY_FIELD_NUMBER; + hash = (53 * hash) + getKmsKey().hashCode(); + if (getBoostConfigsCount() > 0) { + hash = (37 * hash) + BOOST_CONFIGS_FIELD_NUMBER; + hash = (53 * hash) + getBoostConfigsList().hashCode(); + } + hash = (37 * hash) + SOURCE_WORKSTATION_FIELD_NUMBER; + hash = (53 * hash) + getSourceWorkstation().hashCode(); + hash = (37 * hash) + SATISFIES_PZS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getSatisfiesPzs()); + hash = (37 * hash) + SATISFIES_PZI_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getSatisfiesPzi()); + if (hasRuntimeHost()) { + hash = (37 * hash) + RUNTIME_HOST_FIELD_NUMBER; + hash = (53 * hash) + getRuntimeHost().hashCode(); + } + hash = (37 * hash) + DEGRADED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDegraded()); + if (getConditionsCount() > 0) { + hash = (37 * hash) + CONDITIONS_FIELD_NUMBER; + hash = (53 * hash) + getConditionsList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1beta.Workstation parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.Workstation parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.Workstation parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.Workstation 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.cloud.workstations.v1beta.Workstation parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.Workstation parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.Workstation parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.Workstation 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.cloud.workstations.v1beta.Workstation parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.Workstation 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.cloud.workstations.v1beta.Workstation parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.Workstation 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.cloud.workstations.v1beta.Workstation 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 single instance of a developer workstation with its own persistent storage.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.Workstation} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.Workstation) + com.google.cloud.workstations.v1beta.WorkstationOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_descriptor; + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 5: + return internalGetAnnotations(); + case 13: + return internalGetLabels(); + case 12: + return internalGetEnv(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( + int number) { + switch (number) { + case 5: + return internalGetMutableAnnotations(); + case 13: + return internalGetMutableLabels(); + case 12: + return internalGetMutableEnv(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.Workstation.class, + com.google.cloud.workstations.v1beta.Workstation.Builder.class); + } + + // Construct using com.google.cloud.workstations.v1beta.Workstation.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetCreateTimeFieldBuilder(); + internalGetUpdateTimeFieldBuilder(); + internalGetStartTimeFieldBuilder(); + internalGetDeleteTimeFieldBuilder(); + internalGetPersistentDirectoriesFieldBuilder(); + internalGetBoostConfigsFieldBuilder(); + internalGetRuntimeHostFieldBuilder(); + internalGetConditionsFieldBuilder(); + } + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + displayName_ = ""; + uid_ = ""; + reconciling_ = false; + internalGetMutableAnnotations().clear(); + internalGetMutableLabels().clear(); + createTime_ = null; + if (createTimeBuilder_ != null) { + createTimeBuilder_.dispose(); + createTimeBuilder_ = null; + } + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; + } + startTime_ = null; + if (startTimeBuilder_ != null) { + startTimeBuilder_.dispose(); + startTimeBuilder_ = null; + } + deleteTime_ = null; + if (deleteTimeBuilder_ != null) { + deleteTimeBuilder_.dispose(); + deleteTimeBuilder_ = null; + } + etag_ = ""; + if (persistentDirectoriesBuilder_ == null) { + persistentDirectories_ = java.util.Collections.emptyList(); + } else { + persistentDirectories_ = null; + persistentDirectoriesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000800); + state_ = 0; + host_ = ""; + internalGetMutableEnv().clear(); + kmsKey_ = ""; + if (boostConfigsBuilder_ == null) { + boostConfigs_ = java.util.Collections.emptyList(); + } else { + boostConfigs_ = null; + boostConfigsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00010000); + sourceWorkstation_ = ""; + satisfiesPzs_ = false; + satisfiesPzi_ = false; + runtimeHost_ = null; + if (runtimeHostBuilder_ != null) { + runtimeHostBuilder_.dispose(); + runtimeHostBuilder_ = null; + } + degraded_ = false; + if (conditionsBuilder_ == null) { + conditions_ = java.util.Collections.emptyList(); + } else { + conditions_ = null; + conditionsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00400000); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_Workstation_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.Workstation.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation build() { + com.google.cloud.workstations.v1beta.Workstation result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation buildPartial() { + com.google.cloud.workstations.v1beta.Workstation result = + new com.google.cloud.workstations.v1beta.Workstation(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields( + com.google.cloud.workstations.v1beta.Workstation result) { + if (persistentDirectoriesBuilder_ == null) { + if (((bitField0_ & 0x00000800) != 0)) { + persistentDirectories_ = java.util.Collections.unmodifiableList(persistentDirectories_); + bitField0_ = (bitField0_ & ~0x00000800); + } + result.persistentDirectories_ = persistentDirectories_; + } else { + result.persistentDirectories_ = persistentDirectoriesBuilder_.build(); + } + if (boostConfigsBuilder_ == null) { + if (((bitField0_ & 0x00010000) != 0)) { + boostConfigs_ = java.util.Collections.unmodifiableList(boostConfigs_); + bitField0_ = (bitField0_ & ~0x00010000); + } + result.boostConfigs_ = boostConfigs_; + } else { + result.boostConfigs_ = boostConfigsBuilder_.build(); + } + if (conditionsBuilder_ == null) { + if (((bitField0_ & 0x00400000) != 0)) { + conditions_ = java.util.Collections.unmodifiableList(conditions_); + bitField0_ = (bitField0_ & ~0x00400000); + } + result.conditions_ = conditions_; + } else { + result.conditions_ = conditionsBuilder_.build(); + } + } + + private void buildPartial0(com.google.cloud.workstations.v1beta.Workstation result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.displayName_ = displayName_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.uid_ = uid_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.reconciling_ = reconciling_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.annotations_ = internalGetAnnotations(); + result.annotations_.makeImmutable(); + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.labels_ = internalGetLabels(); + result.labels_.makeImmutable(); + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000040) != 0)) { + result.createTime_ = createTimeBuilder_ == null ? createTime_ : createTimeBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.updateTime_ = updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.startTime_ = startTimeBuilder_ == null ? startTime_ : startTimeBuilder_.build(); + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.deleteTime_ = deleteTimeBuilder_ == null ? deleteTime_ : deleteTimeBuilder_.build(); + to_bitField0_ |= 0x00000008; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.etag_ = etag_; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.state_ = state_; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.host_ = host_; + } + if (((from_bitField0_ & 0x00004000) != 0)) { + result.env_ = internalGetEnv(); + result.env_.makeImmutable(); + } + if (((from_bitField0_ & 0x00008000) != 0)) { + result.kmsKey_ = kmsKey_; + } + if (((from_bitField0_ & 0x00020000) != 0)) { + result.sourceWorkstation_ = sourceWorkstation_; + } + if (((from_bitField0_ & 0x00040000) != 0)) { + result.satisfiesPzs_ = satisfiesPzs_; + } + if (((from_bitField0_ & 0x00080000) != 0)) { + result.satisfiesPzi_ = satisfiesPzi_; + } + if (((from_bitField0_ & 0x00100000) != 0)) { + result.runtimeHost_ = + runtimeHostBuilder_ == null ? runtimeHost_ : runtimeHostBuilder_.build(); + to_bitField0_ |= 0x00000010; + } + if (((from_bitField0_ & 0x00200000) != 0)) { + result.degraded_ = degraded_; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1beta.Workstation) { + return mergeFrom((com.google.cloud.workstations.v1beta.Workstation) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.workstations.v1beta.Workstation other) { + if (other == com.google.cloud.workstations.v1beta.Workstation.getDefaultInstance()) + return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getDisplayName().isEmpty()) { + displayName_ = other.displayName_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getUid().isEmpty()) { + uid_ = other.uid_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getReconciling() != false) { + setReconciling(other.getReconciling()); + } + internalGetMutableAnnotations().mergeFrom(other.internalGetAnnotations()); + bitField0_ |= 0x00000010; + internalGetMutableLabels().mergeFrom(other.internalGetLabels()); + bitField0_ |= 0x00000020; + if (other.hasCreateTime()) { + mergeCreateTime(other.getCreateTime()); + } + if (other.hasUpdateTime()) { + mergeUpdateTime(other.getUpdateTime()); + } + if (other.hasStartTime()) { + mergeStartTime(other.getStartTime()); + } + if (other.hasDeleteTime()) { + mergeDeleteTime(other.getDeleteTime()); + } + if (!other.getEtag().isEmpty()) { + etag_ = other.etag_; + bitField0_ |= 0x00000400; + onChanged(); + } + if (persistentDirectoriesBuilder_ == null) { + if (!other.persistentDirectories_.isEmpty()) { + if (persistentDirectories_.isEmpty()) { + persistentDirectories_ = other.persistentDirectories_; + bitField0_ = (bitField0_ & ~0x00000800); + } else { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.addAll(other.persistentDirectories_); + } + onChanged(); + } + } else { + if (!other.persistentDirectories_.isEmpty()) { + if (persistentDirectoriesBuilder_.isEmpty()) { + persistentDirectoriesBuilder_.dispose(); + persistentDirectoriesBuilder_ = null; + persistentDirectories_ = other.persistentDirectories_; + bitField0_ = (bitField0_ & ~0x00000800); + persistentDirectoriesBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetPersistentDirectoriesFieldBuilder() + : null; + } else { + persistentDirectoriesBuilder_.addAllMessages(other.persistentDirectories_); + } + } + } + if (other.state_ != 0) { + setStateValue(other.getStateValue()); + } + if (!other.getHost().isEmpty()) { + host_ = other.host_; + bitField0_ |= 0x00002000; + onChanged(); + } + internalGetMutableEnv().mergeFrom(other.internalGetEnv()); + bitField0_ |= 0x00004000; + if (!other.getKmsKey().isEmpty()) { + kmsKey_ = other.kmsKey_; + bitField0_ |= 0x00008000; + onChanged(); + } + if (boostConfigsBuilder_ == null) { + if (!other.boostConfigs_.isEmpty()) { + if (boostConfigs_.isEmpty()) { + boostConfigs_ = other.boostConfigs_; + bitField0_ = (bitField0_ & ~0x00010000); + } else { + ensureBoostConfigsIsMutable(); + boostConfigs_.addAll(other.boostConfigs_); + } + onChanged(); + } + } else { + if (!other.boostConfigs_.isEmpty()) { + if (boostConfigsBuilder_.isEmpty()) { + boostConfigsBuilder_.dispose(); + boostConfigsBuilder_ = null; + boostConfigs_ = other.boostConfigs_; + bitField0_ = (bitField0_ & ~0x00010000); + boostConfigsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetBoostConfigsFieldBuilder() + : null; + } else { + boostConfigsBuilder_.addAllMessages(other.boostConfigs_); + } + } + } + if (!other.getSourceWorkstation().isEmpty()) { + sourceWorkstation_ = other.sourceWorkstation_; + bitField0_ |= 0x00020000; + onChanged(); + } + if (other.getSatisfiesPzs() != false) { + setSatisfiesPzs(other.getSatisfiesPzs()); + } + if (other.getSatisfiesPzi() != false) { + setSatisfiesPzi(other.getSatisfiesPzi()); + } + if (other.hasRuntimeHost()) { + mergeRuntimeHost(other.getRuntimeHost()); + } + if (other.getDegraded() != false) { + setDegraded(other.getDegraded()); + } + if (conditionsBuilder_ == null) { + if (!other.conditions_.isEmpty()) { + if (conditions_.isEmpty()) { + conditions_ = other.conditions_; + bitField0_ = (bitField0_ & ~0x00400000); + } else { + ensureConditionsIsMutable(); + conditions_.addAll(other.conditions_); + } + onChanged(); + } + } else { + if (!other.conditions_.isEmpty()) { + if (conditionsBuilder_.isEmpty()) { + conditionsBuilder_.dispose(); + conditionsBuilder_ = null; + conditions_ = other.conditions_; + bitField0_ = (bitField0_ & ~0x00400000); + conditionsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetConditionsFieldBuilder() + : null; + } else { + conditionsBuilder_.addAllMessages(other.conditions_); + } + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + name_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + displayName_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + uid_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: + { + reconciling_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 42: + { + com.google.protobuf.MapEntry annotations__ = + input.readMessage( + AnnotationsDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableAnnotations() + .getMutableMap() + .put(annotations__.getKey(), annotations__.getValue()); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 50: + { + input.readMessage( + internalGetCreateTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000040; + break; + } // case 50 + case 58: + { + input.readMessage( + internalGetUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000080; + break; + } // case 58 + case 66: + { + input.readMessage( + internalGetDeleteTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000200; + break; + } // case 66 + case 74: + { + etag_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000400; + break; + } // case 74 + case 80: + { + state_ = input.readEnum(); + bitField0_ |= 0x00001000; + break; + } // case 80 + case 90: + { + host_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00002000; + break; + } // case 90 + case 98: + { + com.google.protobuf.MapEntry env__ = + input.readMessage( + EnvDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); + internalGetMutableEnv().getMutableMap().put(env__.getKey(), env__.getValue()); + bitField0_ |= 0x00004000; + break; + } // case 98 + case 106: + { + com.google.protobuf.MapEntry labels__ = + input.readMessage( + LabelsDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableLabels() + .getMutableMap() + .put(labels__.getKey(), labels__.getValue()); + bitField0_ |= 0x00000020; + break; + } // case 106 + case 114: + { + input.readMessage( + internalGetStartTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000100; + break; + } // case 114 + case 122: + { + kmsKey_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00008000; + break; + } // case 122 + case 130: + { + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig m = + input.readMessage( + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig + .parser(), + extensionRegistry); + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.add(m); + } else { + boostConfigsBuilder_.addMessage(m); + } + break; + } // case 130 + case 138: + { + sourceWorkstation_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00020000; + break; + } // case 138 + case 144: + { + satisfiesPzs_ = input.readBool(); + bitField0_ |= 0x00040000; + break; + } // case 144 + case 152: + { + satisfiesPzi_ = input.readBool(); + bitField0_ |= 0x00080000; + break; + } // case 152 + case 170: + { + input.readMessage( + internalGetRuntimeHostFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00100000; + break; + } // case 170 + case 184: + { + degraded_ = input.readBool(); + bitField0_ |= 0x00200000; + break; + } // case 184 + case 194: + { + com.google.rpc.Status m = + input.readMessage(com.google.rpc.Status.parser(), extensionRegistry); + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(m); + } else { + conditionsBuilder_.addMessage(m); + } + break; + } // case 194 + case 202: + { + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory m = + input.readMessage( + com.google.cloud.workstations.v1beta.Workstation + .WorkstationPersistentDirectory.parser(), + extensionRegistry); + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(m); + } else { + persistentDirectoriesBuilder_.addMessage(m); + } + break; + } // case 202 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object name_ = ""; + + /** + * + * + *
            +     * Identifier. Full name of this workstation.
            +     * 
            + * + * 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. Full name of this workstation.
            +     * 
            + * + * 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. Full name of this workstation.
            +     * 
            + * + * 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. Full name of this workstation.
            +     * 
            + * + * 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. Full name of this workstation.
            +     * 
            + * + * 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 displayName_ = ""; + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The displayName. + */ + public java.lang.String getDisplayName() { + java.lang.Object ref = displayName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + displayName_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for displayName. + */ + public com.google.protobuf.ByteString getDisplayNameBytes() { + java.lang.Object ref = displayName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + displayName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The displayName to set. + * @return This builder for chaining. + */ + public Builder setDisplayName(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + displayName_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearDisplayName() { + displayName_ = getDefaultInstance().getDisplayName(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for displayName to set. + * @return This builder for chaining. + */ + public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + displayName_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object uid_ = ""; + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The uid. + */ + public java.lang.String getUid() { + java.lang.Object ref = uid_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + uid_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The bytes for uid. + */ + public com.google.protobuf.ByteString getUidBytes() { + java.lang.Object ref = uid_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @param value The uid to set. + * @return This builder for chaining. + */ + public Builder setUid(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + uid_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearUid() { + uid_ = getDefaultInstance().getUid(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @param value The bytes for uid to set. + * @return This builder for chaining. + */ + public Builder setUidBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + uid_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private boolean reconciling_; + + /** + * + * + *
            +     * Output only. Indicates whether this workstation is currently being updated
            +     * to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The reconciling. + */ + @java.lang.Override + public boolean getReconciling() { + return reconciling_; + } + + /** + * + * + *
            +     * Output only. Indicates whether this workstation is currently being updated
            +     * to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The reconciling to set. + * @return This builder for chaining. + */ + public Builder setReconciling(boolean value) { + + reconciling_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Indicates whether this workstation is currently being updated
            +     * to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearReconciling() { + bitField0_ = (bitField0_ & ~0x00000008); + reconciling_ = false; + onChanged(); + return this; + } + + private com.google.protobuf.MapField annotations_; + + private com.google.protobuf.MapField + internalGetAnnotations() { + if (annotations_ == null) { + return com.google.protobuf.MapField.emptyMapField( + AnnotationsDefaultEntryHolder.defaultEntry); + } + return annotations_; + } + + private com.google.protobuf.MapField + internalGetMutableAnnotations() { + if (annotations_ == null) { + annotations_ = + com.google.protobuf.MapField.newMapField(AnnotationsDefaultEntryHolder.defaultEntry); + } + if (!annotations_.isMutable()) { + annotations_ = annotations_.copy(); + } + bitField0_ |= 0x00000010; + onChanged(); + return annotations_; + } + + public int getAnnotationsCount() { + return internalGetAnnotations().getMap().size(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetAnnotations().getMap().containsKey(key); + } + + /** Use {@link #getAnnotationsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getAnnotations() { + return getAnnotationsMap(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getAnnotationsMap() { + return internalGetAnnotations().getMap(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getAnnotationsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getAnnotationsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public Builder clearAnnotations() { + bitField0_ = (bitField0_ & ~0x00000010); + internalGetMutableAnnotations().getMutableMap().clear(); + return this; + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableAnnotations().getMutableMap().remove(key); + return this; + } + + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableAnnotations() { + bitField0_ |= 0x00000010; + return internalGetMutableAnnotations().getMutableMap(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAnnotations(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableAnnotations().getMutableMap().put(key, value); + bitField0_ |= 0x00000010; + return this; + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAllAnnotations(java.util.Map values) { + internalGetMutableAnnotations().getMutableMap().putAll(values); + bitField0_ |= 0x00000010; + return this; + } + + private com.google.protobuf.MapField labels_; + + private com.google.protobuf.MapField internalGetLabels() { + if (labels_ == null) { + return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); + } + return labels_; + } + + private com.google.protobuf.MapField + internalGetMutableLabels() { + if (labels_ == null) { + labels_ = com.google.protobuf.MapField.newMapField(LabelsDefaultEntryHolder.defaultEntry); + } + if (!labels_.isMutable()) { + labels_ = labels_.copy(); + } + bitField0_ |= 0x00000020; + onChanged(); + return labels_; + } + + public int getLabelsCount() { + return internalGetLabels().getMap().size(); + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetLabels().getMap().containsKey(key); + } + + /** Use {@link #getLabelsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getLabels() { + return getLabelsMap(); + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getLabelsMap() { + return internalGetLabels().getMap(); + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getLabelsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getLabelsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public Builder clearLabels() { + bitField0_ = (bitField0_ & ~0x00000020); + internalGetMutableLabels().getMutableMap().clear(); + return this; + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder removeLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableLabels().getMutableMap().remove(key); + return this; + } + + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableLabels() { + bitField0_ |= 0x00000020; + return internalGetMutableLabels().getMutableMap(); + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder putLabels(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableLabels().getMutableMap().put(key, value); + bitField0_ |= 0x00000020; + return this; + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder putAllLabels(java.util.Map values) { + internalGetMutableLabels().getMutableMap().putAll(values); + bitField0_ |= 0x00000020; + return this; + } + + private com.google.protobuf.Timestamp createTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + createTimeBuilder_; + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the createTime field is set. + */ + public boolean hasCreateTime() { + return ((bitField0_ & 0x00000040) != 0); + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The createTime. + */ + public com.google.protobuf.Timestamp getCreateTime() { + if (createTimeBuilder_ == null) { + return createTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : createTime_; + } else { + return createTimeBuilder_.getMessage(); + } + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setCreateTime(com.google.protobuf.Timestamp value) { + if (createTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + createTime_ = value; + } else { + createTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (createTimeBuilder_ == null) { + createTime_ = builderForValue.build(); + } else { + createTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { + if (createTimeBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0) + && createTime_ != null + && createTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getCreateTimeBuilder().mergeFrom(value); + } else { + createTime_ = value; + } + } else { + createTimeBuilder_.mergeFrom(value); + } + if (createTime_ != null) { + bitField0_ |= 0x00000040; + onChanged(); + } + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearCreateTime() { + bitField0_ = (bitField0_ & ~0x00000040); + createTime_ = null; + if (createTimeBuilder_ != null) { + createTimeBuilder_.dispose(); + createTimeBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { + bitField0_ |= 0x00000040; + onChanged(); + return internalGetCreateTimeFieldBuilder().getBuilder(); + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { + if (createTimeBuilder_ != null) { + return createTimeBuilder_.getMessageOrBuilder(); + } else { + return createTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : createTime_; + } + } + + /** + * + * + *
            +     * Output only. Time when this workstation was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetCreateTimeFieldBuilder() { + if (createTimeBuilder_ == null) { + createTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getCreateTime(), getParentForChildren(), isClean()); + createTime_ = null; + } + return createTimeBuilder_; + } + + private com.google.protobuf.Timestamp updateTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + updateTimeBuilder_; + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the updateTime field is set. + */ + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000080) != 0); + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The updateTime. + */ + public com.google.protobuf.Timestamp getUpdateTime() { + if (updateTimeBuilder_ == null) { + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; + } else { + return updateTimeBuilder_.getMessage(); + } + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + updateTime_ = value; + } else { + updateTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (updateTimeBuilder_ == null) { + updateTime_ = builderForValue.build(); + } else { + updateTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (((bitField0_ & 0x00000080) != 0) + && updateTime_ != null + && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getUpdateTimeBuilder().mergeFrom(value); + } else { + updateTime_ = value; + } + } else { + updateTimeBuilder_.mergeFrom(value); + } + if (updateTime_ != null) { + bitField0_ |= 0x00000080; + onChanged(); + } + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearUpdateTime() { + bitField0_ = (bitField0_ & ~0x00000080); + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { + bitField0_ |= 0x00000080; + onChanged(); + return internalGetUpdateTimeFieldBuilder().getBuilder(); + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + if (updateTimeBuilder_ != null) { + return updateTimeBuilder_.getMessageOrBuilder(); + } else { + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; + } + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetUpdateTimeFieldBuilder() { + if (updateTimeBuilder_ == null) { + updateTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getUpdateTime(), getParentForChildren(), isClean()); + updateTime_ = null; + } + return updateTimeBuilder_; + } + + private com.google.protobuf.Timestamp startTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + startTimeBuilder_; + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
            +     * 
            + * + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the startTime field is set. + */ + public boolean hasStartTime() { + return ((bitField0_ & 0x00000100) != 0); + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
            +     * 
            + * + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The startTime. + */ + public com.google.protobuf.Timestamp getStartTime() { + if (startTimeBuilder_ == null) { + return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; + } else { + return startTimeBuilder_.getMessage(); + } + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
            +     * 
            + * + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setStartTime(com.google.protobuf.Timestamp value) { + if (startTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + startTime_ = value; + } else { + startTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
            +     * 
            + * + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setStartTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (startTimeBuilder_ == null) { + startTime_ = builderForValue.build(); + } else { + startTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
            +     * 
            + * + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeStartTime(com.google.protobuf.Timestamp value) { + if (startTimeBuilder_ == null) { + if (((bitField0_ & 0x00000100) != 0) + && startTime_ != null + && startTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getStartTimeBuilder().mergeFrom(value); + } else { + startTime_ = value; + } + } else { + startTimeBuilder_.mergeFrom(value); + } + if (startTime_ != null) { + bitField0_ |= 0x00000100; + onChanged(); + } + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
            +     * 
            + * + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearStartTime() { + bitField0_ = (bitField0_ & ~0x00000100); + startTime_ = null; + if (startTimeBuilder_ != null) { + startTimeBuilder_.dispose(); + startTimeBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
            +     * 
            + * + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.Timestamp.Builder getStartTimeBuilder() { + bitField0_ |= 0x00000100; + onChanged(); + return internalGetStartTimeFieldBuilder().getBuilder(); + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
            +     * 
            + * + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.TimestampOrBuilder getStartTimeOrBuilder() { + if (startTimeBuilder_ != null) { + return startTimeBuilder_.getMessageOrBuilder(); + } else { + return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; + } + } + + /** + * + * + *
            +     * Output only. Time when this workstation was most recently successfully
            +     * started, regardless of the workstation's initial state.
            +     * 
            + * + * + * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetStartTimeFieldBuilder() { + if (startTimeBuilder_ == null) { + startTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getStartTime(), getParentForChildren(), isClean()); + startTime_ = null; + } + return startTimeBuilder_; + } + + private com.google.protobuf.Timestamp deleteTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + deleteTimeBuilder_; + + /** + * + * + *
            +     * Output only. Time when this workstation was soft-deleted.
            +     * 
            + * + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the deleteTime field is set. + */ + public boolean hasDeleteTime() { + return ((bitField0_ & 0x00000200) != 0); + } + + /** + * + * + *
            +     * Output only. Time when this workstation was soft-deleted.
            +     * 
            + * + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The deleteTime. + */ + public com.google.protobuf.Timestamp getDeleteTime() { + if (deleteTimeBuilder_ == null) { + return deleteTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : deleteTime_; + } else { + return deleteTimeBuilder_.getMessage(); + } + } + + /** + * + * + *
            +     * Output only. Time when this workstation was soft-deleted.
            +     * 
            + * + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setDeleteTime(com.google.protobuf.Timestamp value) { + if (deleteTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deleteTime_ = value; + } else { + deleteTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was soft-deleted.
            +     * 
            + * + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (deleteTimeBuilder_ == null) { + deleteTime_ = builderForValue.build(); + } else { + deleteTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was soft-deleted.
            +     * 
            + * + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { + if (deleteTimeBuilder_ == null) { + if (((bitField0_ & 0x00000200) != 0) + && deleteTime_ != null + && deleteTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getDeleteTimeBuilder().mergeFrom(value); + } else { + deleteTime_ = value; + } + } else { + deleteTimeBuilder_.mergeFrom(value); + } + if (deleteTime_ != null) { + bitField0_ |= 0x00000200; + onChanged(); + } + return this; + } + + /** + * + * + *
            +     * Output only. Time when this workstation was soft-deleted.
            +     * 
            + * + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearDeleteTime() { + bitField0_ = (bitField0_ & ~0x00000200); + deleteTime_ = null; + if (deleteTimeBuilder_ != null) { + deleteTimeBuilder_.dispose(); + deleteTimeBuilder_ = null; + } + onChanged(); return this; } - private int bitField0_; + /** + * + * + *
            +     * Output only. Time when this workstation was soft-deleted.
            +     * 
            + * + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.Timestamp.Builder getDeleteTimeBuilder() { + bitField0_ |= 0x00000200; + onChanged(); + return internalGetDeleteTimeFieldBuilder().getBuilder(); + } - private java.lang.Object name_ = ""; + /** + * + * + *
            +     * Output only. Time when this workstation was soft-deleted.
            +     * 
            + * + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { + if (deleteTimeBuilder_ != null) { + return deleteTimeBuilder_.getMessageOrBuilder(); + } else { + return deleteTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : deleteTime_; + } + } + + /** + * + * + *
            +     * Output only. Time when this workstation was soft-deleted.
            +     * 
            + * + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetDeleteTimeFieldBuilder() { + if (deleteTimeBuilder_ == null) { + deleteTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getDeleteTime(), getParentForChildren(), isClean()); + deleteTime_ = null; + } + return deleteTimeBuilder_; + } + + private java.lang.Object etag_ = ""; /** * * *
            -     * Full name of this workstation.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * string name = 1; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The name. + * @return The etag. */ - public java.lang.String getName() { - java.lang.Object ref = name_; + public java.lang.String getEtag() { + java.lang.Object ref = etag_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); - name_ = s; + etag_ = s; return s; } else { return (java.lang.String) ref; @@ -1966,19 +8000,21 @@ public java.lang.String getName() { * * *
            -     * Full name of this workstation.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * string name = 1; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The bytes for name. + * @return The bytes for etag. */ - public com.google.protobuf.ByteString getNameBytes() { - java.lang.Object ref = name_; + public com.google.protobuf.ByteString getEtagBytes() { + java.lang.Object ref = etag_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - name_ = b; + etag_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; @@ -1989,39 +8025,254 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -     * Full name of this workstation.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * string name = 1; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The name to set. + * @param value The etag to set. * @return This builder for chaining. */ - public Builder setName(java.lang.String value) { + public Builder setEtag(java.lang.String value) { if (value == null) { throw new NullPointerException(); } - name_ = value; - bitField0_ |= 0x00000001; + etag_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
            +     * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearEtag() { + etag_ = getDefaultInstance().getEtag(); + bitField0_ = (bitField0_ & ~0x00000400); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
            +     * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for etag to set. + * @return This builder for chaining. + */ + public Builder setEtagBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + etag_ = value; + bitField0_ |= 0x00000400; onChanged(); return this; } + private java.util.List< + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory> + persistentDirectories_ = java.util.Collections.emptyList(); + + private void ensurePersistentDirectoriesIsMutable() { + if (!((bitField0_ & 0x00000800) != 0)) { + persistentDirectories_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory>( + persistentDirectories_); + bitField0_ |= 0x00000800; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory, + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory.Builder, + com.google.cloud.workstations.v1beta.Workstation + .WorkstationPersistentDirectoryOrBuilder> + persistentDirectoriesBuilder_; + + /** + * + * + *
            +     * Optional. Directories to persist across workstation sessions.
            +     * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory> + getPersistentDirectoriesList() { + if (persistentDirectoriesBuilder_ == null) { + return java.util.Collections.unmodifiableList(persistentDirectories_); + } else { + return persistentDirectoriesBuilder_.getMessageList(); + } + } + + /** + * + * + *
            +     * Optional. Directories to persist across workstation sessions.
            +     * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public int getPersistentDirectoriesCount() { + if (persistentDirectoriesBuilder_ == null) { + return persistentDirectories_.size(); + } else { + return persistentDirectoriesBuilder_.getCount(); + } + } + + /** + * + * + *
            +     * Optional. Directories to persist across workstation sessions.
            +     * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + getPersistentDirectories(int index) { + if (persistentDirectoriesBuilder_ == null) { + return persistentDirectories_.get(index); + } else { + return persistentDirectoriesBuilder_.getMessage(index); + } + } + + /** + * + * + *
            +     * Optional. Directories to persist across workstation sessions.
            +     * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setPersistentDirectories( + int index, + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory value) { + if (persistentDirectoriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.set(index, value); + onChanged(); + } else { + persistentDirectoriesBuilder_.setMessage(index, value); + } + return this; + } + + /** + * + * + *
            +     * Optional. Directories to persist across workstation sessions.
            +     * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setPersistentDirectories( + int index, + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory.Builder + builderForValue) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.set(index, builderForValue.build()); + onChanged(); + } else { + persistentDirectoriesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
            +     * Optional. Directories to persist across workstation sessions.
            +     * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addPersistentDirectories( + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory value) { + if (persistentDirectoriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(value); + onChanged(); + } else { + persistentDirectoriesBuilder_.addMessage(value); + } + return this; + } + /** * * *
            -     * Full name of this workstation.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string name = 1; - * - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder clearName() { - name_ = getDefaultInstance().getName(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); + public Builder addPersistentDirectories( + int index, + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory value) { + if (persistentDirectoriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(index, value); + onChanged(); + } else { + persistentDirectoriesBuilder_.addMessage(index, value); + } return this; } @@ -2029,92 +8280,96 @@ public Builder clearName() { * * *
            -     * Full name of this workstation.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string name = 1; - * - * @param value The bytes for name to set. - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setNameBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder addPersistentDirectories( + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory.Builder + builderForValue) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(builderForValue.build()); + onChanged(); + } else { + persistentDirectoriesBuilder_.addMessage(builderForValue.build()); } - checkByteStringIsUtf8(value); - name_ = value; - bitField0_ |= 0x00000001; - onChanged(); return this; } - private java.lang.Object displayName_ = ""; - /** * * *
            -     * Optional. Human-readable name for this workstation.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The displayName. + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public java.lang.String getDisplayName() { - java.lang.Object ref = displayName_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - displayName_ = s; - return s; + public Builder addPersistentDirectories( + int index, + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory.Builder + builderForValue) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(index, builderForValue.build()); + onChanged(); } else { - return (java.lang.String) ref; + persistentDirectoriesBuilder_.addMessage(index, builderForValue.build()); } + return this; } /** * * *
            -     * Optional. Human-readable name for this workstation.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for displayName. + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public com.google.protobuf.ByteString getDisplayNameBytes() { - java.lang.Object ref = displayName_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - displayName_ = b; - return b; + public Builder addAllPersistentDirectories( + java.lang.Iterable< + ? extends + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory> + values) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, persistentDirectories_); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + persistentDirectoriesBuilder_.addAllMessages(values); } + return this; } /** * * *
            -     * Optional. Human-readable name for this workstation.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The displayName to set. - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setDisplayName(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder clearPersistentDirectories() { + if (persistentDirectoriesBuilder_ == null) { + persistentDirectories_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000800); + onChanged(); + } else { + persistentDirectoriesBuilder_.clear(); } - displayName_ = value; - bitField0_ |= 0x00000002; - onChanged(); return this; } @@ -2122,17 +8377,21 @@ public Builder setDisplayName(java.lang.String value) { * * *
            -     * Optional. Human-readable name for this workstation.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder clearDisplayName() { - displayName_ = getDefaultInstance().getDisplayName(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); + public Builder removePersistentDirectories(int index) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.remove(index); + onChanged(); + } else { + persistentDirectoriesBuilder_.remove(index); + } return this; } @@ -2140,47 +8399,35 @@ public Builder clearDisplayName() { * * *
            -     * Optional. Human-readable name for this workstation.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for displayName to set. - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - displayName_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; + public com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory.Builder + getPersistentDirectoriesBuilder(int index) { + return internalGetPersistentDirectoriesFieldBuilder().getBuilder(index); } - private java.lang.Object uid_ = ""; - /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The uid. + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public java.lang.String getUid() { - java.lang.Object ref = uid_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - uid_ = s; - return s; + public com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectoryOrBuilder + getPersistentDirectoriesOrBuilder(int index) { + if (persistentDirectoriesBuilder_ == null) { + return persistentDirectories_.get(index); } else { - return (java.lang.String) ref; + return persistentDirectoriesBuilder_.getMessageOrBuilder(index); } } @@ -2188,22 +8435,22 @@ public java.lang.String getUid() { * * *
            -     * Output only. A system-assigned unique identifier for this workstation.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for uid. + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public com.google.protobuf.ByteString getUidBytes() { - java.lang.Object ref = uid_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - uid_ = b; - return b; + public java.util.List< + ? extends + com.google.cloud.workstations.v1beta.Workstation + .WorkstationPersistentDirectoryOrBuilder> + getPersistentDirectoriesOrBuilderList() { + if (persistentDirectoriesBuilder_ != null) { + return persistentDirectoriesBuilder_.getMessageOrBuilderList(); } else { - return (com.google.protobuf.ByteString) ref; + return java.util.Collections.unmodifiableList(persistentDirectories_); } } @@ -2211,101 +8458,118 @@ public com.google.protobuf.ByteString getUidBytes() { * * *
            -     * Output only. A system-assigned unique identifier for this workstation.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The uid to set. - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setUid(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - uid_ = value; - bitField0_ |= 0x00000004; - onChanged(); - return this; + public com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory.Builder + addPersistentDirectoriesBuilder() { + return internalGetPersistentDirectoriesFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + .getDefaultInstance()); } /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder clearUid() { - uid_ = getDefaultInstance().getUid(); - bitField0_ = (bitField0_ & ~0x00000004); - onChanged(); - return this; + public com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory.Builder + addPersistentDirectoriesBuilder(int index) { + return internalGetPersistentDirectoriesFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + .getDefaultInstance()); } /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The bytes for uid to set. - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setUidBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public java.util.List< + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory.Builder> + getPersistentDirectoriesBuilderList() { + return internalGetPersistentDirectoriesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory, + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory.Builder, + com.google.cloud.workstations.v1beta.Workstation + .WorkstationPersistentDirectoryOrBuilder> + internalGetPersistentDirectoriesFieldBuilder() { + if (persistentDirectoriesBuilder_ == null) { + persistentDirectoriesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory, + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + .Builder, + com.google.cloud.workstations.v1beta.Workstation + .WorkstationPersistentDirectoryOrBuilder>( + persistentDirectories_, + ((bitField0_ & 0x00000800) != 0), + getParentForChildren(), + isClean()); + persistentDirectories_ = null; } - checkByteStringIsUtf8(value); - uid_ = value; - bitField0_ |= 0x00000004; - onChanged(); - return this; + return persistentDirectoriesBuilder_; } - private boolean reconciling_; + private int state_ = 0; /** * * *
            -     * Output only. Indicates whether this workstation is currently being updated
            -     * to match its intended state.
            +     * Output only. Current state of the workstation.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * .google.cloud.workstations.v1beta.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The reconciling. + * @return The enum numeric value on the wire for state. */ @java.lang.Override - public boolean getReconciling() { - return reconciling_; + public int getStateValue() { + return state_; } /** * * *
            -     * Output only. Indicates whether this workstation is currently being updated
            -     * to match its intended state.
            +     * Output only. Current state of the workstation.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * .google.cloud.workstations.v1beta.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The reconciling to set. + * @param value The enum numeric value on the wire for state to set. * @return This builder for chaining. */ - public Builder setReconciling(boolean value) { - - reconciling_ = value; - bitField0_ |= 0x00000008; + public Builder setStateValue(int value) { + state_ = value; + bitField0_ |= 0x00001000; onChanged(); return this; } @@ -2314,184 +8578,169 @@ public Builder setReconciling(boolean value) { * * *
            -     * Output only. Indicates whether this workstation is currently being updated
            -     * to match its intended state.
            +     * Output only. Current state of the workstation.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * .google.cloud.workstations.v1beta.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return This builder for chaining. + * @return The state. */ - public Builder clearReconciling() { - bitField0_ = (bitField0_ & ~0x00000008); - reconciling_ = false; - onChanged(); - return this; - } - - private com.google.protobuf.MapField annotations_; - - private com.google.protobuf.MapField - internalGetAnnotations() { - if (annotations_ == null) { - return com.google.protobuf.MapField.emptyMapField( - AnnotationsDefaultEntryHolder.defaultEntry); - } - return annotations_; - } - - private com.google.protobuf.MapField - internalGetMutableAnnotations() { - if (annotations_ == null) { - annotations_ = - com.google.protobuf.MapField.newMapField(AnnotationsDefaultEntryHolder.defaultEntry); - } - if (!annotations_.isMutable()) { - annotations_ = annotations_.copy(); - } - bitField0_ |= 0x00000010; - onChanged(); - return annotations_; - } - - public int getAnnotationsCount() { - return internalGetAnnotations().getMap().size(); + @java.lang.Override + public com.google.cloud.workstations.v1beta.Workstation.State getState() { + com.google.cloud.workstations.v1beta.Workstation.State result = + com.google.cloud.workstations.v1beta.Workstation.State.forNumber(state_); + return result == null + ? com.google.cloud.workstations.v1beta.Workstation.State.UNRECOGNIZED + : result; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Current state of the workstation.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1beta.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; * + * + * @param value The state to set. + * @return This builder for chaining. */ - @java.lang.Override - public boolean containsAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder setState(com.google.cloud.workstations.v1beta.Workstation.State value) { + if (value == null) { + throw new NullPointerException(); } - return internalGetAnnotations().getMap().containsKey(key); - } - - /** Use {@link #getAnnotationsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getAnnotations() { - return getAnnotationsMap(); + bitField0_ |= 0x00001000; + state_ = value.getNumber(); + onChanged(); + return this; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Current state of the workstation.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1beta.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; * + * + * @return This builder for chaining. */ - @java.lang.Override - public java.util.Map getAnnotationsMap() { - return internalGetAnnotations().getMap(); + public Builder clearState() { + bitField0_ = (bitField0_ & ~0x00001000); + state_ = 0; + onChanged(); + return this; } + private java.lang.Object host_ = ""; + /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Host to which clients can send HTTPS traffic that will be
            +     * received by the workstation. Authorized traffic will be received to the
            +     * workstation as HTTP on port 80. To send traffic to a different port,
            +     * clients may prefix the host with the destination port in the format
            +     * `{port}-{host}`.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * + * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The host. */ - @java.lang.Override - public /* nullable */ java.lang.String getAnnotationsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public java.lang.String getHost() { + java.lang.Object ref = host_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + host_ = s; + return s; + } else { + return (java.lang.String) ref; } - java.util.Map map = internalGetAnnotations().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Host to which clients can send HTTPS traffic that will be
            +     * received by the workstation. Authorized traffic will be received to the
            +     * workstation as HTTP on port 80. To send traffic to a different port,
            +     * clients may prefix the host with the destination port in the format
            +     * `{port}-{host}`.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * + * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for host. */ - @java.lang.Override - public java.lang.String getAnnotationsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetAnnotations().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + public com.google.protobuf.ByteString getHostBytes() { + java.lang.Object ref = host_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + host_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - return map.get(key); - } - - public Builder clearAnnotations() { - bitField0_ = (bitField0_ & ~0x00000010); - internalGetMutableAnnotations().getMutableMap().clear(); - return this; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Host to which clients can send HTTPS traffic that will be
            +     * received by the workstation. Authorized traffic will be received to the
            +     * workstation as HTTP on port 80. To send traffic to a different port,
            +     * clients may prefix the host with the destination port in the format
            +     * `{port}-{host}`.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * + * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The host to set. + * @return This builder for chaining. */ - public Builder removeAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder setHost(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - internalGetMutableAnnotations().getMutableMap().remove(key); + host_ = value; + bitField0_ |= 0x00002000; + onChanged(); return this; } - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableAnnotations() { - bitField0_ |= 0x00000010; - return internalGetMutableAnnotations().getMutableMap(); - } - /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Host to which clients can send HTTPS traffic that will be
            +     * received by the workstation. Authorized traffic will be received to the
            +     * workstation as HTTP on port 80. To send traffic to a different port,
            +     * clients may prefix the host with the destination port in the format
            +     * `{port}-{host}`.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * + * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public Builder putAnnotations(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); - } - if (value == null) { - throw new NullPointerException("map value"); - } - internalGetMutableAnnotations().getMutableMap().put(key, value); - bitField0_ |= 0x00000010; + public Builder clearHost() { + host_ = getDefaultInstance().getHost(); + bitField0_ = (bitField0_ & ~0x00002000); + onChanged(); return this; } @@ -2499,109 +8748,114 @@ public Builder putAnnotations(java.lang.String key, java.lang.String value) { * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Host to which clients can send HTTPS traffic that will be
            +     * received by the workstation. Authorized traffic will be received to the
            +     * workstation as HTTP on port 80. To send traffic to a different port,
            +     * clients may prefix the host with the destination port in the format
            +     * `{port}-{host}`.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * + * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for host to set. + * @return This builder for chaining. */ - public Builder putAllAnnotations(java.util.Map values) { - internalGetMutableAnnotations().getMutableMap().putAll(values); - bitField0_ |= 0x00000010; + public Builder setHostBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + host_ = value; + bitField0_ |= 0x00002000; + onChanged(); return this; } - private com.google.protobuf.MapField labels_; + private com.google.protobuf.MapField env_; - private com.google.protobuf.MapField internalGetLabels() { - if (labels_ == null) { - return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); + private com.google.protobuf.MapField internalGetEnv() { + if (env_ == null) { + return com.google.protobuf.MapField.emptyMapField(EnvDefaultEntryHolder.defaultEntry); } - return labels_; + return env_; } private com.google.protobuf.MapField - internalGetMutableLabels() { - if (labels_ == null) { - labels_ = com.google.protobuf.MapField.newMapField(LabelsDefaultEntryHolder.defaultEntry); + internalGetMutableEnv() { + if (env_ == null) { + env_ = com.google.protobuf.MapField.newMapField(EnvDefaultEntryHolder.defaultEntry); } - if (!labels_.isMutable()) { - labels_ = labels_.copy(); + if (!env_.isMutable()) { + env_ = env_.copy(); } - bitField0_ |= 0x00000020; + bitField0_ |= 0x00004000; onChanged(); - return labels_; + return env_; } - public int getLabelsCount() { - return internalGetLabels().getMap().size(); + public int getEnvCount() { + return internalGetEnv().getMap().size(); } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Environment variables passed to the workstation container's
            +     * entrypoint.
                  * 
            * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ @java.lang.Override - public boolean containsLabels(java.lang.String key) { + public boolean containsEnv(java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } - return internalGetLabels().getMap().containsKey(key); + return internalGetEnv().getMap().containsKey(key); } - /** Use {@link #getLabelsMap()} instead. */ + /** Use {@link #getEnvMap()} instead. */ @java.lang.Override @java.lang.Deprecated - public java.util.Map getLabels() { - return getLabelsMap(); + public java.util.Map getEnv() { + return getEnvMap(); } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Environment variables passed to the workstation container's
            +     * entrypoint.
                  * 
            * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ @java.lang.Override - public java.util.Map getLabelsMap() { - return internalGetLabels().getMap(); + public java.util.Map getEnvMap() { + return internalGetEnv().getMap(); } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Environment variables passed to the workstation container's
            +     * entrypoint.
                  * 
            * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ @java.lang.Override - public /* nullable */ java.lang.String getLabelsOrDefault( + public /* nullable */ java.lang.String getEnvOrDefault( java.lang.String key, /* nullable */ java.lang.String defaultValue) { if (key == null) { throw new NullPointerException("map key"); } - java.util.Map map = internalGetLabels().getMap(); + java.util.Map map = internalGetEnv().getMap(); return map.containsKey(key) ? map.get(key) : defaultValue; } @@ -2609,29 +8863,27 @@ public java.util.Map getLabelsMap() { * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Environment variables passed to the workstation container's
            +     * entrypoint.
                  * 
            * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ @java.lang.Override - public java.lang.String getLabelsOrThrow(java.lang.String key) { + public java.lang.String getEnvOrThrow(java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } - java.util.Map map = internalGetLabels().getMap(); + java.util.Map map = internalGetEnv().getMap(); if (!map.containsKey(key)) { throw new java.lang.IllegalArgumentException(); } return map.get(key); } - public Builder clearLabels() { - bitField0_ = (bitField0_ & ~0x00000020); - internalGetMutableLabels().getMutableMap().clear(); + public Builder clearEnv() { + bitField0_ = (bitField0_ & ~0x00004000); + internalGetMutableEnv().getMutableMap().clear(); return this; } @@ -2639,50 +8891,46 @@ public Builder clearLabels() { * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Environment variables passed to the workstation container's
            +     * entrypoint.
                  * 
            * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ - public Builder removeLabels(java.lang.String key) { + public Builder removeEnv(java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } - internalGetMutableLabels().getMutableMap().remove(key); + internalGetMutableEnv().getMutableMap().remove(key); return this; } /** Use alternate mutation accessors instead. */ @java.lang.Deprecated - public java.util.Map getMutableLabels() { - bitField0_ |= 0x00000020; - return internalGetMutableLabels().getMutableMap(); + public java.util.Map getMutableEnv() { + bitField0_ |= 0x00004000; + return internalGetMutableEnv().getMutableMap(); } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Environment variables passed to the workstation container's
            +     * entrypoint.
                  * 
            * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ - public Builder putLabels(java.lang.String key, java.lang.String value) { + public Builder putEnv(java.lang.String key, java.lang.String value) { if (key == null) { throw new NullPointerException("map key"); } if (value == null) { throw new NullPointerException("map value"); } - internalGetMutableLabels().getMutableMap().put(key, value); - bitField0_ |= 0x00000020; + internalGetMutableEnv().getMutableMap().put(key, value); + bitField0_ |= 0x00004000; return this; } @@ -2690,64 +8938,69 @@ public Builder putLabels(java.lang.String key, java.lang.String value) { * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Environment variables passed to the workstation container's
            +     * entrypoint.
                  * 
            * - * map<string, string> labels = 13 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ - public Builder putAllLabels(java.util.Map values) { - internalGetMutableLabels().getMutableMap().putAll(values); - bitField0_ |= 0x00000020; + public Builder putAllEnv(java.util.Map values) { + internalGetMutableEnv().getMutableMap().putAll(values); + bitField0_ |= 0x00004000; return this; } - private com.google.protobuf.Timestamp createTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - createTimeBuilder_; + private java.lang.Object kmsKey_ = ""; /** * * *
            -     * Output only. Time when this workstation was created.
            +     * Output only. The name of the Google Cloud KMS encryption key used to
            +     * encrypt this workstation. The KMS key can only be configured in the
            +     * WorkstationConfig. The expected format is
            +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the createTime field is set. + * @return The kmsKey. */ - public boolean hasCreateTime() { - return ((bitField0_ & 0x00000040) != 0); + public java.lang.String getKmsKey() { + java.lang.Object ref = kmsKey_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + kmsKey_ = s; + return s; + } else { + return (java.lang.String) ref; + } } /** * * *
            -     * Output only. Time when this workstation was created.
            +     * Output only. The name of the Google Cloud KMS encryption key used to
            +     * encrypt this workstation. The KMS key can only be configured in the
            +     * WorkstationConfig. The expected format is
            +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The createTime. + * @return The bytes for kmsKey. */ - public com.google.protobuf.Timestamp getCreateTime() { - if (createTimeBuilder_ == null) { - return createTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : createTime_; + public com.google.protobuf.ByteString getKmsKeyBytes() { + java.lang.Object ref = kmsKey_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKey_ = b; + return b; } else { - return createTimeBuilder_.getMessage(); + return (com.google.protobuf.ByteString) ref; } } @@ -2755,75 +9008,178 @@ public com.google.protobuf.Timestamp getCreateTime() { * * *
            -     * Output only. Time when this workstation was created.
            +     * Output only. The name of the Google Cloud KMS encryption key used to
            +     * encrypt this workstation. The KMS key can only be configured in the
            +     * WorkstationConfig. The expected format is
            +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
            +     * 
            + * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The kmsKey to set. + * @return This builder for chaining. + */ + public Builder setKmsKey(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + kmsKey_ = value; + bitField0_ |= 0x00008000; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. The name of the Google Cloud KMS encryption key used to
            +     * encrypt this workstation. The KMS key can only be configured in the
            +     * WorkstationConfig. The expected format is
            +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
            +     * 
            + * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearKmsKey() { + kmsKey_ = getDefaultInstance().getKmsKey(); + bitField0_ = (bitField0_ & ~0x00008000); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. The name of the Google Cloud KMS encryption key used to
            +     * encrypt this workstation. The KMS key can only be configured in the
            +     * WorkstationConfig. The expected format is
            +     * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
            +     * 
            + * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for kmsKey to set. + * @return This builder for chaining. + */ + public Builder setKmsKeyBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + kmsKey_ = value; + bitField0_ |= 0x00008000; + onChanged(); + return this; + } + + private java.util.List + boostConfigs_ = java.util.Collections.emptyList(); + + private void ensureBoostConfigsIsMutable() { + if (!((bitField0_ & 0x00010000) != 0)) { + boostConfigs_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig>( + boostConfigs_); + bitField0_ |= 0x00010000; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig, + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.Builder, + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfigOrBuilder> + boostConfigsBuilder_; + + /** + * + * + *
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder setCreateTime(com.google.protobuf.Timestamp value) { - if (createTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - createTime_ = value; + public java.util.List + getBoostConfigsList() { + if (boostConfigsBuilder_ == null) { + return java.util.Collections.unmodifiableList(boostConfigs_); } else { - createTimeBuilder_.setMessage(value); + return boostConfigsBuilder_.getMessageList(); } - bitField0_ |= 0x00000040; - onChanged(); - return this; } /** * * *
            -     * Output only. Time when this workstation was created.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (createTimeBuilder_ == null) { - createTime_ = builderForValue.build(); + public int getBoostConfigsCount() { + if (boostConfigsBuilder_ == null) { + return boostConfigs_.size(); } else { - createTimeBuilder_.setMessage(builderForValue.build()); + return boostConfigsBuilder_.getCount(); } - bitField0_ |= 0x00000040; - onChanged(); - return this; } /** * * *
            -     * Output only. Time when this workstation was created.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { - if (createTimeBuilder_ == null) { - if (((bitField0_ & 0x00000040) != 0) - && createTime_ != null - && createTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getCreateTimeBuilder().mergeFrom(value); - } else { - createTime_ = value; - } + public com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig getBoostConfigs( + int index) { + if (boostConfigsBuilder_ == null) { + return boostConfigs_.get(index); } else { - createTimeBuilder_.mergeFrom(value); + return boostConfigsBuilder_.getMessage(index); } - if (createTime_ != null) { - bitField0_ |= 0x00000040; + } + + /** + * + * + *
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
            +     * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setBoostConfigs( + int index, com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig value) { + if (boostConfigsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureBoostConfigsIsMutable(); + boostConfigs_.set(index, value); onChanged(); + } else { + boostConfigsBuilder_.setMessage(index, value); } return this; } @@ -2832,21 +9188,25 @@ public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation was created.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder clearCreateTime() { - bitField0_ = (bitField0_ & ~0x00000040); - createTime_ = null; - if (createTimeBuilder_ != null) { - createTimeBuilder_.dispose(); - createTimeBuilder_ = null; + public Builder setBoostConfigs( + int index, + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.Builder + builderForValue) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.set(index, builderForValue.build()); + onChanged(); + } else { + boostConfigsBuilder_.setMessage(index, builderForValue.build()); } - onChanged(); return this; } @@ -2854,137 +9214,153 @@ public Builder clearCreateTime() { * * *
            -     * Output only. Time when this workstation was created.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { - bitField0_ |= 0x00000040; - onChanged(); - return internalGetCreateTimeFieldBuilder().getBuilder(); + public Builder addBoostConfigs( + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig value) { + if (boostConfigsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureBoostConfigsIsMutable(); + boostConfigs_.add(value); + onChanged(); + } else { + boostConfigsBuilder_.addMessage(value); + } + return this; } /** * * *
            -     * Output only. Time when this workstation was created.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { - if (createTimeBuilder_ != null) { - return createTimeBuilder_.getMessageOrBuilder(); + public Builder addBoostConfigs( + int index, com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig value) { + if (boostConfigsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureBoostConfigsIsMutable(); + boostConfigs_.add(index, value); + onChanged(); } else { - return createTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : createTime_; + boostConfigsBuilder_.addMessage(index, value); } + return this; } /** * * *
            -     * Output only. Time when this workstation was created.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetCreateTimeFieldBuilder() { - if (createTimeBuilder_ == null) { - createTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getCreateTime(), getParentForChildren(), isClean()); - createTime_ = null; + public Builder addBoostConfigs( + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.Builder + builderForValue) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.add(builderForValue.build()); + onChanged(); + } else { + boostConfigsBuilder_.addMessage(builderForValue.build()); } - return createTimeBuilder_; - } - - private com.google.protobuf.Timestamp updateTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - updateTimeBuilder_; + return this; + } /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @return Whether the updateTime field is set. */ - public boolean hasUpdateTime() { - return ((bitField0_ & 0x00000080) != 0); + public Builder addBoostConfigs( + int index, + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.Builder + builderForValue) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.add(index, builderForValue.build()); + onChanged(); + } else { + boostConfigsBuilder_.addMessage(index, builderForValue.build()); + } + return this; } /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @return The updateTime. */ - public com.google.protobuf.Timestamp getUpdateTime() { - if (updateTimeBuilder_ == null) { - return updateTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : updateTime_; + public Builder addAllBoostConfigs( + java.lang.Iterable< + ? extends com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig> + values) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, boostConfigs_); + onChanged(); } else { - return updateTimeBuilder_.getMessage(); + boostConfigsBuilder_.addAllMessages(values); } + return this; } /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder setUpdateTime(com.google.protobuf.Timestamp value) { - if (updateTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - updateTime_ = value; + public Builder clearBoostConfigs() { + if (boostConfigsBuilder_ == null) { + boostConfigs_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00010000); + onChanged(); } else { - updateTimeBuilder_.setMessage(value); + boostConfigsBuilder_.clear(); } - bitField0_ |= 0x00000080; - onChanged(); return this; } @@ -2992,21 +9368,22 @@ public Builder setUpdateTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (updateTimeBuilder_ == null) { - updateTime_ = builderForValue.build(); + public Builder removeBoostConfigs(int index) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.remove(index); + onChanged(); } else { - updateTimeBuilder_.setMessage(builderForValue.build()); + boostConfigsBuilder_.remove(index); } - bitField0_ |= 0x00000080; - onChanged(); return this; } @@ -3014,164 +9391,186 @@ public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForVal * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { - if (updateTimeBuilder_ == null) { - if (((bitField0_ & 0x00000080) != 0) - && updateTime_ != null - && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getUpdateTimeBuilder().mergeFrom(value); - } else { - updateTime_ = value; - } + public com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.Builder + getBoostConfigsBuilder(int index) { + return internalGetBoostConfigsFieldBuilder().getBuilder(index); + } + + /** + * + * + *
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
            +     * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfigOrBuilder + getBoostConfigsOrBuilder(int index) { + if (boostConfigsBuilder_ == null) { + return boostConfigs_.get(index); } else { - updateTimeBuilder_.mergeFrom(value); - } - if (updateTime_ != null) { - bitField0_ |= 0x00000080; - onChanged(); + return boostConfigsBuilder_.getMessageOrBuilder(index); } - return this; } /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder clearUpdateTime() { - bitField0_ = (bitField0_ & ~0x00000080); - updateTime_ = null; - if (updateTimeBuilder_ != null) { - updateTimeBuilder_.dispose(); - updateTimeBuilder_ = null; + public java.util.List< + ? extends + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfigOrBuilder> + getBoostConfigsOrBuilderList() { + if (boostConfigsBuilder_ != null) { + return boostConfigsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(boostConfigs_); } - onChanged(); - return this; } /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { - bitField0_ |= 0x00000080; - onChanged(); - return internalGetUpdateTimeFieldBuilder().getBuilder(); + public com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.Builder + addBoostConfigsBuilder() { + return internalGetBoostConfigsFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig + .getDefaultInstance()); } /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { - if (updateTimeBuilder_ != null) { - return updateTimeBuilder_.getMessageOrBuilder(); - } else { - return updateTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : updateTime_; - } + public com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.Builder + addBoostConfigsBuilder(int index) { + return internalGetBoostConfigsFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig + .getDefaultInstance()); } /** * * *
            -     * Output only. Time when this workstation was most recently updated.
            +     * Output only. List of available boost configuration IDs that this
            +     * workstation can be boosted up to.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetUpdateTimeFieldBuilder() { - if (updateTimeBuilder_ == null) { - updateTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getUpdateTime(), getParentForChildren(), isClean()); - updateTime_ = null; + public java.util.List< + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.Builder> + getBoostConfigsBuilderList() { + return internalGetBoostConfigsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig, + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.Builder, + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfigOrBuilder> + internalGetBoostConfigsFieldBuilder() { + if (boostConfigsBuilder_ == null) { + boostConfigsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig, + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig.Builder, + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfigOrBuilder>( + boostConfigs_, ((bitField0_ & 0x00010000) != 0), getParentForChildren(), isClean()); + boostConfigs_ = null; } - return updateTimeBuilder_; + return boostConfigsBuilder_; } - private com.google.protobuf.Timestamp startTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - startTimeBuilder_; + private java.lang.Object sourceWorkstation_ = ""; /** * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Optional. The source workstation from which this workstation's persistent
            +     * directories were cloned on creation.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; * - * @return Whether the startTime field is set. + * @return The sourceWorkstation. */ - public boolean hasStartTime() { - return ((bitField0_ & 0x00000100) != 0); + public java.lang.String getSourceWorkstation() { + java.lang.Object ref = sourceWorkstation_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceWorkstation_ = s; + return s; + } else { + return (java.lang.String) ref; + } } /** * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Optional. The source workstation from which this workstation's persistent
            +     * directories were cloned on creation.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The startTime. + * @return The bytes for sourceWorkstation. */ - public com.google.protobuf.Timestamp getStartTime() { - if (startTimeBuilder_ == null) { - return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; + public com.google.protobuf.ByteString getSourceWorkstationBytes() { + java.lang.Object ref = sourceWorkstation_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceWorkstation_ = b; + return b; } else { - return startTimeBuilder_.getMessage(); + return (com.google.protobuf.ByteString) ref; } } @@ -3179,24 +9578,21 @@ public com.google.protobuf.Timestamp getStartTime() { * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Optional. The source workstation from which this workstation's persistent
            +     * directories were cloned on creation.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sourceWorkstation to set. + * @return This builder for chaining. */ - public Builder setStartTime(com.google.protobuf.Timestamp value) { - if (startTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - startTime_ = value; - } else { - startTimeBuilder_.setMessage(value); + public Builder setSourceWorkstation(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - bitField0_ |= 0x00000100; + sourceWorkstation_ = value; + bitField0_ |= 0x00020000; onChanged(); return this; } @@ -3205,21 +9601,17 @@ public Builder setStartTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Optional. The source workstation from which this workstation's persistent
            +     * directories were cloned on creation.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. */ - public Builder setStartTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (startTimeBuilder_ == null) { - startTime_ = builderForValue.build(); - } else { - startTimeBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000100; + public Builder clearSourceWorkstation() { + sourceWorkstation_ = getDefaultInstance().getSourceWorkstation(); + bitField0_ = (bitField0_ & ~0x00020000); onChanged(); return this; } @@ -3228,52 +9620,60 @@ public Builder setStartTime(com.google.protobuf.Timestamp.Builder builderForValu * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Optional. The source workstation from which this workstation's persistent
            +     * directories were cloned on creation.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for sourceWorkstation to set. + * @return This builder for chaining. */ - public Builder mergeStartTime(com.google.protobuf.Timestamp value) { - if (startTimeBuilder_ == null) { - if (((bitField0_ & 0x00000100) != 0) - && startTime_ != null - && startTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getStartTimeBuilder().mergeFrom(value); - } else { - startTime_ = value; - } - } else { - startTimeBuilder_.mergeFrom(value); - } - if (startTime_ != null) { - bitField0_ |= 0x00000100; - onChanged(); + public Builder setSourceWorkstationBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } + checkByteStringIsUtf8(value); + sourceWorkstation_ = value; + bitField0_ |= 0x00020000; + onChanged(); return this; } + private boolean satisfiesPzs_; + /** * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Output only. Reserved for future use.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * bool satisfies_pzs = 18 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzs. */ - public Builder clearStartTime() { - bitField0_ = (bitField0_ & ~0x00000100); - startTime_ = null; - if (startTimeBuilder_ != null) { - startTimeBuilder_.dispose(); - startTimeBuilder_ = null; - } + @java.lang.Override + public boolean getSatisfiesPzs() { + return satisfiesPzs_; + } + + /** + * + * + *
            +     * Output only. Reserved for future use.
            +     * 
            + * + * bool satisfies_pzs = 18 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The satisfiesPzs to set. + * @return This builder for chaining. + */ + public Builder setSatisfiesPzs(boolean value) { + + satisfiesPzs_ = value; + bitField0_ |= 0x00040000; onChanged(); return this; } @@ -3282,113 +9682,122 @@ public Builder clearStartTime() { * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Output only. Reserved for future use.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * bool satisfies_pzs = 18 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearSatisfiesPzs() { + bitField0_ = (bitField0_ & ~0x00040000); + satisfiesPzs_ = false; + onChanged(); + return this; + } + + private boolean satisfiesPzi_; + + /** + * + * + *
            +     * Output only. Reserved for future use.
            +     * 
            + * + * bool satisfies_pzi = 19 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzi. */ - public com.google.protobuf.Timestamp.Builder getStartTimeBuilder() { - bitField0_ |= 0x00000100; - onChanged(); - return internalGetStartTimeFieldBuilder().getBuilder(); + @java.lang.Override + public boolean getSatisfiesPzi() { + return satisfiesPzi_; } /** * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Output only. Reserved for future use.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * bool satisfies_pzi = 19 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The satisfiesPzi to set. + * @return This builder for chaining. */ - public com.google.protobuf.TimestampOrBuilder getStartTimeOrBuilder() { - if (startTimeBuilder_ != null) { - return startTimeBuilder_.getMessageOrBuilder(); - } else { - return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_; - } + public Builder setSatisfiesPzi(boolean value) { + + satisfiesPzi_ = value; + bitField0_ |= 0x00080000; + onChanged(); + return this; } /** * * *
            -     * Output only. Time when this workstation was most recently successfully
            -     * started, regardless of the workstation's initial state.
            +     * Output only. Reserved for future use.
                  * 
            * - * - * .google.protobuf.Timestamp start_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * bool satisfies_pzi = 19 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetStartTimeFieldBuilder() { - if (startTimeBuilder_ == null) { - startTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getStartTime(), getParentForChildren(), isClean()); - startTime_ = null; - } - return startTimeBuilder_; + public Builder clearSatisfiesPzi() { + bitField0_ = (bitField0_ & ~0x00080000); + satisfiesPzi_ = false; + onChanged(); + return this; } - private com.google.protobuf.Timestamp deleteTime_; + private com.google.cloud.workstations.v1beta.Workstation.RuntimeHost runtimeHost_; private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - deleteTimeBuilder_; + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.Builder, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHostOrBuilder> + runtimeHostBuilder_; /** * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; * * - * @return Whether the deleteTime field is set. + * @return Whether the runtimeHost field is set. */ - public boolean hasDeleteTime() { - return ((bitField0_ & 0x00000200) != 0); + public boolean hasRuntimeHost() { + return ((bitField0_ & 0x00100000) != 0); } /** * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; * * - * @return The deleteTime. + * @return The runtimeHost. */ - public com.google.protobuf.Timestamp getDeleteTime() { - if (deleteTimeBuilder_ == null) { - return deleteTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : deleteTime_; + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost getRuntimeHost() { + if (runtimeHostBuilder_ == null) { + return runtimeHost_ == null + ? com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.getDefaultInstance() + : runtimeHost_; } else { - return deleteTimeBuilder_.getMessage(); + return runtimeHostBuilder_.getMessage(); } } @@ -3396,23 +9805,25 @@ public com.google.protobuf.Timestamp getDeleteTime() { * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder setDeleteTime(com.google.protobuf.Timestamp value) { - if (deleteTimeBuilder_ == null) { + public Builder setRuntimeHost( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost value) { + if (runtimeHostBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - deleteTime_ = value; + runtimeHost_ = value; } else { - deleteTimeBuilder_.setMessage(value); + runtimeHostBuilder_.setMessage(value); } - bitField0_ |= 0x00000200; + bitField0_ |= 0x00100000; onChanged(); return this; } @@ -3421,20 +9832,22 @@ public Builder setDeleteTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (deleteTimeBuilder_ == null) { - deleteTime_ = builderForValue.build(); + public Builder setRuntimeHost( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.Builder builderForValue) { + if (runtimeHostBuilder_ == null) { + runtimeHost_ = builderForValue.build(); } else { - deleteTimeBuilder_.setMessage(builderForValue.build()); + runtimeHostBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00000200; + bitField0_ |= 0x00100000; onChanged(); return this; } @@ -3443,27 +9856,31 @@ public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForVal * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { - if (deleteTimeBuilder_ == null) { - if (((bitField0_ & 0x00000200) != 0) - && deleteTime_ != null - && deleteTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getDeleteTimeBuilder().mergeFrom(value); + public Builder mergeRuntimeHost( + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost value) { + if (runtimeHostBuilder_ == null) { + if (((bitField0_ & 0x00100000) != 0) + && runtimeHost_ != null + && runtimeHost_ + != com.google.cloud.workstations.v1beta.Workstation.RuntimeHost + .getDefaultInstance()) { + getRuntimeHostBuilder().mergeFrom(value); } else { - deleteTime_ = value; + runtimeHost_ = value; } } else { - deleteTimeBuilder_.mergeFrom(value); + runtimeHostBuilder_.mergeFrom(value); } - if (deleteTime_ != null) { - bitField0_ |= 0x00000200; + if (runtimeHost_ != null) { + bitField0_ |= 0x00100000; onChanged(); } return this; @@ -3473,19 +9890,20 @@ public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder clearDeleteTime() { - bitField0_ = (bitField0_ & ~0x00000200); - deleteTime_ = null; - if (deleteTimeBuilder_ != null) { - deleteTimeBuilder_.dispose(); - deleteTimeBuilder_ = null; + public Builder clearRuntimeHost() { + bitField0_ = (bitField0_ & ~0x00100000); + runtimeHost_ = null; + if (runtimeHostBuilder_ != null) { + runtimeHostBuilder_.dispose(); + runtimeHostBuilder_ = null; } onChanged(); return this; @@ -3495,37 +9913,41 @@ public Builder clearDeleteTime() { * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.protobuf.Timestamp.Builder getDeleteTimeBuilder() { - bitField0_ |= 0x00000200; + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.Builder + getRuntimeHostBuilder() { + bitField0_ |= 0x00100000; onChanged(); - return internalGetDeleteTimeFieldBuilder().getBuilder(); + return internalGetRuntimeHostFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { - if (deleteTimeBuilder_ != null) { - return deleteTimeBuilder_.getMessageOrBuilder(); + public com.google.cloud.workstations.v1beta.Workstation.RuntimeHostOrBuilder + getRuntimeHostOrBuilder() { + if (runtimeHostBuilder_ != null) { + return runtimeHostBuilder_.getMessageOrBuilder(); } else { - return deleteTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : deleteTime_; + return runtimeHost_ == null + ? com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.getDefaultInstance() + : runtimeHost_; } } @@ -3533,102 +9955,71 @@ public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { * * *
            -     * Output only. Time when this workstation was soft-deleted.
            +     * Optional. Output only. Runtime host for the workstation when in
            +     * STATE_RUNNING.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; * */ private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetDeleteTimeFieldBuilder() { - if (deleteTimeBuilder_ == null) { - deleteTimeBuilder_ = + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.Builder, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHostOrBuilder> + internalGetRuntimeHostFieldBuilder() { + if (runtimeHostBuilder_ == null) { + runtimeHostBuilder_ = new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getDeleteTime(), getParentForChildren(), isClean()); - deleteTime_ = null; + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost.Builder, + com.google.cloud.workstations.v1beta.Workstation.RuntimeHostOrBuilder>( + getRuntimeHost(), getParentForChildren(), isClean()); + runtimeHost_ = null; } - return deleteTimeBuilder_; + return runtimeHostBuilder_; } - private java.lang.Object etag_ = ""; - - /** - * - * - *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            -     * 
            - * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The etag. - */ - public java.lang.String getEtag() { - java.lang.Object ref = etag_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - etag_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } + private boolean degraded_; /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Output only. Whether this workstation is in degraded mode, in which case it
            +     * may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1beta.Workstation.conditions] field
            +     * contains detailed information about the status of the workstation.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * bool degraded = 23 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The bytes for etag. + * @return The degraded. */ - public com.google.protobuf.ByteString getEtagBytes() { - java.lang.Object ref = etag_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - etag_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + @java.lang.Override + public boolean getDegraded() { + return degraded_; } /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Output only. Whether this workstation is in degraded mode, in which case it
            +     * may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1beta.Workstation.conditions] field
            +     * contains detailed information about the status of the workstation.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * bool degraded = 23 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The etag to set. + * @param value The degraded to set. * @return This builder for chaining. */ - public Builder setEtag(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - etag_ = value; - bitField0_ |= 0x00000400; + public Builder setDegraded(boolean value) { + + degraded_ = value; + bitField0_ |= 0x00200000; onChanged(); return this; } @@ -3637,131 +10028,137 @@ public Builder setEtag(java.lang.String value) { * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Output only. Whether this workstation is in degraded mode, in which case it
            +     * may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1beta.Workstation.conditions] field
            +     * contains detailed information about the status of the workstation.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * bool degraded = 23 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ - public Builder clearEtag() { - etag_ = getDefaultInstance().getEtag(); - bitField0_ = (bitField0_ & ~0x00000400); + public Builder clearDegraded() { + bitField0_ = (bitField0_ & ~0x00200000); + degraded_ = false; onChanged(); return this; } + private java.util.List conditions_ = java.util.Collections.emptyList(); + + private void ensureConditionsIsMutable() { + if (!((bitField0_ & 0x00400000) != 0)) { + conditions_ = new java.util.ArrayList(conditions_); + bitField0_ |= 0x00400000; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> + conditionsBuilder_; + /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for etag to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setEtagBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public java.util.List getConditionsList() { + if (conditionsBuilder_ == null) { + return java.util.Collections.unmodifiableList(conditions_); + } else { + return conditionsBuilder_.getMessageList(); } - checkByteStringIsUtf8(value); - etag_ = value; - bitField0_ |= 0x00000400; - onChanged(); - return this; } - private int state_ = 0; - /** * * *
            -     * Output only. Current state of the workstation.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * * - * .google.cloud.workstations.v1beta.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @return The enum numeric value on the wire for state. */ - @java.lang.Override - public int getStateValue() { - return state_; + public int getConditionsCount() { + if (conditionsBuilder_ == null) { + return conditions_.size(); + } else { + return conditionsBuilder_.getCount(); + } } /** * * *
            -     * Output only. Current state of the workstation.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * * - * .google.cloud.workstations.v1beta.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @param value The enum numeric value on the wire for state to set. - * @return This builder for chaining. */ - public Builder setStateValue(int value) { - state_ = value; - bitField0_ |= 0x00000800; - onChanged(); - return this; + public com.google.rpc.Status getConditions(int index) { + if (conditionsBuilder_ == null) { + return conditions_.get(index); + } else { + return conditionsBuilder_.getMessage(index); + } } /** * * *
            -     * Output only. Current state of the workstation.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * * - * .google.cloud.workstations.v1beta.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @return The state. */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.Workstation.State getState() { - com.google.cloud.workstations.v1beta.Workstation.State result = - com.google.cloud.workstations.v1beta.Workstation.State.forNumber(state_); - return result == null - ? com.google.cloud.workstations.v1beta.Workstation.State.UNRECOGNIZED - : result; + public Builder setConditions(int index, com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionsIsMutable(); + conditions_.set(index, value); + onChanged(); + } else { + conditionsBuilder_.setMessage(index, value); + } + return this; } /** * * *
            -     * Output only. Current state of the workstation.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * * - * .google.cloud.workstations.v1beta.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @param value The state to set. - * @return This builder for chaining. + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + *
            */ - public Builder setState(com.google.cloud.workstations.v1beta.Workstation.State value) { - if (value == null) { - throw new NullPointerException(); + public Builder setConditions(int index, com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.set(index, builderForValue.build()); + onChanged(); + } else { + conditionsBuilder_.setMessage(index, builderForValue.build()); } - bitField0_ |= 0x00000800; - state_ = value.getNumber(); - onChanged(); return this; } @@ -3769,101 +10166,93 @@ public Builder setState(com.google.cloud.workstations.v1beta.Workstation.State v * * *
            -     * Output only. Current state of the workstation.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * * - * .google.cloud.workstations.v1beta.Workstation.State state = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @return This builder for chaining. */ - public Builder clearState() { - bitField0_ = (bitField0_ & ~0x00000800); - state_ = 0; - onChanged(); + public Builder addConditions(com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionsIsMutable(); + conditions_.add(value); + onChanged(); + } else { + conditionsBuilder_.addMessage(value); + } return this; } - private java.lang.Object host_ = ""; - /** * * *
            -     * Output only. Host to which clients can send HTTPS traffic that will be
            -     * received by the workstation. Authorized traffic will be received to the
            -     * workstation as HTTP on port 80. To send traffic to a different port,
            -     * clients may prefix the host with the destination port in the format
            -     * `{port}-{host}`.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * - * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The host. + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getHost() { - java.lang.Object ref = host_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - host_ = s; - return s; + public Builder addConditions(int index, com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionsIsMutable(); + conditions_.add(index, value); + onChanged(); } else { - return (java.lang.String) ref; + conditionsBuilder_.addMessage(index, value); } + return this; } /** * * *
            -     * Output only. Host to which clients can send HTTPS traffic that will be
            -     * received by the workstation. Authorized traffic will be received to the
            -     * workstation as HTTP on port 80. To send traffic to a different port,
            -     * clients may prefix the host with the destination port in the format
            -     * `{port}-{host}`.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * - * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for host. + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getHostBytes() { - java.lang.Object ref = host_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - host_ = b; - return b; + public Builder addConditions(com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(builderForValue.build()); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + conditionsBuilder_.addMessage(builderForValue.build()); } + return this; } /** * * *
            -     * Output only. Host to which clients can send HTTPS traffic that will be
            -     * received by the workstation. Authorized traffic will be received to the
            -     * workstation as HTTP on port 80. To send traffic to a different port,
            -     * clients may prefix the host with the destination port in the format
            -     * `{port}-{host}`.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * - * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The host to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setHost(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder addConditions(int index, com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(index, builderForValue.build()); + onChanged(); + } else { + conditionsBuilder_.addMessage(index, builderForValue.build()); } - host_ = value; - bitField0_ |= 0x00001000; - onChanged(); return this; } @@ -3871,21 +10260,21 @@ public Builder setHost(java.lang.String value) { * * *
            -     * Output only. Host to which clients can send HTTPS traffic that will be
            -     * received by the workstation. Authorized traffic will be received to the
            -     * workstation as HTTP on port 80. To send traffic to a different port,
            -     * clients may prefix the host with the destination port in the format
            -     * `{port}-{host}`.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * - * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearHost() { - host_ = getDefaultInstance().getHost(); - bitField0_ = (bitField0_ & ~0x00001000); - onChanged(); + public Builder addAllConditions(java.lang.Iterable values) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, conditions_); + onChanged(); + } else { + conditionsBuilder_.addAllMessages(values); + } return this; } @@ -3893,206 +10282,159 @@ public Builder clearHost() { * * *
            -     * Output only. Host to which clients can send HTTPS traffic that will be
            -     * received by the workstation. Authorized traffic will be received to the
            -     * workstation as HTTP on port 80. To send traffic to a different port,
            -     * clients may prefix the host with the destination port in the format
            -     * `{port}-{host}`.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * - * string host = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The bytes for host to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setHostBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder clearConditions() { + if (conditionsBuilder_ == null) { + conditions_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00400000); + onChanged(); + } else { + conditionsBuilder_.clear(); } - checkByteStringIsUtf8(value); - host_ = value; - bitField0_ |= 0x00001000; - onChanged(); return this; } - private com.google.protobuf.MapField env_; - - private com.google.protobuf.MapField internalGetEnv() { - if (env_ == null) { - return com.google.protobuf.MapField.emptyMapField(EnvDefaultEntryHolder.defaultEntry); - } - return env_; - } - - private com.google.protobuf.MapField - internalGetMutableEnv() { - if (env_ == null) { - env_ = com.google.protobuf.MapField.newMapField(EnvDefaultEntryHolder.defaultEntry); - } - if (!env_.isMutable()) { - env_ = env_.copy(); - } - bitField0_ |= 0x00002000; - onChanged(); - return env_; - } - - public int getEnvCount() { - return internalGetEnv().getMap().size(); - } - /** * * *
            -     * Optional. Environment variables passed to the workstation container's
            -     * entrypoint.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * - * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public boolean containsEnv(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder removeConditions(int index) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.remove(index); + onChanged(); + } else { + conditionsBuilder_.remove(index); } - return internalGetEnv().getMap().containsKey(key); - } - - /** Use {@link #getEnvMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getEnv() { - return getEnvMap(); + return this; } /** * * *
            -     * Optional. Environment variables passed to the workstation container's
            -     * entrypoint.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * - * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public java.util.Map getEnvMap() { - return internalGetEnv().getMap(); + public com.google.rpc.Status.Builder getConditionsBuilder(int index) { + return internalGetConditionsFieldBuilder().getBuilder(index); } /** * * *
            -     * Optional. Environment variables passed to the workstation container's
            -     * entrypoint.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * - * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public /* nullable */ java.lang.String getEnvOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { + if (conditionsBuilder_ == null) { + return conditions_.get(index); + } else { + return conditionsBuilder_.getMessageOrBuilder(index); } - java.util.Map map = internalGetEnv().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; } /** * * *
            -     * Optional. Environment variables passed to the workstation container's
            -     * entrypoint.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * - * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public java.lang.String getEnvOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetEnv().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + public java.util.List getConditionsOrBuilderList() { + if (conditionsBuilder_ != null) { + return conditionsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(conditions_); } - return map.get(key); - } - - public Builder clearEnv() { - bitField0_ = (bitField0_ & ~0x00002000); - internalGetMutableEnv().getMutableMap().clear(); - return this; } /** * * *
            -     * Optional. Environment variables passed to the workstation container's
            -     * entrypoint.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * - * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder removeEnv(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - internalGetMutableEnv().getMutableMap().remove(key); - return this; - } - - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableEnv() { - bitField0_ |= 0x00002000; - return internalGetMutableEnv().getMutableMap(); + public com.google.rpc.Status.Builder addConditionsBuilder() { + return internalGetConditionsFieldBuilder() + .addBuilder(com.google.rpc.Status.getDefaultInstance()); } /** * * *
            -     * Optional. Environment variables passed to the workstation container's
            -     * entrypoint.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * - * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder putEnv(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); - } - if (value == null) { - throw new NullPointerException("map value"); - } - internalGetMutableEnv().getMutableMap().put(key, value); - bitField0_ |= 0x00002000; - return this; + public com.google.rpc.Status.Builder addConditionsBuilder(int index) { + return internalGetConditionsFieldBuilder() + .addBuilder(index, com.google.rpc.Status.getDefaultInstance()); } /** * * *
            -     * Optional. Environment variables passed to the workstation container's
            -     * entrypoint.
            +     * Output only. Status conditions describing the workstation's current state.
                  * 
            * - * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder putAllEnv(java.util.Map values) { - internalGetMutableEnv().getMutableMap().putAll(values); - bitField0_ |= 0x00002000; - return this; + public java.util.List getConditionsBuilderList() { + return internalGetConditionsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> + internalGetConditionsFieldBuilder() { + if (conditionsBuilder_ == null) { + conditionsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, + com.google.rpc.Status.Builder, + com.google.rpc.StatusOrBuilder>( + conditions_, ((bitField0_ & 0x00400000) != 0), getParentForChildren(), isClean()); + conditions_ = null; + } + return conditionsBuilder_; } // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.Workstation) diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationCluster.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationCluster.java index 74511d57214b..3bc2dcf5fcc6 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationCluster.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationCluster.java @@ -63,6 +63,8 @@ private WorkstationCluster() { subnetwork_ = ""; controlPlaneIp_ = ""; conditions_ = java.util.Collections.emptyList(); + workstationAuthorizationUrl_ = ""; + workstationLaunchUrl_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -79,6 +81,8 @@ protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldRefl return internalGetAnnotations(); case 15: return internalGetLabels(); + case 20: + return internalGetTags(); default: throw new RuntimeException("Invalid map field number: " + number); } @@ -151,7 +155,7 @@ public interface PrivateClusterConfigOrBuilder * *
                  * Output only. Service attachment URI for the workstation cluster. The
            -     * service attachemnt is created when private endpoint is enabled. To access
            +     * service attachment is created when private endpoint is enabled. To access
                  * workstations in the workstation cluster, configure access to the managed
                  * service using [Private Service
                  * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -168,7 +172,7 @@ public interface PrivateClusterConfigOrBuilder
                  *
                  * 
                  * Output only. Service attachment URI for the workstation cluster. The
            -     * service attachemnt is created when private endpoint is enabled. To access
            +     * service attachment is created when private endpoint is enabled. To access
                  * workstations in the workstation cluster, configure access to the managed
                  * service using [Private Service
                  * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -385,7 +389,7 @@ public com.google.protobuf.ByteString getClusterHostnameBytes() {
                  *
                  * 
                  * Output only. Service attachment URI for the workstation cluster. The
            -     * service attachemnt is created when private endpoint is enabled. To access
            +     * service attachment is created when private endpoint is enabled. To access
                  * workstations in the workstation cluster, configure access to the managed
                  * service using [Private Service
                  * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -413,7 +417,7 @@ public java.lang.String getServiceAttachmentUri() {
                  *
                  * 
                  * Output only. Service attachment URI for the workstation cluster. The
            -     * service attachemnt is created when private endpoint is enabled. To access
            +     * service attachment is created when private endpoint is enabled. To access
                  * workstations in the workstation cluster, configure access to the managed
                  * service using [Private Service
                  * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -1122,7 +1126,7 @@ public Builder setClusterHostnameBytes(com.google.protobuf.ByteString value) {
                    *
                    * 
                    * Output only. Service attachment URI for the workstation cluster. The
            -       * service attachemnt is created when private endpoint is enabled. To access
            +       * service attachment is created when private endpoint is enabled. To access
                    * workstations in the workstation cluster, configure access to the managed
                    * service using [Private Service
                    * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -1150,7 +1154,7 @@ public java.lang.String getServiceAttachmentUri() {
                    *
                    * 
                    * Output only. Service attachment URI for the workstation cluster. The
            -       * service attachemnt is created when private endpoint is enabled. To access
            +       * service attachment is created when private endpoint is enabled. To access
                    * workstations in the workstation cluster, configure access to the managed
                    * service using [Private Service
                    * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -1178,7 +1182,7 @@ public com.google.protobuf.ByteString getServiceAttachmentUriBytes() {
                    *
                    * 
                    * Output only. Service attachment URI for the workstation cluster. The
            -       * service attachemnt is created when private endpoint is enabled. To access
            +       * service attachment is created when private endpoint is enabled. To access
                    * workstations in the workstation cluster, configure access to the managed
                    * service using [Private Service
                    * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -1205,7 +1209,7 @@ public Builder setServiceAttachmentUri(java.lang.String value) {
                    *
                    * 
                    * Output only. Service attachment URI for the workstation cluster. The
            -       * service attachemnt is created when private endpoint is enabled. To access
            +       * service attachment is created when private endpoint is enabled. To access
                    * workstations in the workstation cluster, configure access to the managed
                    * service using [Private Service
                    * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -1228,7 +1232,7 @@ public Builder clearServiceAttachmentUri() {
                    *
                    * 
                    * Output only. Service attachment URI for the workstation cluster. The
            -       * service attachemnt is created when private endpoint is enabled. To access
            +       * service attachment is created when private endpoint is enabled. To access
                    * workstations in the workstation cluster, configure access to the managed
                    * service using [Private Service
                    * Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).
            @@ -1518,1841 +1522,4388 @@ public com.google.protobuf.Parser getParserForType() {
                 }
               }
             
            -  private int bitField0_;
            -  public static final int NAME_FIELD_NUMBER = 1;
            +  public interface DomainConfigOrBuilder
            +      extends
            +      // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig)
            +      com.google.protobuf.MessageOrBuilder {
             
            -  @SuppressWarnings("serial")
            -  private volatile java.lang.Object name_ = "";
            +    /**
            +     *
            +     *
            +     * 
            +     * Immutable. Domain used by Workstations for HTTP ingress.
            +     * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The domain. + */ + java.lang.String getDomain(); - /** - * - * - *
            -   * Full name of this workstation cluster.
            -   * 
            - * - * string name = 1; - * - * @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; - } + /** + * + * + *
            +     * Immutable. Domain used by Workstations for HTTP ingress.
            +     * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for domain. + */ + com.google.protobuf.ByteString getDomainBytes(); } /** * * *
            -   * Full name of this workstation cluster.
            +   * Configuration options for a custom domain.
                * 
            * - * string name = 1; - * - * @return The bytes for name. + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig} */ - @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 class DomainConfig extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig) + DomainConfigOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "DomainConfig"); } - } - public static final int DISPLAY_NAME_FIELD_NUMBER = 2; + // Use DomainConfig.newBuilder() to construct. + private DomainConfig(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } - @SuppressWarnings("serial") - private volatile java.lang.Object displayName_ = ""; + private DomainConfig() { + domain_ = ""; + } - /** - * - * - *
            -   * Optional. Human-readable name for this workstation cluster.
            -   * 
            - * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The displayName. - */ - @java.lang.Override - public java.lang.String getDisplayName() { - java.lang.Object ref = displayName_; - 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(); - displayName_ = s; - return s; + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_DomainConfig_descriptor; } - } - /** - * - * - *
            -   * Optional. Human-readable name for this workstation cluster.
            -   * 
            - * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for displayName. - */ - @java.lang.Override - public com.google.protobuf.ByteString getDisplayNameBytes() { - java.lang.Object ref = displayName_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - displayName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_DomainConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig.class, + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig.Builder.class); } - } - public static final int UID_FIELD_NUMBER = 3; + public static final int DOMAIN_FIELD_NUMBER = 1; - @SuppressWarnings("serial") - private volatile java.lang.Object uid_ = ""; + @SuppressWarnings("serial") + private volatile java.lang.Object domain_ = ""; - /** - * - * - *
            -   * Output only. A system-assigned unique identifier for this workstation
            -   * cluster.
            -   * 
            - * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The uid. - */ - @java.lang.Override - public java.lang.String getUid() { - java.lang.Object ref = uid_; - 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(); - uid_ = s; - return s; + /** + * + * + *
            +     * Immutable. Domain used by Workstations for HTTP ingress.
            +     * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The domain. + */ + @java.lang.Override + public java.lang.String getDomain() { + java.lang.Object ref = domain_; + 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(); + domain_ = s; + return s; + } } - } - /** - * - * - *
            -   * Output only. A system-assigned unique identifier for this workstation
            -   * cluster.
            -   * 
            - * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for uid. - */ - @java.lang.Override - public com.google.protobuf.ByteString getUidBytes() { - java.lang.Object ref = uid_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - uid_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
            +     * Immutable. Domain used by Workstations for HTTP ingress.
            +     * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for domain. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDomainBytes() { + java.lang.Object ref = domain_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + domain_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - } - - public static final int RECONCILING_FIELD_NUMBER = 4; - private boolean reconciling_ = false; - - /** - * - * - *
            -   * Output only. Indicates whether this workstation cluster is currently being
            -   * updated to match its intended state.
            -   * 
            - * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The reconciling. - */ - @java.lang.Override - public boolean getReconciling() { - return reconciling_; - } - public static final int ANNOTATIONS_FIELD_NUMBER = 5; + private byte memoizedIsInitialized = -1; - private static final class AnnotationsDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_AnnotationsEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - @SuppressWarnings("serial") - private com.google.protobuf.MapField annotations_; + memoizedIsInitialized = 1; + return true; + } - private com.google.protobuf.MapField - internalGetAnnotations() { - if (annotations_ == null) { - return com.google.protobuf.MapField.emptyMapField(AnnotationsDefaultEntryHolder.defaultEntry); + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(domain_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, domain_); + } + getUnknownFields().writeTo(output); } - return annotations_; - } - public int getAnnotationsCount() { - return internalGetAnnotations().getMap().size(); - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public boolean containsAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(domain_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, domain_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - return internalGetAnnotations().getMap().containsKey(key); - } - /** Use {@link #getAnnotationsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getAnnotations() { - return getAnnotationsMap(); - } + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig other = + (com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig) obj; - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.Map getAnnotationsMap() { - return internalGetAnnotations().getMap(); - } + if (!getDomain().equals(other.getDomain())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public /* nullable */ java.lang.String getAnnotationsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + DOMAIN_FIELD_NUMBER; + hash = (53 * hash) + getDomain().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - java.util.Map map = internalGetAnnotations().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.lang.String getAnnotationsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - java.util.Map map = internalGetAnnotations().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + + public static com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - return map.get(key); - } - public static final int LABELS_FIELD_NUMBER = 15; + public static com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - private static final class LabelsDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_LabelsEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + public static com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - @SuppressWarnings("serial") - private com.google.protobuf.MapField labels_; + public static com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - private com.google.protobuf.MapField internalGetLabels() { - if (labels_ == null) { - return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); + public static com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - return labels_; - } - public int getLabelsCount() { - return internalGetLabels().getMap().size(); - } + public static com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation cluster and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public boolean containsLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - return internalGetLabels().getMap().containsKey(key); - } - /** Use {@link #getLabelsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getLabels() { - return getLabelsMap(); - } + public static com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation cluster and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.util.Map getLabelsMap() { - return internalGetLabels().getMap(); - } + public static com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig + parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation cluster and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public /* nullable */ java.lang.String getLabelsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - java.util.Map map = internalGetLabels().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation cluster and that are also propagated to the
            -   * underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.lang.String getLabelsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public static com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig 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.util.Map map = internalGetLabels().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); } - return map.get(key); - } - public static final int CREATE_TIME_FIELD_NUMBER = 6; - private com.google.protobuf.Timestamp createTime_; + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the createTime field is set. - */ - @java.lang.Override - public boolean hasCreateTime() { - return ((bitField0_ & 0x00000001) != 0); - } + public static Builder newBuilder( + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The createTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getCreateTime() { - return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; - } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { - return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; - } + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } - public static final int UPDATE_TIME_FIELD_NUMBER = 7; - private com.google.protobuf.Timestamp updateTime_; + /** + * + * + *
            +     * Configuration options for a custom domain.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig) + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_DomainConfig_descriptor; + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was most recently updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the updateTime field is set. - */ - @java.lang.Override - public boolean hasUpdateTime() { - return ((bitField0_ & 0x00000002) != 0); - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_DomainConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig.class, + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig.Builder.class); + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was most recently updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The updateTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getUpdateTime() { - return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; - } + // Construct using + // com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig.newBuilder() + private Builder() {} - /** - * - * - *
            -   * Output only. Time when this workstation cluster was most recently updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { - return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; - } + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } - public static final int DELETE_TIME_FIELD_NUMBER = 8; - private com.google.protobuf.Timestamp deleteTime_; + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + domain_ = ""; + return this; + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the deleteTime field is set. - */ - @java.lang.Override - public boolean hasDeleteTime() { - return ((bitField0_ & 0x00000004) != 0); - } + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_DomainConfig_descriptor; + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The deleteTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getDeleteTime() { - return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig + .getDefaultInstance(); + } - /** - * - * - *
            -   * Output only. Time when this workstation cluster was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { - return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig build() { + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - public static final int ETAG_FIELD_NUMBER = 9; + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig result = + new com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - @SuppressWarnings("serial") - private volatile java.lang.Object etag_ = ""; + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.domain_ = domain_; + } + } - /** - * - * - *
            -   * Optional. Checksum computed by the server. May be sent on update and delete
            -   * requests to make sure that the client has an up-to-date value before
            -   * proceeding.
            -   * 
            - * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The etag. - */ - @java.lang.Override - public java.lang.String getEtag() { - java.lang.Object ref = etag_; - 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(); - etag_ = s; - return s; - } - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig) other); + } else { + super.mergeFrom(other); + return this; + } + } - /** - * - * - *
            -   * Optional. Checksum computed by the server. May be sent on update and delete
            -   * requests to make sure that the client has an up-to-date value before
            -   * proceeding.
            -   * 
            - * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for etag. - */ - @java.lang.Override - public com.google.protobuf.ByteString getEtagBytes() { - java.lang.Object ref = etag_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - etag_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig other) { + if (other + == com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig + .getDefaultInstance()) return this; + if (!other.getDomain().isEmpty()) { + domain_ = other.domain_; + bitField0_ |= 0x00000001; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + domain_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object domain_ = ""; + + /** + * + * + *
            +       * Immutable. Domain used by Workstations for HTTP ingress.
            +       * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The domain. + */ + public java.lang.String getDomain() { + java.lang.Object ref = domain_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + domain_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Immutable. Domain used by Workstations for HTTP ingress.
            +       * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for domain. + */ + public com.google.protobuf.ByteString getDomainBytes() { + java.lang.Object ref = domain_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + domain_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Immutable. Domain used by Workstations for HTTP ingress.
            +       * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The domain to set. + * @return This builder for chaining. + */ + public Builder setDomain(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + domain_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Immutable. Domain used by Workstations for HTTP ingress.
            +       * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return This builder for chaining. + */ + public Builder clearDomain() { + domain_ = getDefaultInstance().getDomain(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Immutable. Domain used by Workstations for HTTP ingress.
            +       * 
            + * + * string domain = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The bytes for domain to set. + * @return This builder for chaining. + */ + public Builder setDomainBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + domain_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig) } - } - public static final int NETWORK_FIELD_NUMBER = 10; + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig) + private static final com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig + DEFAULT_INSTANCE; - @SuppressWarnings("serial") - private volatile java.lang.Object network_ = ""; + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig(); + } - /** - * - * - *
            -   * Immutable. Name of the Compute Engine network in which instances associated
            -   * with this workstation cluster will be created.
            -   * 
            - * - * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The network. - */ - @java.lang.Override - public java.lang.String getNetwork() { - java.lang.Object ref = network_; - 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(); - network_ = s; - return s; + public static com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig + getDefaultInstance() { + return DEFAULT_INSTANCE; } - } - /** - * - * - *
            -   * Immutable. Name of the Compute Engine network in which instances associated
            -   * with this workstation cluster will be created.
            -   * 
            - * - * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for network. - */ - @java.lang.Override - public com.google.protobuf.ByteString getNetworkBytes() { - java.lang.Object ref = network_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - network_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public DomainConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } } - public static final int SUBNETWORK_FIELD_NUMBER = 11; + public interface GatewayConfigOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig) + com.google.protobuf.MessageOrBuilder { - @SuppressWarnings("serial") - private volatile java.lang.Object subnetwork_ = ""; + /** + * + * + *
            +     * Optional. Whether HTTP/2 is enabled for this workstation cluster.
            +     * Defaults to false.
            +     * 
            + * + * bool http2_enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The http2Enabled. + */ + boolean getHttp2Enabled(); + } /** * * *
            -   * Immutable. Name of the Compute Engine subnetwork in which instances
            -   * associated with this workstation cluster will be created. Must be part of
            -   * the subnetwork specified for this workstation cluster.
            +   * Configuration options for Cluster HTTP Gateway.
                * 
            * - * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The subnetwork. + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig} */ - @java.lang.Override - public java.lang.String getSubnetwork() { - java.lang.Object ref = subnetwork_; - 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(); - subnetwork_ = s; - return s; - } - } + public static final class GatewayConfig extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig) + GatewayConfigOrBuilder { + private static final long serialVersionUID = 0L; - /** - * - * - *
            -   * Immutable. Name of the Compute Engine subnetwork in which instances
            -   * associated with this workstation cluster will be created. Must be part of
            -   * the subnetwork specified for this workstation cluster.
            -   * 
            - * - * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for subnetwork. - */ - @java.lang.Override - public com.google.protobuf.ByteString getSubnetworkBytes() { - java.lang.Object ref = subnetwork_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - subnetwork_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "GatewayConfig"); } - } - public static final int CONTROL_PLANE_IP_FIELD_NUMBER = 16; + // Use GatewayConfig.newBuilder() to construct. + private GatewayConfig(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } - @SuppressWarnings("serial") - private volatile java.lang.Object controlPlaneIp_ = ""; + private GatewayConfig() {} - /** - * - * - *
            -   * Output only. The private IP address of the control plane for this
            -   * workstation cluster. Workstation VMs need access to this IP address to work
            -   * with the service, so make sure that your firewall rules allow egress from
            -   * the workstation VMs to this address.
            -   * 
            - * - * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The controlPlaneIp. - */ - @java.lang.Override - public java.lang.String getControlPlaneIp() { - java.lang.Object ref = controlPlaneIp_; - 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(); - controlPlaneIp_ = s; - return s; + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_GatewayConfig_descriptor; } - } - /** - * - * - *
            -   * Output only. The private IP address of the control plane for this
            -   * workstation cluster. Workstation VMs need access to this IP address to work
            -   * with the service, so make sure that your firewall rules allow egress from
            -   * the workstation VMs to this address.
            -   * 
            - * - * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for controlPlaneIp. - */ - @java.lang.Override - public com.google.protobuf.ByteString getControlPlaneIpBytes() { - java.lang.Object ref = controlPlaneIp_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - controlPlaneIp_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_GatewayConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig.class, + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig.Builder.class); } - } - public static final int PRIVATE_CLUSTER_CONFIG_FIELD_NUMBER = 12; - private com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig - privateClusterConfig_; + public static final int HTTP2_ENABLED_FIELD_NUMBER = 1; + private boolean http2Enabled_ = false; - /** - * - * - *
            -   * Optional. Configuration for private workstation cluster.
            -   * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the privateClusterConfig field is set. - */ - @java.lang.Override - public boolean hasPrivateClusterConfig() { - return ((bitField0_ & 0x00000008) != 0); - } + /** + * + * + *
            +     * Optional. Whether HTTP/2 is enabled for this workstation cluster.
            +     * Defaults to false.
            +     * 
            + * + * bool http2_enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The http2Enabled. + */ + @java.lang.Override + public boolean getHttp2Enabled() { + return http2Enabled_; + } - /** - * - * - *
            -   * Optional. Configuration for private workstation cluster.
            -   * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The privateClusterConfig. - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig - getPrivateClusterConfig() { - return privateClusterConfig_ == null - ? com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig - .getDefaultInstance() - : privateClusterConfig_; - } + private byte memoizedIsInitialized = -1; - /** - * - * - *
            -   * Optional. Configuration for private workstation cluster.
            -   * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfigOrBuilder - getPrivateClusterConfigOrBuilder() { - return privateClusterConfig_ == null - ? com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig - .getDefaultInstance() - : privateClusterConfig_; - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - public static final int DEGRADED_FIELD_NUMBER = 13; - private boolean degraded_ = false; + memoizedIsInitialized = 1; + return true; + } - /** - * - * - *
            -   * Output only. Whether this workstation cluster is in degraded mode, in which
            -   * case it may require user action to restore full functionality. Details can
            -   * be found in
            -   * [conditions][google.cloud.workstations.v1beta.WorkstationCluster.conditions].
            -   * 
            - * - * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The degraded. - */ - @java.lang.Override - public boolean getDegraded() { - return degraded_; - } + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (http2Enabled_ != false) { + output.writeBool(1, http2Enabled_); + } + getUnknownFields().writeTo(output); + } - public static final int CONDITIONS_FIELD_NUMBER = 14; + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - @SuppressWarnings("serial") - private java.util.List conditions_; + size = 0; + if (http2Enabled_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(1, http2Enabled_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - /** - * - * - *
            -   * Output only. Status conditions describing the workstation cluster's current
            -   * state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public java.util.List getConditionsList() { - return conditions_; - } + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig other = + (com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig) obj; - /** - * - * - *
            -   * Output only. Status conditions describing the workstation cluster's current
            -   * state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public java.util.List getConditionsOrBuilderList() { - return conditions_; - } + if (getHttp2Enabled() != other.getHttp2Enabled()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - /** - * - * - *
            -   * Output only. Status conditions describing the workstation cluster's current
            -   * state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public int getConditionsCount() { - return conditions_.size(); - } - - /** - * - * - *
            -   * Output only. Status conditions describing the workstation cluster's current
            -   * state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.rpc.Status getConditions(int index) { - return conditions_.get(index); - } - - /** - * - * - *
            -   * Output only. Status conditions describing the workstation cluster's current
            -   * state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { - return conditions_.get(index); - } + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + HTTP2_ENABLED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getHttp2Enabled()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - private byte memoizedIsInitialized = -1; + public static com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + public static com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - memoizedIsInitialized = 1; - return true; - } + public static com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - @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_); + public static com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, displayName_); + + public static com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 3, uid_); + + public static com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - if (reconciling_ != false) { - output.writeBool(4, reconciling_); + + public static com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetAnnotations(), AnnotationsDefaultEntryHolder.defaultEntry, 5); - if (((bitField0_ & 0x00000001) != 0)) { - output.writeMessage(6, getCreateTime()); + + public static com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - if (((bitField0_ & 0x00000002) != 0)) { - output.writeMessage(7, getUpdateTime()); + + public static com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); } - if (((bitField0_ & 0x00000004) != 0)) { - output.writeMessage(8, getDeleteTime()); + + public static com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig + parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 9, etag_); + + public static com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(network_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 10, network_); + + public static com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(subnetwork_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 11, subnetwork_); + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); } - if (((bitField0_ & 0x00000008) != 0)) { - output.writeMessage(12, getPrivateClusterConfig()); + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); } - if (degraded_ != false) { - output.writeBool(13, degraded_); + + public static Builder newBuilder( + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } - for (int i = 0; i < conditions_.size(); i++) { - output.writeMessage(14, conditions_.get(i)); + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 15); - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(controlPlaneIp_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 16, controlPlaneIp_); + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; } - getUnknownFields().writeTo(output); - } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + /** + * + * + *
            +     * Configuration options for Cluster HTTP Gateway.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig) + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_GatewayConfig_descriptor; + } - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(2, displayName_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(3, uid_); - } - if (reconciling_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, reconciling_); - } - for (java.util.Map.Entry entry : - internalGetAnnotations().getMap().entrySet()) { - com.google.protobuf.MapEntry annotations__ = - AnnotationsDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, annotations__); - } - if (((bitField0_ & 0x00000001) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getCreateTime()); - } - if (((bitField0_ & 0x00000002) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getUpdateTime()); - } - if (((bitField0_ & 0x00000004) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getDeleteTime()); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(9, etag_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(network_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(10, network_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(subnetwork_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(11, subnetwork_); - } - if (((bitField0_ & 0x00000008) != 0)) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize(12, getPrivateClusterConfig()); - } - if (degraded_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(13, degraded_); - } - for (int i = 0; i < conditions_.size(); i++) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, conditions_.get(i)); - } - for (java.util.Map.Entry entry : - internalGetLabels().getMap().entrySet()) { - com.google.protobuf.MapEntry labels__ = - LabelsDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(15, labels__); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(controlPlaneIp_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(16, controlPlaneIp_); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_GatewayConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig.class, + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig.Builder + .class); + } - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof com.google.cloud.workstations.v1beta.WorkstationCluster)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1beta.WorkstationCluster other = - (com.google.cloud.workstations.v1beta.WorkstationCluster) obj; + // Construct using + // com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig.newBuilder() + private Builder() {} - if (!getName().equals(other.getName())) return false; - if (!getDisplayName().equals(other.getDisplayName())) return false; - if (!getUid().equals(other.getUid())) return false; - if (getReconciling() != other.getReconciling()) return false; - if (!internalGetAnnotations().equals(other.internalGetAnnotations())) return false; - if (!internalGetLabels().equals(other.internalGetLabels())) return false; - if (hasCreateTime() != other.hasCreateTime()) return false; - if (hasCreateTime()) { - if (!getCreateTime().equals(other.getCreateTime())) return false; - } - if (hasUpdateTime() != other.hasUpdateTime()) return false; - if (hasUpdateTime()) { - if (!getUpdateTime().equals(other.getUpdateTime())) return false; - } - if (hasDeleteTime() != other.hasDeleteTime()) return false; - if (hasDeleteTime()) { - if (!getDeleteTime().equals(other.getDeleteTime())) return false; - } - if (!getEtag().equals(other.getEtag())) return false; - if (!getNetwork().equals(other.getNetwork())) return false; - if (!getSubnetwork().equals(other.getSubnetwork())) return false; - if (!getControlPlaneIp().equals(other.getControlPlaneIp())) return false; - if (hasPrivateClusterConfig() != other.hasPrivateClusterConfig()) return false; - if (hasPrivateClusterConfig()) { - if (!getPrivateClusterConfig().equals(other.getPrivateClusterConfig())) return false; - } - if (getDegraded() != other.getDegraded()) return false; - if (!getConditionsList().equals(other.getConditionsList())) return false; - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } - @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) + DISPLAY_NAME_FIELD_NUMBER; - hash = (53 * hash) + getDisplayName().hashCode(); - hash = (37 * hash) + UID_FIELD_NUMBER; - hash = (53 * hash) + getUid().hashCode(); - hash = (37 * hash) + RECONCILING_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReconciling()); - if (!internalGetAnnotations().getMap().isEmpty()) { - hash = (37 * hash) + ANNOTATIONS_FIELD_NUMBER; - hash = (53 * hash) + internalGetAnnotations().hashCode(); - } - if (!internalGetLabels().getMap().isEmpty()) { - hash = (37 * hash) + LABELS_FIELD_NUMBER; - hash = (53 * hash) + internalGetLabels().hashCode(); - } - if (hasCreateTime()) { - hash = (37 * hash) + CREATE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getCreateTime().hashCode(); - } - if (hasUpdateTime()) { - hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getUpdateTime().hashCode(); - } - if (hasDeleteTime()) { - hash = (37 * hash) + DELETE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getDeleteTime().hashCode(); - } - hash = (37 * hash) + ETAG_FIELD_NUMBER; - hash = (53 * hash) + getEtag().hashCode(); - hash = (37 * hash) + NETWORK_FIELD_NUMBER; - hash = (53 * hash) + getNetwork().hashCode(); - hash = (37 * hash) + SUBNETWORK_FIELD_NUMBER; - hash = (53 * hash) + getSubnetwork().hashCode(); - hash = (37 * hash) + CONTROL_PLANE_IP_FIELD_NUMBER; - hash = (53 * hash) + getControlPlaneIp().hashCode(); - if (hasPrivateClusterConfig()) { - hash = (37 * hash) + PRIVATE_CLUSTER_CONFIG_FIELD_NUMBER; - hash = (53 * hash) + getPrivateClusterConfig().hashCode(); - } - hash = (37 * hash) + DEGRADED_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDegraded()); - if (getConditionsCount() > 0) { - hash = (37 * hash) + CONDITIONS_FIELD_NUMBER; - hash = (53 * hash) + getConditionsList().hashCode(); - } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + http2Enabled_ = false; + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_GatewayConfig_descriptor; + } - public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig + .getDefaultInstance(); + } - public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig build() { + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig result = + new com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.http2Enabled_ = http2Enabled_; + } + } - public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig) other); + } else { + super.mergeFrom(other); + return this; + } + } - public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig other) { + if (other + == com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig + .getDefaultInstance()) return this; + if (other.getHttp2Enabled() != false) { + setHttp2Enabled(other.getHttp2Enabled()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + @java.lang.Override + public final boolean isInitialized() { + return true; + } - public static com.google.cloud.workstations.v1beta.WorkstationCluster parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + http2Enabled_ = input.readBool(); + bitField0_ |= 0x00000001; + break; + } // case 8 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationCluster parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + private int bitField0_; - public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + private boolean http2Enabled_; - public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +       * Optional. Whether HTTP/2 is enabled for this workstation cluster.
            +       * Defaults to false.
            +       * 
            + * + * bool http2_enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The http2Enabled. + */ + @java.lang.Override + public boolean getHttp2Enabled() { + return http2Enabled_; + } - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } + /** + * + * + *
            +       * Optional. Whether HTTP/2 is enabled for this workstation cluster.
            +       * Defaults to false.
            +       * 
            + * + * bool http2_enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The http2Enabled to set. + * @return This builder for chaining. + */ + public Builder setHttp2Enabled(boolean value) { - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + http2Enabled_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } - public static Builder newBuilder( - com.google.cloud.workstations.v1beta.WorkstationCluster prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + /** + * + * + *
            +       * Optional. Whether HTTP/2 is enabled for this workstation cluster.
            +       * Defaults to false.
            +       * 
            + * + * bool http2_enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearHttp2Enabled() { + bitField0_ = (bitField0_ & ~0x00000001); + http2Enabled_ = false; + onChanged(); + return this; + } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig) + private static final com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig(); + } + + public static com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GatewayConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } } + private int bitField0_; + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + + /** + * + * + *
            +   * Identifier. Full name of this workstation cluster.
            +   * 
            + * + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * + * @return The name. + */ @java.lang.Override - protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; + 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; + } } /** * * *
            -   * A workstation cluster resource in the Cloud Workstations API.
            -   *
            -   * Defines a group of workstations in a particular region and the
            -   * VPC network they're attached to.
            +   * Identifier. Full name of this workstation cluster.
                * 
            * - * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationCluster} + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * + * @return The bytes for name. */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationCluster) - com.google.cloud.workstations.v1beta.WorkstationClusterOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_descriptor; + @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; } + } - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( - int number) { - switch (number) { - case 5: - return internalGetAnnotations(); - case 15: - return internalGetLabels(); - default: - throw new RuntimeException("Invalid map field number: " + number); - } - } + public static final int DISPLAY_NAME_FIELD_NUMBER = 2; - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( - int number) { - switch (number) { - case 5: - return internalGetMutableAnnotations(); - case 15: - return internalGetMutableLabels(); - default: - throw new RuntimeException("Invalid map field number: " + number); - } - } + @SuppressWarnings("serial") + private volatile java.lang.Object displayName_ = ""; - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationCluster.class, - com.google.cloud.workstations.v1beta.WorkstationCluster.Builder.class); + /** + * + * + *
            +   * Optional. Human-readable name for this workstation cluster.
            +   * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The displayName. + */ + @java.lang.Override + public java.lang.String getDisplayName() { + java.lang.Object ref = displayName_; + 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(); + displayName_ = s; + return s; } + } - // Construct using com.google.cloud.workstations.v1beta.WorkstationCluster.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); + /** + * + * + *
            +   * Optional. Human-readable name for this workstation cluster.
            +   * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for displayName. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDisplayNameBytes() { + java.lang.Object ref = displayName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + displayName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } + } - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); - } + public static final int UID_FIELD_NUMBER = 3; - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { - internalGetCreateTimeFieldBuilder(); - internalGetUpdateTimeFieldBuilder(); - internalGetDeleteTimeFieldBuilder(); - internalGetPrivateClusterConfigFieldBuilder(); - internalGetConditionsFieldBuilder(); - } + @SuppressWarnings("serial") + private volatile java.lang.Object uid_ = ""; + + /** + * + * + *
            +   * Output only. A system-assigned unique identifier for this workstation
            +   * cluster.
            +   * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The uid. + */ + @java.lang.Override + public java.lang.String getUid() { + java.lang.Object ref = uid_; + 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(); + uid_ = s; + return s; } + } - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - name_ = ""; - displayName_ = ""; - uid_ = ""; - reconciling_ = false; - internalGetMutableAnnotations().clear(); - internalGetMutableLabels().clear(); - createTime_ = null; - if (createTimeBuilder_ != null) { - createTimeBuilder_.dispose(); - createTimeBuilder_ = null; - } - updateTime_ = null; - if (updateTimeBuilder_ != null) { - updateTimeBuilder_.dispose(); - updateTimeBuilder_ = null; - } - deleteTime_ = null; - if (deleteTimeBuilder_ != null) { - deleteTimeBuilder_.dispose(); - deleteTimeBuilder_ = null; - } - etag_ = ""; - network_ = ""; - subnetwork_ = ""; - controlPlaneIp_ = ""; - privateClusterConfig_ = null; - if (privateClusterConfigBuilder_ != null) { - privateClusterConfigBuilder_.dispose(); - privateClusterConfigBuilder_ = null; - } - degraded_ = false; - if (conditionsBuilder_ == null) { - conditions_ = java.util.Collections.emptyList(); - } else { - conditions_ = null; - conditionsBuilder_.clear(); - } - bitField0_ = (bitField0_ & ~0x00008000); - return this; + /** + * + * + *
            +   * Output only. A system-assigned unique identifier for this workstation
            +   * cluster.
            +   * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The bytes for uid. + */ + @java.lang.Override + public com.google.protobuf.ByteString getUidBytes() { + java.lang.Object ref = uid_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } + } - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_descriptor; + public static final int RECONCILING_FIELD_NUMBER = 4; + private boolean reconciling_ = false; + + /** + * + * + *
            +   * Output only. Indicates whether this workstation cluster is currently being
            +   * updated to match its intended state.
            +   * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The reconciling. + */ + @java.lang.Override + public boolean getReconciling() { + return reconciling_; + } + + public static final int ANNOTATIONS_FIELD_NUMBER = 5; + + private static final class AnnotationsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_AnnotationsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField annotations_; + + private com.google.protobuf.MapField + internalGetAnnotations() { + if (annotations_ == null) { + return com.google.protobuf.MapField.emptyMapField(AnnotationsDefaultEntryHolder.defaultEntry); } + return annotations_; + } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationCluster getDefaultInstanceForType() { - return com.google.cloud.workstations.v1beta.WorkstationCluster.getDefaultInstance(); + public int getAnnotationsCount() { + return internalGetAnnotations().getMap().size(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } + return internalGetAnnotations().getMap().containsKey(key); + } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationCluster build() { - com.google.cloud.workstations.v1beta.WorkstationCluster result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; + /** Use {@link #getAnnotationsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getAnnotations() { + return getAnnotationsMap(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getAnnotationsMap() { + return internalGetAnnotations().getMap(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getAnnotationsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); } + java.util.Map map = internalGetAnnotations().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationCluster buildPartial() { - com.google.cloud.workstations.v1beta.WorkstationCluster result = - new com.google.cloud.workstations.v1beta.WorkstationCluster(this); - buildPartialRepeatedFields(result); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getAnnotationsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } + java.util.Map map = internalGetAnnotations().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } - private void buildPartialRepeatedFields( - com.google.cloud.workstations.v1beta.WorkstationCluster result) { - if (conditionsBuilder_ == null) { - if (((bitField0_ & 0x00008000) != 0)) { - conditions_ = java.util.Collections.unmodifiableList(conditions_); - bitField0_ = (bitField0_ & ~0x00008000); - } - result.conditions_ = conditions_; - } else { - result.conditions_ = conditionsBuilder_.build(); - } + public static final int LABELS_FIELD_NUMBER = 15; + + private static final class LabelsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_LabelsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField labels_; + + private com.google.protobuf.MapField internalGetLabels() { + if (labels_ == null) { + return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); } + return labels_; + } - private void buildPartial0(com.google.cloud.workstations.v1beta.WorkstationCluster result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.name_ = name_; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.displayName_ = displayName_; - } - if (((from_bitField0_ & 0x00000004) != 0)) { - result.uid_ = uid_; - } - if (((from_bitField0_ & 0x00000008) != 0)) { + public int getLabelsCount() { + return internalGetLabels().getMap().size(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation cluster and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetLabels().getMap().containsKey(key); + } + + /** Use {@link #getLabelsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getLabels() { + return getLabelsMap(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation cluster and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getLabelsMap() { + return internalGetLabels().getMap(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation cluster and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getLabelsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation cluster and that are also propagated to the
            +   * underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getLabelsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int CREATE_TIME_FIELD_NUMBER = 6; + private com.google.protobuf.Timestamp createTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the createTime field is set. + */ + @java.lang.Override + public boolean hasCreateTime() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The createTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getCreateTime() { + return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { + return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; + } + + public static final int UPDATE_TIME_FIELD_NUMBER = 7; + private com.google.protobuf.Timestamp updateTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was most recently updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the updateTime field is set. + */ + @java.lang.Override + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was most recently updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The updateTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getUpdateTime() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was most recently updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + public static final int DELETE_TIME_FIELD_NUMBER = 8; + private com.google.protobuf.Timestamp deleteTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the deleteTime field is set. + */ + @java.lang.Override + public boolean hasDeleteTime() { + return ((bitField0_ & 0x00000004) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The deleteTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getDeleteTime() { + return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation cluster was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { + return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; + } + + public static final int ETAG_FIELD_NUMBER = 9; + + @SuppressWarnings("serial") + private volatile java.lang.Object etag_ = ""; + + /** + * + * + *
            +   * Optional. Checksum computed by the server. May be sent on update and delete
            +   * requests to make sure that the client has an up-to-date value before
            +   * proceeding.
            +   * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The etag. + */ + @java.lang.Override + public java.lang.String getEtag() { + java.lang.Object ref = etag_; + 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(); + etag_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Checksum computed by the server. May be sent on update and delete
            +   * requests to make sure that the client has an up-to-date value before
            +   * proceeding.
            +   * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for etag. + */ + @java.lang.Override + public com.google.protobuf.ByteString getEtagBytes() { + java.lang.Object ref = etag_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + etag_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int NETWORK_FIELD_NUMBER = 10; + + @SuppressWarnings("serial") + private volatile java.lang.Object network_ = ""; + + /** + * + * + *
            +   * Immutable. Name of the Compute Engine network in which instances associated
            +   * with this workstation cluster will be created.
            +   * 
            + * + * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The network. + */ + @java.lang.Override + public java.lang.String getNetwork() { + java.lang.Object ref = network_; + 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(); + network_ = s; + return s; + } + } + + /** + * + * + *
            +   * Immutable. Name of the Compute Engine network in which instances associated
            +   * with this workstation cluster will be created.
            +   * 
            + * + * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for network. + */ + @java.lang.Override + public com.google.protobuf.ByteString getNetworkBytes() { + java.lang.Object ref = network_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + network_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SUBNETWORK_FIELD_NUMBER = 11; + + @SuppressWarnings("serial") + private volatile java.lang.Object subnetwork_ = ""; + + /** + * + * + *
            +   * Immutable. Name of the Compute Engine subnetwork in which instances
            +   * associated with this workstation cluster will be created. Must be part of
            +   * the subnetwork specified for this workstation cluster.
            +   * 
            + * + * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The subnetwork. + */ + @java.lang.Override + public java.lang.String getSubnetwork() { + java.lang.Object ref = subnetwork_; + 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(); + subnetwork_ = s; + return s; + } + } + + /** + * + * + *
            +   * Immutable. Name of the Compute Engine subnetwork in which instances
            +   * associated with this workstation cluster will be created. Must be part of
            +   * the subnetwork specified for this workstation cluster.
            +   * 
            + * + * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for subnetwork. + */ + @java.lang.Override + public com.google.protobuf.ByteString getSubnetworkBytes() { + java.lang.Object ref = subnetwork_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + subnetwork_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int CONTROL_PLANE_IP_FIELD_NUMBER = 16; + + @SuppressWarnings("serial") + private volatile java.lang.Object controlPlaneIp_ = ""; + + /** + * + * + *
            +   * Output only. The private IP address of the control plane for this
            +   * workstation cluster. Workstation VMs need access to this IP address to work
            +   * with the service, so make sure that your firewall rules allow egress from
            +   * the workstation VMs to this address.
            +   * 
            + * + * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The controlPlaneIp. + */ + @java.lang.Override + public java.lang.String getControlPlaneIp() { + java.lang.Object ref = controlPlaneIp_; + 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(); + controlPlaneIp_ = s; + return s; + } + } + + /** + * + * + *
            +   * Output only. The private IP address of the control plane for this
            +   * workstation cluster. Workstation VMs need access to this IP address to work
            +   * with the service, so make sure that your firewall rules allow egress from
            +   * the workstation VMs to this address.
            +   * 
            + * + * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for controlPlaneIp. + */ + @java.lang.Override + public com.google.protobuf.ByteString getControlPlaneIpBytes() { + java.lang.Object ref = controlPlaneIp_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + controlPlaneIp_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PRIVATE_CLUSTER_CONFIG_FIELD_NUMBER = 12; + private com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig + privateClusterConfig_; + + /** + * + * + *
            +   * Optional. Configuration for private workstation cluster.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the privateClusterConfig field is set. + */ + @java.lang.Override + public boolean hasPrivateClusterConfig() { + return ((bitField0_ & 0x00000008) != 0); + } + + /** + * + * + *
            +   * Optional. Configuration for private workstation cluster.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The privateClusterConfig. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig + getPrivateClusterConfig() { + return privateClusterConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig + .getDefaultInstance() + : privateClusterConfig_; + } + + /** + * + * + *
            +   * Optional. Configuration for private workstation cluster.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfigOrBuilder + getPrivateClusterConfigOrBuilder() { + return privateClusterConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig + .getDefaultInstance() + : privateClusterConfig_; + } + + public static final int DOMAIN_CONFIG_FIELD_NUMBER = 17; + private com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domainConfig_; + + /** + * + * + *
            +   * Optional. Configuration options for a custom domain.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the domainConfig field is set. + */ + @java.lang.Override + public boolean hasDomainConfig() { + return ((bitField0_ & 0x00000010) != 0); + } + + /** + * + * + *
            +   * Optional. Configuration options for a custom domain.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The domainConfig. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig getDomainConfig() { + return domainConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig.getDefaultInstance() + : domainConfig_; + } + + /** + * + * + *
            +   * Optional. Configuration options for a custom domain.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfigOrBuilder + getDomainConfigOrBuilder() { + return domainConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig.getDefaultInstance() + : domainConfig_; + } + + public static final int DEGRADED_FIELD_NUMBER = 13; + private boolean degraded_ = false; + + /** + * + * + *
            +   * Output only. Whether this workstation cluster is in degraded mode, in which
            +   * case it may require user action to restore full functionality. The
            +   * [conditions][google.cloud.workstations.v1beta.WorkstationCluster.conditions]
            +   * field contains detailed information about the status of the cluster.
            +   * 
            + * + * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The degraded. + */ + @java.lang.Override + public boolean getDegraded() { + return degraded_; + } + + public static final int CONDITIONS_FIELD_NUMBER = 14; + + @SuppressWarnings("serial") + private java.util.List conditions_; + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation cluster's current
            +   * state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getConditionsList() { + return conditions_; + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation cluster's current
            +   * state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getConditionsOrBuilderList() { + return conditions_; + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation cluster's current
            +   * state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getConditionsCount() { + return conditions_.size(); + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation cluster's current
            +   * state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.rpc.Status getConditions(int index) { + return conditions_.get(index); + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation cluster's current
            +   * state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { + return conditions_.get(index); + } + + public static final int SATISFIES_PZS_FIELD_NUMBER = 18; + private boolean satisfiesPzs_ = false; + + /** + * + * + *
            +   * Output only. Reserved for future use.
            +   * 
            + * + * bool satisfies_pzs = 18 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzs. + */ + @java.lang.Override + public boolean getSatisfiesPzs() { + return satisfiesPzs_; + } + + public static final int SATISFIES_PZI_FIELD_NUMBER = 19; + private boolean satisfiesPzi_ = false; + + /** + * + * + *
            +   * Output only. Reserved for future use.
            +   * 
            + * + * bool satisfies_pzi = 19 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzi. + */ + @java.lang.Override + public boolean getSatisfiesPzi() { + return satisfiesPzi_; + } + + public static final int TAGS_FIELD_NUMBER = 20; + + private static final class TagsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_TagsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField tags_; + + private com.google.protobuf.MapField internalGetTags() { + if (tags_ == null) { + return com.google.protobuf.MapField.emptyMapField(TagsDefaultEntryHolder.defaultEntry); + } + return tags_; + } + + public int getTagsCount() { + return internalGetTags().getMap().size(); + } + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsTags(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetTags().getMap().containsKey(key); + } + + /** Use {@link #getTagsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getTags() { + return getTagsMap(); + } + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getTagsMap() { + return internalGetTags().getMap(); + } + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getTagsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetTags().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getTagsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetTags().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int GATEWAY_CONFIG_FIELD_NUMBER = 21; + private com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gatewayConfig_; + + /** + * + * + *
            +   * Optional. Configuration options for Cluster HTTP Gateway.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the gatewayConfig field is set. + */ + @java.lang.Override + public boolean hasGatewayConfig() { + return ((bitField0_ & 0x00000020) != 0); + } + + /** + * + * + *
            +   * Optional. Configuration options for Cluster HTTP Gateway.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The gatewayConfig. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig getGatewayConfig() { + return gatewayConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig.getDefaultInstance() + : gatewayConfig_; + } + + /** + * + * + *
            +   * Optional. Configuration options for Cluster HTTP Gateway.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfigOrBuilder + getGatewayConfigOrBuilder() { + return gatewayConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig.getDefaultInstance() + : gatewayConfig_; + } + + public static final int WORKSTATION_AUTHORIZATION_URL_FIELD_NUMBER = 22; + + @SuppressWarnings("serial") + private volatile java.lang.Object workstationAuthorizationUrl_ = ""; + + /** + * + * + *
            +   * Optional. Specifies the redirect URL for unauthorized requests received by
            +   * workstation VMs in this cluster.
            +   *
            +   * Redirects to this endpoint will send a base64 encoded `state` query param
            +   * containing the target workstation name and original request hostname. The
            +   * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +   * and redirecting back to the original hostname with the token.
            +   * 
            + * + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The workstationAuthorizationUrl. + */ + @java.lang.Override + public java.lang.String getWorkstationAuthorizationUrl() { + java.lang.Object ref = workstationAuthorizationUrl_; + 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(); + workstationAuthorizationUrl_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Specifies the redirect URL for unauthorized requests received by
            +   * workstation VMs in this cluster.
            +   *
            +   * Redirects to this endpoint will send a base64 encoded `state` query param
            +   * containing the target workstation name and original request hostname. The
            +   * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +   * and redirecting back to the original hostname with the token.
            +   * 
            + * + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The bytes for workstationAuthorizationUrl. + */ + @java.lang.Override + public com.google.protobuf.ByteString getWorkstationAuthorizationUrlBytes() { + java.lang.Object ref = workstationAuthorizationUrl_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + workstationAuthorizationUrl_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int WORKSTATION_LAUNCH_URL_FIELD_NUMBER = 23; + + @SuppressWarnings("serial") + private volatile java.lang.Object workstationLaunchUrl_ = ""; + + /** + * + * + *
            +   * Optional. Specifies the launch URL for workstations in this cluster.
            +   * Requests sent to unstarted workstations will be redirected to this URL.
            +   *
            +   * Requests redirected to the launch endpoint will be sent with a
            +   * `workstation` and `project` query parameter containing the full workstation
            +   * resource name and project ID, respectively. The launch endpoint is
            +   * responsible for starting the workstation, polling it until it reaches
            +   * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
            +   * 
            + * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The workstationLaunchUrl. + */ + @java.lang.Override + public java.lang.String getWorkstationLaunchUrl() { + java.lang.Object ref = workstationLaunchUrl_; + 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(); + workstationLaunchUrl_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Specifies the launch URL for workstations in this cluster.
            +   * Requests sent to unstarted workstations will be redirected to this URL.
            +   *
            +   * Requests redirected to the launch endpoint will be sent with a
            +   * `workstation` and `project` query parameter containing the full workstation
            +   * resource name and project ID, respectively. The launch endpoint is
            +   * responsible for starting the workstation, polling it until it reaches
            +   * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
            +   * 
            + * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for workstationLaunchUrl. + */ + @java.lang.Override + public com.google.protobuf.ByteString getWorkstationLaunchUrlBytes() { + java.lang.Object ref = workstationLaunchUrl_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + workstationLaunchUrl_ = 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(displayName_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, displayName_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, uid_); + } + if (reconciling_ != false) { + output.writeBool(4, reconciling_); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetAnnotations(), AnnotationsDefaultEntryHolder.defaultEntry, 5); + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(6, getCreateTime()); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(7, getUpdateTime()); + } + if (((bitField0_ & 0x00000004) != 0)) { + output.writeMessage(8, getDeleteTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 9, etag_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(network_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 10, network_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(subnetwork_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 11, subnetwork_); + } + if (((bitField0_ & 0x00000008) != 0)) { + output.writeMessage(12, getPrivateClusterConfig()); + } + if (degraded_ != false) { + output.writeBool(13, degraded_); + } + for (int i = 0; i < conditions_.size(); i++) { + output.writeMessage(14, conditions_.get(i)); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 15); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(controlPlaneIp_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 16, controlPlaneIp_); + } + if (((bitField0_ & 0x00000010) != 0)) { + output.writeMessage(17, getDomainConfig()); + } + if (satisfiesPzs_ != false) { + output.writeBool(18, satisfiesPzs_); + } + if (satisfiesPzi_ != false) { + output.writeBool(19, satisfiesPzi_); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetTags(), TagsDefaultEntryHolder.defaultEntry, 20); + if (((bitField0_ & 0x00000020) != 0)) { + output.writeMessage(21, getGatewayConfig()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workstationAuthorizationUrl_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 22, workstationAuthorizationUrl_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workstationLaunchUrl_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 23, workstationLaunchUrl_); + } + 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(displayName_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, displayName_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, uid_); + } + if (reconciling_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, reconciling_); + } + for (java.util.Map.Entry entry : + internalGetAnnotations().getMap().entrySet()) { + com.google.protobuf.MapEntry annotations__ = + AnnotationsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, annotations__); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getCreateTime()); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getUpdateTime()); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getDeleteTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(9, etag_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(network_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(10, network_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(subnetwork_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(11, subnetwork_); + } + if (((bitField0_ & 0x00000008) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(12, getPrivateClusterConfig()); + } + if (degraded_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(13, degraded_); + } + for (int i = 0; i < conditions_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, conditions_.get(i)); + } + for (java.util.Map.Entry entry : + internalGetLabels().getMap().entrySet()) { + com.google.protobuf.MapEntry labels__ = + LabelsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(15, labels__); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(controlPlaneIp_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(16, controlPlaneIp_); + } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(17, getDomainConfig()); + } + if (satisfiesPzs_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(18, satisfiesPzs_); + } + if (satisfiesPzi_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(19, satisfiesPzi_); + } + for (java.util.Map.Entry entry : + internalGetTags().getMap().entrySet()) { + com.google.protobuf.MapEntry tags__ = + TagsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(20, tags__); + } + if (((bitField0_ & 0x00000020) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(21, getGatewayConfig()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workstationAuthorizationUrl_)) { + size += + com.google.protobuf.GeneratedMessage.computeStringSize(22, workstationAuthorizationUrl_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workstationLaunchUrl_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(23, workstationLaunchUrl_); + } + 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.cloud.workstations.v1beta.WorkstationCluster)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationCluster other = + (com.google.cloud.workstations.v1beta.WorkstationCluster) obj; + + if (!getName().equals(other.getName())) return false; + if (!getDisplayName().equals(other.getDisplayName())) return false; + if (!getUid().equals(other.getUid())) return false; + if (getReconciling() != other.getReconciling()) return false; + if (!internalGetAnnotations().equals(other.internalGetAnnotations())) return false; + if (!internalGetLabels().equals(other.internalGetLabels())) return false; + if (hasCreateTime() != other.hasCreateTime()) return false; + if (hasCreateTime()) { + if (!getCreateTime().equals(other.getCreateTime())) return false; + } + if (hasUpdateTime() != other.hasUpdateTime()) return false; + if (hasUpdateTime()) { + if (!getUpdateTime().equals(other.getUpdateTime())) return false; + } + if (hasDeleteTime() != other.hasDeleteTime()) return false; + if (hasDeleteTime()) { + if (!getDeleteTime().equals(other.getDeleteTime())) return false; + } + if (!getEtag().equals(other.getEtag())) return false; + if (!getNetwork().equals(other.getNetwork())) return false; + if (!getSubnetwork().equals(other.getSubnetwork())) return false; + if (!getControlPlaneIp().equals(other.getControlPlaneIp())) return false; + if (hasPrivateClusterConfig() != other.hasPrivateClusterConfig()) return false; + if (hasPrivateClusterConfig()) { + if (!getPrivateClusterConfig().equals(other.getPrivateClusterConfig())) return false; + } + if (hasDomainConfig() != other.hasDomainConfig()) return false; + if (hasDomainConfig()) { + if (!getDomainConfig().equals(other.getDomainConfig())) return false; + } + if (getDegraded() != other.getDegraded()) return false; + if (!getConditionsList().equals(other.getConditionsList())) return false; + if (getSatisfiesPzs() != other.getSatisfiesPzs()) return false; + if (getSatisfiesPzi() != other.getSatisfiesPzi()) return false; + if (!internalGetTags().equals(other.internalGetTags())) return false; + if (hasGatewayConfig() != other.hasGatewayConfig()) return false; + if (hasGatewayConfig()) { + if (!getGatewayConfig().equals(other.getGatewayConfig())) return false; + } + if (!getWorkstationAuthorizationUrl().equals(other.getWorkstationAuthorizationUrl())) + return false; + if (!getWorkstationLaunchUrl().equals(other.getWorkstationLaunchUrl())) 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) + DISPLAY_NAME_FIELD_NUMBER; + hash = (53 * hash) + getDisplayName().hashCode(); + hash = (37 * hash) + UID_FIELD_NUMBER; + hash = (53 * hash) + getUid().hashCode(); + hash = (37 * hash) + RECONCILING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReconciling()); + if (!internalGetAnnotations().getMap().isEmpty()) { + hash = (37 * hash) + ANNOTATIONS_FIELD_NUMBER; + hash = (53 * hash) + internalGetAnnotations().hashCode(); + } + if (!internalGetLabels().getMap().isEmpty()) { + hash = (37 * hash) + LABELS_FIELD_NUMBER; + hash = (53 * hash) + internalGetLabels().hashCode(); + } + if (hasCreateTime()) { + hash = (37 * hash) + CREATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getCreateTime().hashCode(); + } + if (hasUpdateTime()) { + hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getUpdateTime().hashCode(); + } + if (hasDeleteTime()) { + hash = (37 * hash) + DELETE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getDeleteTime().hashCode(); + } + hash = (37 * hash) + ETAG_FIELD_NUMBER; + hash = (53 * hash) + getEtag().hashCode(); + hash = (37 * hash) + NETWORK_FIELD_NUMBER; + hash = (53 * hash) + getNetwork().hashCode(); + hash = (37 * hash) + SUBNETWORK_FIELD_NUMBER; + hash = (53 * hash) + getSubnetwork().hashCode(); + hash = (37 * hash) + CONTROL_PLANE_IP_FIELD_NUMBER; + hash = (53 * hash) + getControlPlaneIp().hashCode(); + if (hasPrivateClusterConfig()) { + hash = (37 * hash) + PRIVATE_CLUSTER_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getPrivateClusterConfig().hashCode(); + } + if (hasDomainConfig()) { + hash = (37 * hash) + DOMAIN_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getDomainConfig().hashCode(); + } + hash = (37 * hash) + DEGRADED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDegraded()); + if (getConditionsCount() > 0) { + hash = (37 * hash) + CONDITIONS_FIELD_NUMBER; + hash = (53 * hash) + getConditionsList().hashCode(); + } + hash = (37 * hash) + SATISFIES_PZS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getSatisfiesPzs()); + hash = (37 * hash) + SATISFIES_PZI_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getSatisfiesPzi()); + if (!internalGetTags().getMap().isEmpty()) { + hash = (37 * hash) + TAGS_FIELD_NUMBER; + hash = (53 * hash) + internalGetTags().hashCode(); + } + if (hasGatewayConfig()) { + hash = (37 * hash) + GATEWAY_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getGatewayConfig().hashCode(); + } + hash = (37 * hash) + WORKSTATION_AUTHORIZATION_URL_FIELD_NUMBER; + hash = (53 * hash) + getWorkstationAuthorizationUrl().hashCode(); + hash = (37 * hash) + WORKSTATION_LAUNCH_URL_FIELD_NUMBER; + hash = (53 * hash) + getWorkstationLaunchUrl().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationCluster 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.cloud.workstations.v1beta.WorkstationCluster parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationCluster parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationCluster 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.cloud.workstations.v1beta.WorkstationCluster parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationCluster 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.cloud.workstations.v1beta.WorkstationCluster parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationCluster 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.cloud.workstations.v1beta.WorkstationCluster 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 workstation cluster resource in the Cloud Workstations API.
            +   *
            +   * Defines a group of workstations in a particular region and the
            +   * VPC network they're attached to.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationCluster} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationCluster) + com.google.cloud.workstations.v1beta.WorkstationClusterOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_descriptor; + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 5: + return internalGetAnnotations(); + case 15: + return internalGetLabels(); + case 20: + return internalGetTags(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( + int number) { + switch (number) { + case 5: + return internalGetMutableAnnotations(); + case 15: + return internalGetMutableLabels(); + case 20: + return internalGetMutableTags(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationCluster.class, + com.google.cloud.workstations.v1beta.WorkstationCluster.Builder.class); + } + + // Construct using com.google.cloud.workstations.v1beta.WorkstationCluster.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetCreateTimeFieldBuilder(); + internalGetUpdateTimeFieldBuilder(); + internalGetDeleteTimeFieldBuilder(); + internalGetPrivateClusterConfigFieldBuilder(); + internalGetDomainConfigFieldBuilder(); + internalGetConditionsFieldBuilder(); + internalGetGatewayConfigFieldBuilder(); + } + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + displayName_ = ""; + uid_ = ""; + reconciling_ = false; + internalGetMutableAnnotations().clear(); + internalGetMutableLabels().clear(); + createTime_ = null; + if (createTimeBuilder_ != null) { + createTimeBuilder_.dispose(); + createTimeBuilder_ = null; + } + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; + } + deleteTime_ = null; + if (deleteTimeBuilder_ != null) { + deleteTimeBuilder_.dispose(); + deleteTimeBuilder_ = null; + } + etag_ = ""; + network_ = ""; + subnetwork_ = ""; + controlPlaneIp_ = ""; + privateClusterConfig_ = null; + if (privateClusterConfigBuilder_ != null) { + privateClusterConfigBuilder_.dispose(); + privateClusterConfigBuilder_ = null; + } + domainConfig_ = null; + if (domainConfigBuilder_ != null) { + domainConfigBuilder_.dispose(); + domainConfigBuilder_ = null; + } + degraded_ = false; + if (conditionsBuilder_ == null) { + conditions_ = java.util.Collections.emptyList(); + } else { + conditions_ = null; + conditionsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00010000); + satisfiesPzs_ = false; + satisfiesPzi_ = false; + internalGetMutableTags().clear(); + gatewayConfig_ = null; + if (gatewayConfigBuilder_ != null) { + gatewayConfigBuilder_.dispose(); + gatewayConfigBuilder_ = null; + } + workstationAuthorizationUrl_ = ""; + workstationLaunchUrl_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationCluster_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationCluster.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster build() { + com.google.cloud.workstations.v1beta.WorkstationCluster result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationCluster buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationCluster result = + new com.google.cloud.workstations.v1beta.WorkstationCluster(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields( + com.google.cloud.workstations.v1beta.WorkstationCluster result) { + if (conditionsBuilder_ == null) { + if (((bitField0_ & 0x00010000) != 0)) { + conditions_ = java.util.Collections.unmodifiableList(conditions_); + bitField0_ = (bitField0_ & ~0x00010000); + } + result.conditions_ = conditions_; + } else { + result.conditions_ = conditionsBuilder_.build(); + } + } + + private void buildPartial0(com.google.cloud.workstations.v1beta.WorkstationCluster result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.displayName_ = displayName_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.uid_ = uid_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { result.reconciling_ = reconciling_; } - if (((from_bitField0_ & 0x00000010) != 0)) { - result.annotations_ = internalGetAnnotations(); - result.annotations_.makeImmutable(); + if (((from_bitField0_ & 0x00000010) != 0)) { + result.annotations_ = internalGetAnnotations(); + result.annotations_.makeImmutable(); + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.labels_ = internalGetLabels(); + result.labels_.makeImmutable(); + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000040) != 0)) { + result.createTime_ = createTimeBuilder_ == null ? createTime_ : createTimeBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.updateTime_ = updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.deleteTime_ = deleteTimeBuilder_ == null ? deleteTime_ : deleteTimeBuilder_.build(); + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.etag_ = etag_; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.network_ = network_; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.subnetwork_ = subnetwork_; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.controlPlaneIp_ = controlPlaneIp_; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.privateClusterConfig_ = + privateClusterConfigBuilder_ == null + ? privateClusterConfig_ + : privateClusterConfigBuilder_.build(); + to_bitField0_ |= 0x00000008; + } + if (((from_bitField0_ & 0x00004000) != 0)) { + result.domainConfig_ = + domainConfigBuilder_ == null ? domainConfig_ : domainConfigBuilder_.build(); + to_bitField0_ |= 0x00000010; + } + if (((from_bitField0_ & 0x00008000) != 0)) { + result.degraded_ = degraded_; + } + if (((from_bitField0_ & 0x00020000) != 0)) { + result.satisfiesPzs_ = satisfiesPzs_; + } + if (((from_bitField0_ & 0x00040000) != 0)) { + result.satisfiesPzi_ = satisfiesPzi_; + } + if (((from_bitField0_ & 0x00080000) != 0)) { + result.tags_ = internalGetTags(); + result.tags_.makeImmutable(); + } + if (((from_bitField0_ & 0x00100000) != 0)) { + result.gatewayConfig_ = + gatewayConfigBuilder_ == null ? gatewayConfig_ : gatewayConfigBuilder_.build(); + to_bitField0_ |= 0x00000020; + } + if (((from_bitField0_ & 0x00200000) != 0)) { + result.workstationAuthorizationUrl_ = workstationAuthorizationUrl_; + } + if (((from_bitField0_ & 0x00400000) != 0)) { + result.workstationLaunchUrl_ = workstationLaunchUrl_; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1beta.WorkstationCluster) { + return mergeFrom((com.google.cloud.workstations.v1beta.WorkstationCluster) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.workstations.v1beta.WorkstationCluster other) { + if (other == com.google.cloud.workstations.v1beta.WorkstationCluster.getDefaultInstance()) + return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getDisplayName().isEmpty()) { + displayName_ = other.displayName_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getUid().isEmpty()) { + uid_ = other.uid_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getReconciling() != false) { + setReconciling(other.getReconciling()); + } + internalGetMutableAnnotations().mergeFrom(other.internalGetAnnotations()); + bitField0_ |= 0x00000010; + internalGetMutableLabels().mergeFrom(other.internalGetLabels()); + bitField0_ |= 0x00000020; + if (other.hasCreateTime()) { + mergeCreateTime(other.getCreateTime()); + } + if (other.hasUpdateTime()) { + mergeUpdateTime(other.getUpdateTime()); + } + if (other.hasDeleteTime()) { + mergeDeleteTime(other.getDeleteTime()); + } + if (!other.getEtag().isEmpty()) { + etag_ = other.etag_; + bitField0_ |= 0x00000200; + onChanged(); + } + if (!other.getNetwork().isEmpty()) { + network_ = other.network_; + bitField0_ |= 0x00000400; + onChanged(); + } + if (!other.getSubnetwork().isEmpty()) { + subnetwork_ = other.subnetwork_; + bitField0_ |= 0x00000800; + onChanged(); + } + if (!other.getControlPlaneIp().isEmpty()) { + controlPlaneIp_ = other.controlPlaneIp_; + bitField0_ |= 0x00001000; + onChanged(); + } + if (other.hasPrivateClusterConfig()) { + mergePrivateClusterConfig(other.getPrivateClusterConfig()); + } + if (other.hasDomainConfig()) { + mergeDomainConfig(other.getDomainConfig()); + } + if (other.getDegraded() != false) { + setDegraded(other.getDegraded()); + } + if (conditionsBuilder_ == null) { + if (!other.conditions_.isEmpty()) { + if (conditions_.isEmpty()) { + conditions_ = other.conditions_; + bitField0_ = (bitField0_ & ~0x00010000); + } else { + ensureConditionsIsMutable(); + conditions_.addAll(other.conditions_); + } + onChanged(); + } + } else { + if (!other.conditions_.isEmpty()) { + if (conditionsBuilder_.isEmpty()) { + conditionsBuilder_.dispose(); + conditionsBuilder_ = null; + conditions_ = other.conditions_; + bitField0_ = (bitField0_ & ~0x00010000); + conditionsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetConditionsFieldBuilder() + : null; + } else { + conditionsBuilder_.addAllMessages(other.conditions_); + } + } + } + if (other.getSatisfiesPzs() != false) { + setSatisfiesPzs(other.getSatisfiesPzs()); + } + if (other.getSatisfiesPzi() != false) { + setSatisfiesPzi(other.getSatisfiesPzi()); + } + internalGetMutableTags().mergeFrom(other.internalGetTags()); + bitField0_ |= 0x00080000; + if (other.hasGatewayConfig()) { + mergeGatewayConfig(other.getGatewayConfig()); + } + if (!other.getWorkstationAuthorizationUrl().isEmpty()) { + workstationAuthorizationUrl_ = other.workstationAuthorizationUrl_; + bitField0_ |= 0x00200000; + onChanged(); + } + if (!other.getWorkstationLaunchUrl().isEmpty()) { + workstationLaunchUrl_ = other.workstationLaunchUrl_; + bitField0_ |= 0x00400000; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + name_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + displayName_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + uid_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: + { + reconciling_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 42: + { + com.google.protobuf.MapEntry annotations__ = + input.readMessage( + AnnotationsDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableAnnotations() + .getMutableMap() + .put(annotations__.getKey(), annotations__.getValue()); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 50: + { + input.readMessage( + internalGetCreateTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000040; + break; + } // case 50 + case 58: + { + input.readMessage( + internalGetUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000080; + break; + } // case 58 + case 66: + { + input.readMessage( + internalGetDeleteTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000100; + break; + } // case 66 + case 74: + { + etag_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000200; + break; + } // case 74 + case 82: + { + network_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000400; + break; + } // case 82 + case 90: + { + subnetwork_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000800; + break; + } // case 90 + case 98: + { + input.readMessage( + internalGetPrivateClusterConfigFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00002000; + break; + } // case 98 + case 104: + { + degraded_ = input.readBool(); + bitField0_ |= 0x00008000; + break; + } // case 104 + case 114: + { + com.google.rpc.Status m = + input.readMessage(com.google.rpc.Status.parser(), extensionRegistry); + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(m); + } else { + conditionsBuilder_.addMessage(m); + } + break; + } // case 114 + case 122: + { + com.google.protobuf.MapEntry labels__ = + input.readMessage( + LabelsDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableLabels() + .getMutableMap() + .put(labels__.getKey(), labels__.getValue()); + bitField0_ |= 0x00000020; + break; + } // case 122 + case 130: + { + controlPlaneIp_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00001000; + break; + } // case 130 + case 138: + { + input.readMessage( + internalGetDomainConfigFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00004000; + break; + } // case 138 + case 144: + { + satisfiesPzs_ = input.readBool(); + bitField0_ |= 0x00020000; + break; + } // case 144 + case 152: + { + satisfiesPzi_ = input.readBool(); + bitField0_ |= 0x00040000; + break; + } // case 152 + case 162: + { + com.google.protobuf.MapEntry tags__ = + input.readMessage( + TagsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); + internalGetMutableTags().getMutableMap().put(tags__.getKey(), tags__.getValue()); + bitField0_ |= 0x00080000; + break; + } // case 162 + case 170: + { + input.readMessage( + internalGetGatewayConfigFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00100000; + break; + } // case 170 + case 178: + { + workstationAuthorizationUrl_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00200000; + break; + } // case 178 + case 186: + { + workstationLaunchUrl_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00400000; + break; + } // case 186 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object name_ = ""; + + /** + * + * + *
            +     * Identifier. Full name of this workstation cluster.
            +     * 
            + * + * 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. Full name of this workstation cluster.
            +     * 
            + * + * 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; } - if (((from_bitField0_ & 0x00000020) != 0)) { - result.labels_ = internalGetLabels(); - result.labels_.makeImmutable(); + } + + /** + * + * + *
            +     * Identifier. Full name of this workstation cluster.
            +     * 
            + * + * 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(); } - int to_bitField0_ = 0; - if (((from_bitField0_ & 0x00000040) != 0)) { - result.createTime_ = createTimeBuilder_ == null ? createTime_ : createTimeBuilder_.build(); - to_bitField0_ |= 0x00000001; + name_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Identifier. Full name of this workstation cluster.
            +     * 
            + * + * 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. Full name of this workstation cluster.
            +     * 
            + * + * 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 displayName_ = ""; + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation cluster.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The displayName. + */ + public java.lang.String getDisplayName() { + java.lang.Object ref = displayName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + displayName_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation cluster.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for displayName. + */ + public com.google.protobuf.ByteString getDisplayNameBytes() { + java.lang.Object ref = displayName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + displayName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation cluster.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The displayName to set. + * @return This builder for chaining. + */ + public Builder setDisplayName(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + displayName_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation cluster.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearDisplayName() { + displayName_ = getDefaultInstance().getDisplayName(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Human-readable name for this workstation cluster.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for displayName to set. + * @return This builder for chaining. + */ + public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - if (((from_bitField0_ & 0x00000080) != 0)) { - result.updateTime_ = updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build(); - to_bitField0_ |= 0x00000002; + checkByteStringIsUtf8(value); + displayName_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object uid_ = ""; + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * cluster.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The uid. + */ + public java.lang.String getUid() { + java.lang.Object ref = uid_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + uid_ = s; + return s; + } else { + return (java.lang.String) ref; } - if (((from_bitField0_ & 0x00000100) != 0)) { - result.deleteTime_ = deleteTimeBuilder_ == null ? deleteTime_ : deleteTimeBuilder_.build(); - to_bitField0_ |= 0x00000004; + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * cluster.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The bytes for uid. + */ + public com.google.protobuf.ByteString getUidBytes() { + java.lang.Object ref = uid_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - if (((from_bitField0_ & 0x00000200) != 0)) { - result.etag_ = etag_; + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * cluster.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @param value The uid to set. + * @return This builder for chaining. + */ + public Builder setUid(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - if (((from_bitField0_ & 0x00000400) != 0)) { - result.network_ = network_; + uid_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * cluster.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearUid() { + uid_ = getDefaultInstance().getUid(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * cluster.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @param value The bytes for uid to set. + * @return This builder for chaining. + */ + public Builder setUidBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - if (((from_bitField0_ & 0x00000800) != 0)) { - result.subnetwork_ = subnetwork_; + checkByteStringIsUtf8(value); + uid_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private boolean reconciling_; + + /** + * + * + *
            +     * Output only. Indicates whether this workstation cluster is currently being
            +     * updated to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The reconciling. + */ + @java.lang.Override + public boolean getReconciling() { + return reconciling_; + } + + /** + * + * + *
            +     * Output only. Indicates whether this workstation cluster is currently being
            +     * updated to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The reconciling to set. + * @return This builder for chaining. + */ + public Builder setReconciling(boolean value) { + + reconciling_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Indicates whether this workstation cluster is currently being
            +     * updated to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearReconciling() { + bitField0_ = (bitField0_ & ~0x00000008); + reconciling_ = false; + onChanged(); + return this; + } + + private com.google.protobuf.MapField annotations_; + + private com.google.protobuf.MapField + internalGetAnnotations() { + if (annotations_ == null) { + return com.google.protobuf.MapField.emptyMapField( + AnnotationsDefaultEntryHolder.defaultEntry); } - if (((from_bitField0_ & 0x00001000) != 0)) { - result.controlPlaneIp_ = controlPlaneIp_; + return annotations_; + } + + private com.google.protobuf.MapField + internalGetMutableAnnotations() { + if (annotations_ == null) { + annotations_ = + com.google.protobuf.MapField.newMapField(AnnotationsDefaultEntryHolder.defaultEntry); } - if (((from_bitField0_ & 0x00002000) != 0)) { - result.privateClusterConfig_ = - privateClusterConfigBuilder_ == null - ? privateClusterConfig_ - : privateClusterConfigBuilder_.build(); - to_bitField0_ |= 0x00000008; + if (!annotations_.isMutable()) { + annotations_ = annotations_.copy(); } - if (((from_bitField0_ & 0x00004000) != 0)) { - result.degraded_ = degraded_; + bitField0_ |= 0x00000010; + onChanged(); + return annotations_; + } + + public int getAnnotationsCount() { + return internalGetAnnotations().getMap().size(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - result.bitField0_ |= to_bitField0_; + return internalGetAnnotations().getMap().containsKey(key); } + /** Use {@link #getAnnotationsMap()} instead. */ @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.cloud.workstations.v1beta.WorkstationCluster) { - return mergeFrom((com.google.cloud.workstations.v1beta.WorkstationCluster) other); - } else { - super.mergeFrom(other); - return this; - } + @java.lang.Deprecated + public java.util.Map getAnnotations() { + return getAnnotationsMap(); } - public Builder mergeFrom(com.google.cloud.workstations.v1beta.WorkstationCluster other) { - if (other == com.google.cloud.workstations.v1beta.WorkstationCluster.getDefaultInstance()) - return this; - if (!other.getName().isEmpty()) { - name_ = other.name_; - bitField0_ |= 0x00000001; - onChanged(); + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getAnnotationsMap() { + return internalGetAnnotations().getMap(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getAnnotationsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); } - if (!other.getDisplayName().isEmpty()) { - displayName_ = other.displayName_; - bitField0_ |= 0x00000002; - onChanged(); + java.util.Map map = internalGetAnnotations().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getAnnotationsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - if (!other.getUid().isEmpty()) { - uid_ = other.uid_; - bitField0_ |= 0x00000004; - onChanged(); + java.util.Map map = internalGetAnnotations().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); } - if (other.getReconciling() != false) { - setReconciling(other.getReconciling()); + return map.get(key); + } + + public Builder clearAnnotations() { + bitField0_ = (bitField0_ & ~0x00000010); + internalGetMutableAnnotations().getMutableMap().clear(); + return this; + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - internalGetMutableAnnotations().mergeFrom(other.internalGetAnnotations()); + internalGetMutableAnnotations().getMutableMap().remove(key); + return this; + } + + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableAnnotations() { bitField0_ |= 0x00000010; - internalGetMutableLabels().mergeFrom(other.internalGetLabels()); - bitField0_ |= 0x00000020; - if (other.hasCreateTime()) { - mergeCreateTime(other.getCreateTime()); + return internalGetMutableAnnotations().getMutableMap(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAnnotations(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); } - if (other.hasUpdateTime()) { - mergeUpdateTime(other.getUpdateTime()); + if (value == null) { + throw new NullPointerException("map value"); } - if (other.hasDeleteTime()) { - mergeDeleteTime(other.getDeleteTime()); + internalGetMutableAnnotations().getMutableMap().put(key, value); + bitField0_ |= 0x00000010; + return this; + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAllAnnotations(java.util.Map values) { + internalGetMutableAnnotations().getMutableMap().putAll(values); + bitField0_ |= 0x00000010; + return this; + } + + private com.google.protobuf.MapField labels_; + + private com.google.protobuf.MapField internalGetLabels() { + if (labels_ == null) { + return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); } - if (!other.getEtag().isEmpty()) { - etag_ = other.etag_; - bitField0_ |= 0x00000200; - onChanged(); + return labels_; + } + + private com.google.protobuf.MapField + internalGetMutableLabels() { + if (labels_ == null) { + labels_ = com.google.protobuf.MapField.newMapField(LabelsDefaultEntryHolder.defaultEntry); } - if (!other.getNetwork().isEmpty()) { - network_ = other.network_; - bitField0_ |= 0x00000400; - onChanged(); + if (!labels_.isMutable()) { + labels_ = labels_.copy(); } - if (!other.getSubnetwork().isEmpty()) { - subnetwork_ = other.subnetwork_; - bitField0_ |= 0x00000800; - onChanged(); + bitField0_ |= 0x00000020; + onChanged(); + return labels_; + } + + public int getLabelsCount() { + return internalGetLabels().getMap().size(); + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation cluster and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - if (!other.getControlPlaneIp().isEmpty()) { - controlPlaneIp_ = other.controlPlaneIp_; - bitField0_ |= 0x00001000; - onChanged(); + return internalGetLabels().getMap().containsKey(key); + } + + /** Use {@link #getLabelsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getLabels() { + return getLabelsMap(); + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation cluster and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getLabelsMap() { + return internalGetLabels().getMap(); + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation cluster and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getLabelsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); } - if (other.hasPrivateClusterConfig()) { - mergePrivateClusterConfig(other.getPrivateClusterConfig()); + java.util.Map map = internalGetLabels().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation cluster and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getLabelsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - if (other.getDegraded() != false) { - setDegraded(other.getDegraded()); + java.util.Map map = internalGetLabels().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); } - if (conditionsBuilder_ == null) { - if (!other.conditions_.isEmpty()) { - if (conditions_.isEmpty()) { - conditions_ = other.conditions_; - bitField0_ = (bitField0_ & ~0x00008000); - } else { - ensureConditionsIsMutable(); - conditions_.addAll(other.conditions_); - } - onChanged(); - } - } else { - if (!other.conditions_.isEmpty()) { - if (conditionsBuilder_.isEmpty()) { - conditionsBuilder_.dispose(); - conditionsBuilder_ = null; - conditions_ = other.conditions_; - bitField0_ = (bitField0_ & ~0x00008000); - conditionsBuilder_ = - com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders - ? internalGetConditionsFieldBuilder() - : null; - } else { - conditionsBuilder_.addAllMessages(other.conditions_); - } - } + return map.get(key); + } + + public Builder clearLabels() { + bitField0_ = (bitField0_ & ~0x00000020); + internalGetMutableLabels().getMutableMap().clear(); + return this; + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation cluster and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder removeLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); + internalGetMutableLabels().getMutableMap().remove(key); return this; } - @java.lang.Override - public final boolean isInitialized() { - return true; + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableLabels() { + bitField0_ |= 0x00000020; + return internalGetMutableLabels().getMutableMap(); } - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - name_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - displayName_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 18 - case 26: - { - uid_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000004; - break; - } // case 26 - case 32: - { - reconciling_ = input.readBool(); - bitField0_ |= 0x00000008; - break; - } // case 32 - case 42: - { - com.google.protobuf.MapEntry annotations__ = - input.readMessage( - AnnotationsDefaultEntryHolder.defaultEntry.getParserForType(), - extensionRegistry); - internalGetMutableAnnotations() - .getMutableMap() - .put(annotations__.getKey(), annotations__.getValue()); - bitField0_ |= 0x00000010; - break; - } // case 42 - case 50: - { - input.readMessage( - internalGetCreateTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000040; - break; - } // case 50 - case 58: - { - input.readMessage( - internalGetUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000080; - break; - } // case 58 - case 66: - { - input.readMessage( - internalGetDeleteTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000100; - break; - } // case 66 - case 74: - { - etag_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000200; - break; - } // case 74 - case 82: - { - network_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000400; - break; - } // case 82 - case 90: - { - subnetwork_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000800; - break; - } // case 90 - case 98: - { - input.readMessage( - internalGetPrivateClusterConfigFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00002000; - break; - } // case 98 - case 104: - { - degraded_ = input.readBool(); - bitField0_ |= 0x00004000; - break; - } // case 104 - case 114: - { - com.google.rpc.Status m = - input.readMessage(com.google.rpc.Status.parser(), extensionRegistry); - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.add(m); - } else { - conditionsBuilder_.addMessage(m); - } - break; - } // case 114 - case 122: - { - com.google.protobuf.MapEntry labels__ = - input.readMessage( - LabelsDefaultEntryHolder.defaultEntry.getParserForType(), - extensionRegistry); - internalGetMutableLabels() - .getMutableMap() - .put(labels__.getKey(), labels__.getValue()); - bitField0_ |= 0x00000020; - break; - } // case 122 - case 130: - { - controlPlaneIp_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00001000; - break; - } // case 130 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation cluster and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder putLabels(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableLabels().getMutableMap().put(key, value); + bitField0_ |= 0x00000020; return this; } - private int bitField0_; + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation cluster and that are also propagated to the
            +     * underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder putAllLabels(java.util.Map values) { + internalGetMutableLabels().getMutableMap().putAll(values); + bitField0_ |= 0x00000020; + return this; + } - private java.lang.Object name_ = ""; + private com.google.protobuf.Timestamp createTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + createTimeBuilder_; /** * * *
            -     * Full name of this workstation cluster.
            +     * Output only. Time when this workstation cluster was created.
                  * 
            * - * string name = 1; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The name. + * @return Whether the createTime field is set. */ - 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; - } + public boolean hasCreateTime() { + return ((bitField0_ & 0x00000040) != 0); } /** * * *
            -     * Full name of this workstation cluster.
            +     * Output only. Time when this workstation cluster was created.
                  * 
            * - * string name = 1; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The bytes for name. + * @return The createTime. */ - 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; + public com.google.protobuf.Timestamp getCreateTime() { + if (createTimeBuilder_ == null) { + return createTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : createTime_; } else { - return (com.google.protobuf.ByteString) ref; + return createTimeBuilder_.getMessage(); } } @@ -3360,20 +5911,23 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -     * Full name of this workstation cluster.
            +     * Output only. Time when this workstation cluster was created.
                  * 
            * - * string name = 1; - * - * @param value The name to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setName(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder setCreateTime(com.google.protobuf.Timestamp value) { + if (createTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + createTime_ = value; + } else { + createTimeBuilder_.setMessage(value); } - name_ = value; - bitField0_ |= 0x00000001; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -3382,16 +5936,20 @@ public Builder setName(java.lang.String value) { * * *
            -     * Full name of this workstation cluster.
            +     * Output only. Time when this workstation cluster was created.
                  * 
            * - * string name = 1; - * - * @return This builder for chaining. + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearName() { - name_ = getDefaultInstance().getName(); - bitField0_ = (bitField0_ & ~0x00000001); + public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (createTimeBuilder_ == null) { + createTime_ = builderForValue.build(); + } else { + createTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -3400,47 +5958,164 @@ public Builder clearName() { * * *
            -     * Full name of this workstation cluster.
            +     * Output only. Time when this workstation cluster was created.
                  * 
            * - * string name = 1; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { + if (createTimeBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0) + && createTime_ != null + && createTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getCreateTimeBuilder().mergeFrom(value); + } else { + createTime_ = value; + } + } else { + createTimeBuilder_.mergeFrom(value); + } + if (createTime_ != null) { + bitField0_ |= 0x00000040; + onChanged(); + } + return this; + } + + /** + * * - * @param value The bytes for name to set. - * @return This builder for chaining. + *
            +     * Output only. Time when this workstation cluster was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setNameBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder clearCreateTime() { + bitField0_ = (bitField0_ & ~0x00000040); + createTime_ = null; + if (createTimeBuilder_ != null) { + createTimeBuilder_.dispose(); + createTimeBuilder_ = null; } - checkByteStringIsUtf8(value); - name_ = value; - bitField0_ |= 0x00000001; onChanged(); return this; } - private java.lang.Object displayName_ = ""; + /** + * + * + *
            +     * Output only. Time when this workstation cluster was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { + bitField0_ |= 0x00000040; + onChanged(); + return internalGetCreateTimeFieldBuilder().getBuilder(); + } /** * * *
            -     * Optional. Human-readable name for this workstation cluster.
            +     * Output only. Time when this workstation cluster was created.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { + if (createTimeBuilder_ != null) { + return createTimeBuilder_.getMessageOrBuilder(); + } else { + return createTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : createTime_; + } + } + + /** * - * @return The displayName. + * + *
            +     * Output only. Time when this workstation cluster was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getDisplayName() { - java.lang.Object ref = displayName_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - displayName_ = s; - return s; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetCreateTimeFieldBuilder() { + if (createTimeBuilder_ == null) { + createTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getCreateTime(), getParentForChildren(), isClean()); + createTime_ = null; + } + return createTimeBuilder_; + } + + private com.google.protobuf.Timestamp updateTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + updateTimeBuilder_; + + /** + * + * + *
            +     * Output only. Time when this workstation cluster was most recently updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the updateTime field is set. + */ + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000080) != 0); + } + + /** + * + * + *
            +     * Output only. Time when this workstation cluster was most recently updated.
            +     * 
            + * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The updateTime. + */ + public com.google.protobuf.Timestamp getUpdateTime() { + if (updateTimeBuilder_ == null) { + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; } else { - return (java.lang.String) ref; + return updateTimeBuilder_.getMessage(); } } @@ -3448,43 +6123,45 @@ public java.lang.String getDisplayName() { * * *
            -     * Optional. Human-readable name for this workstation cluster.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for displayName. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getDisplayNameBytes() { - java.lang.Object ref = displayName_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - displayName_ = b; - return b; + public Builder setUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + updateTime_ = value; } else { - return (com.google.protobuf.ByteString) ref; + updateTimeBuilder_.setMessage(value); } + bitField0_ |= 0x00000080; + onChanged(); + return this; } /** * * *
            -     * Optional. Human-readable name for this workstation cluster.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The displayName to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setDisplayName(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (updateTimeBuilder_ == null) { + updateTime_ = builderForValue.build(); + } else { + updateTimeBuilder_.setMessage(builderForValue.build()); } - displayName_ = value; - bitField0_ |= 0x00000002; + bitField0_ |= 0x00000080; onChanged(); return this; } @@ -3493,17 +6170,29 @@ public Builder setDisplayName(java.lang.String value) { * * *
            -     * Optional. Human-readable name for this workstation cluster.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearDisplayName() { - displayName_ = getDefaultInstance().getDisplayName(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); + public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (((bitField0_ & 0x00000080) != 0) + && updateTime_ != null + && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getUpdateTimeBuilder().mergeFrom(value); + } else { + updateTime_ = value; + } + } else { + updateTimeBuilder_.mergeFrom(value); + } + if (updateTime_ != null) { + bitField0_ |= 0x00000080; + onChanged(); + } return this; } @@ -3511,72 +6200,59 @@ public Builder clearDisplayName() { * * *
            -     * Optional. Human-readable name for this workstation cluster.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for displayName to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder clearUpdateTime() { + bitField0_ = (bitField0_ & ~0x00000080); + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; } - checkByteStringIsUtf8(value); - displayName_ = value; - bitField0_ |= 0x00000002; onChanged(); return this; } - private java.lang.Object uid_ = ""; - /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * cluster.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The uid. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getUid() { - java.lang.Object ref = uid_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - uid_ = s; - return s; - } else { - return (java.lang.String) ref; - } + public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { + bitField0_ |= 0x00000080; + onChanged(); + return internalGetUpdateTimeFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * cluster.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for uid. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getUidBytes() { - java.lang.Object ref = uid_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - uid_ = b; - return b; + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + if (updateTimeBuilder_ != null) { + return updateTimeBuilder_.getMessageOrBuilder(); } else { - return (com.google.protobuf.ByteString) ref; + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; } } @@ -3584,104 +6260,120 @@ public com.google.protobuf.ByteString getUidBytes() { * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * cluster.
            +     * Output only. Time when this workstation cluster was most recently updated.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The uid to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setUid(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetUpdateTimeFieldBuilder() { + if (updateTimeBuilder_ == null) { + updateTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getUpdateTime(), getParentForChildren(), isClean()); + updateTime_ = null; } - uid_ = value; - bitField0_ |= 0x00000004; - onChanged(); - return this; + return updateTimeBuilder_; } + private com.google.protobuf.Timestamp deleteTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + deleteTimeBuilder_; + /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * cluster.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return This builder for chaining. + * @return Whether the deleteTime field is set. */ - public Builder clearUid() { - uid_ = getDefaultInstance().getUid(); - bitField0_ = (bitField0_ & ~0x00000004); - onChanged(); - return this; + public boolean hasDeleteTime() { + return ((bitField0_ & 0x00000100) != 0); } /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * cluster.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The bytes for uid to set. - * @return This builder for chaining. + * @return The deleteTime. */ - public Builder setUidBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public com.google.protobuf.Timestamp getDeleteTime() { + if (deleteTimeBuilder_ == null) { + return deleteTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : deleteTime_; + } else { + return deleteTimeBuilder_.getMessage(); } - checkByteStringIsUtf8(value); - uid_ = value; - bitField0_ |= 0x00000004; - onChanged(); - return this; } - private boolean reconciling_; - /** * * *
            -     * Output only. Indicates whether this workstation cluster is currently being
            -     * updated to match its intended state.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The reconciling. + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public boolean getReconciling() { - return reconciling_; + public Builder setDeleteTime(com.google.protobuf.Timestamp value) { + if (deleteTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deleteTime_ = value; + } else { + deleteTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; } /** * * *
            -     * Output only. Indicates whether this workstation cluster is currently being
            -     * updated to match its intended state.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The reconciling to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setReconciling(boolean value) { - - reconciling_ = value; - bitField0_ |= 0x00000008; + public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (deleteTimeBuilder_ == null) { + deleteTime_ = builderForValue.build(); + } else { + deleteTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000100; onChanged(); return this; } @@ -3690,324 +6382,311 @@ public Builder setReconciling(boolean value) { * * *
            -     * Output only. Indicates whether this workstation cluster is currently being
            -     * updated to match its intended state.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearReconciling() { - bitField0_ = (bitField0_ & ~0x00000008); - reconciling_ = false; - onChanged(); - return this; - } - - private com.google.protobuf.MapField annotations_; - - private com.google.protobuf.MapField - internalGetAnnotations() { - if (annotations_ == null) { - return com.google.protobuf.MapField.emptyMapField( - AnnotationsDefaultEntryHolder.defaultEntry); - } - return annotations_; - } - - private com.google.protobuf.MapField - internalGetMutableAnnotations() { - if (annotations_ == null) { - annotations_ = - com.google.protobuf.MapField.newMapField(AnnotationsDefaultEntryHolder.defaultEntry); + public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { + if (deleteTimeBuilder_ == null) { + if (((bitField0_ & 0x00000100) != 0) + && deleteTime_ != null + && deleteTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getDeleteTimeBuilder().mergeFrom(value); + } else { + deleteTime_ = value; + } + } else { + deleteTimeBuilder_.mergeFrom(value); } - if (!annotations_.isMutable()) { - annotations_ = annotations_.copy(); + if (deleteTime_ != null) { + bitField0_ |= 0x00000100; + onChanged(); } - bitField0_ |= 0x00000010; - onChanged(); - return annotations_; - } - - public int getAnnotationsCount() { - return internalGetAnnotations().getMap().size(); + return this; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - @java.lang.Override - public boolean containsAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder clearDeleteTime() { + bitField0_ = (bitField0_ & ~0x00000100); + deleteTime_ = null; + if (deleteTimeBuilder_ != null) { + deleteTimeBuilder_.dispose(); + deleteTimeBuilder_ = null; } - return internalGetAnnotations().getMap().containsKey(key); - } - - /** Use {@link #getAnnotationsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getAnnotations() { - return getAnnotationsMap(); + onChanged(); + return this; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - @java.lang.Override - public java.util.Map getAnnotationsMap() { - return internalGetAnnotations().getMap(); + public com.google.protobuf.Timestamp.Builder getDeleteTimeBuilder() { + bitField0_ |= 0x00000100; + onChanged(); + return internalGetDeleteTimeFieldBuilder().getBuilder(); } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - @java.lang.Override - public /* nullable */ java.lang.String getAnnotationsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { + if (deleteTimeBuilder_ != null) { + return deleteTimeBuilder_.getMessageOrBuilder(); + } else { + return deleteTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : deleteTime_; } - java.util.Map map = internalGetAnnotations().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation cluster was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - @java.lang.Override - public java.lang.String getAnnotationsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetAnnotations().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetDeleteTimeFieldBuilder() { + if (deleteTimeBuilder_ == null) { + deleteTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getDeleteTime(), getParentForChildren(), isClean()); + deleteTime_ = null; } - return map.get(key); + return deleteTimeBuilder_; } - public Builder clearAnnotations() { - bitField0_ = (bitField0_ & ~0x00000010); - internalGetMutableAnnotations().getMutableMap().clear(); - return this; - } + private java.lang.Object etag_ = ""; /** * * *
            -     * Optional. Client-specified annotations.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The etag. */ - public Builder removeAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public java.lang.String getEtag() { + java.lang.Object ref = etag_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + etag_ = s; + return s; + } else { + return (java.lang.String) ref; } - internalGetMutableAnnotations().getMutableMap().remove(key); - return this; - } - - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableAnnotations() { - bitField0_ |= 0x00000010; - return internalGetMutableAnnotations().getMutableMap(); } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for etag. */ - public Builder putAnnotations(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); - } - if (value == null) { - throw new NullPointerException("map value"); + public com.google.protobuf.ByteString getEtagBytes() { + java.lang.Object ref = etag_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + etag_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - internalGetMutableAnnotations().getMutableMap().put(key, value); - bitField0_ |= 0x00000010; - return this; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder putAllAnnotations(java.util.Map values) { - internalGetMutableAnnotations().getMutableMap().putAll(values); - bitField0_ |= 0x00000010; - return this; - } - - private com.google.protobuf.MapField labels_; - - private com.google.protobuf.MapField internalGetLabels() { - if (labels_ == null) { - return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); - } - return labels_; - } - - private com.google.protobuf.MapField - internalGetMutableLabels() { - if (labels_ == null) { - labels_ = com.google.protobuf.MapField.newMapField(LabelsDefaultEntryHolder.defaultEntry); - } - if (!labels_.isMutable()) { - labels_ = labels_.copy(); + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The etag to set. + * @return This builder for chaining. + */ + public Builder setEtag(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - bitField0_ |= 0x00000020; + etag_ = value; + bitField0_ |= 0x00000200; onChanged(); - return labels_; + return this; } - public int getLabelsCount() { - return internalGetLabels().getMap().size(); + /** + * + * + *
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
            +     * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearEtag() { + etag_ = getDefaultInstance().getEtag(); + bitField0_ = (bitField0_ & ~0x00000200); + onChanged(); + return this; } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation cluster and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for etag to set. + * @return This builder for chaining. */ - @java.lang.Override - public boolean containsLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder setEtagBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - return internalGetLabels().getMap().containsKey(key); + checkByteStringIsUtf8(value); + etag_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; } - /** Use {@link #getLabelsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getLabels() { - return getLabelsMap(); - } + private java.lang.Object network_ = ""; /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation cluster and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Immutable. Name of the Compute Engine network in which instances associated
            +     * with this workstation cluster will be created.
                  * 
            * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The network. */ - @java.lang.Override - public java.util.Map getLabelsMap() { - return internalGetLabels().getMap(); + public java.lang.String getNetwork() { + java.lang.Object ref = network_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + network_ = s; + return s; + } else { + return (java.lang.String) ref; + } } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation cluster and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Immutable. Name of the Compute Engine network in which instances associated
            +     * with this workstation cluster will be created.
                  * 
            * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for network. */ - @java.lang.Override - public /* nullable */ java.lang.String getLabelsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public com.google.protobuf.ByteString getNetworkBytes() { + java.lang.Object ref = network_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + network_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - java.util.Map map = internalGetLabels().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation cluster and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Immutable. Name of the Compute Engine network in which instances associated
            +     * with this workstation cluster will be created.
                  * 
            * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The network to set. + * @return This builder for chaining. */ - @java.lang.Override - public java.lang.String getLabelsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetLabels().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + public Builder setNetwork(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - return map.get(key); - } - - public Builder clearLabels() { - bitField0_ = (bitField0_ & ~0x00000020); - internalGetMutableLabels().getMutableMap().clear(); + network_ = value; + bitField0_ |= 0x00000400; + onChanged(); return this; } @@ -4015,139 +6694,137 @@ public Builder clearLabels() { * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation cluster and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Immutable. Name of the Compute Engine network in which instances associated
            +     * with this workstation cluster will be created.
                  * 
            * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return This builder for chaining. */ - public Builder removeLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - internalGetMutableLabels().getMutableMap().remove(key); + public Builder clearNetwork() { + network_ = getDefaultInstance().getNetwork(); + bitField0_ = (bitField0_ & ~0x00000400); + onChanged(); return this; } - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableLabels() { - bitField0_ |= 0x00000020; - return internalGetMutableLabels().getMutableMap(); - } - /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation cluster and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Immutable. Name of the Compute Engine network in which instances associated
            +     * with this workstation cluster will be created.
                  * 
            * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The bytes for network to set. + * @return This builder for chaining. */ - public Builder putLabels(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); - } + public Builder setNetworkBytes(com.google.protobuf.ByteString value) { if (value == null) { - throw new NullPointerException("map value"); + throw new NullPointerException(); } - internalGetMutableLabels().getMutableMap().put(key, value); - bitField0_ |= 0x00000020; + checkByteStringIsUtf8(value); + network_ = value; + bitField0_ |= 0x00000400; + onChanged(); return this; } + private java.lang.Object subnetwork_ = ""; + /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation cluster and that are also propagated to the
            -     * underlying Compute Engine resources.
            +     * Immutable. Name of the Compute Engine subnetwork in which instances
            +     * associated with this workstation cluster will be created. Must be part of
            +     * the subnetwork specified for this workstation cluster.
                  * 
            * - * map<string, string> labels = 15 [(.google.api.field_behavior) = OPTIONAL]; + * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The subnetwork. */ - public Builder putAllLabels(java.util.Map values) { - internalGetMutableLabels().getMutableMap().putAll(values); - bitField0_ |= 0x00000020; - return this; + public java.lang.String getSubnetwork() { + java.lang.Object ref = subnetwork_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + subnetwork_ = s; + return s; + } else { + return (java.lang.String) ref; + } } - private com.google.protobuf.Timestamp createTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - createTimeBuilder_; - /** * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Immutable. Name of the Compute Engine subnetwork in which instances
            +     * associated with this workstation cluster will be created. Must be part of
            +     * the subnetwork specified for this workstation cluster.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; * - * @return Whether the createTime field is set. + * @return The bytes for subnetwork. */ - public boolean hasCreateTime() { - return ((bitField0_ & 0x00000040) != 0); + public com.google.protobuf.ByteString getSubnetworkBytes() { + java.lang.Object ref = subnetwork_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + subnetwork_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } /** * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Immutable. Name of the Compute Engine subnetwork in which instances
            +     * associated with this workstation cluster will be created. Must be part of
            +     * the subnetwork specified for this workstation cluster.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; * - * @return The createTime. + * @param value The subnetwork to set. + * @return This builder for chaining. */ - public com.google.protobuf.Timestamp getCreateTime() { - if (createTimeBuilder_ == null) { - return createTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : createTime_; - } else { - return createTimeBuilder_.getMessage(); + public Builder setSubnetwork(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } + subnetwork_ = value; + bitField0_ |= 0x00000800; + onChanged(); + return this; } /** * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Immutable. Name of the Compute Engine subnetwork in which instances
            +     * associated with this workstation cluster will be created. Must be part of
            +     * the subnetwork specified for this workstation cluster.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return This builder for chaining. */ - public Builder setCreateTime(com.google.protobuf.Timestamp value) { - if (createTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - createTime_ = value; - } else { - createTimeBuilder_.setMessage(value); - } - bitField0_ |= 0x00000040; + public Builder clearSubnetwork() { + subnetwork_ = getDefaultInstance().getSubnetwork(); + bitField0_ = (bitField0_ & ~0x00000800); onChanged(); return this; } @@ -4156,186 +6833,200 @@ public Builder setCreateTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Immutable. Name of the Compute Engine subnetwork in which instances
            +     * associated with this workstation cluster will be created. Must be part of
            +     * the subnetwork specified for this workstation cluster.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The bytes for subnetwork to set. + * @return This builder for chaining. */ - public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (createTimeBuilder_ == null) { - createTime_ = builderForValue.build(); - } else { - createTimeBuilder_.setMessage(builderForValue.build()); + public Builder setSubnetworkBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - bitField0_ |= 0x00000040; + checkByteStringIsUtf8(value); + subnetwork_ = value; + bitField0_ |= 0x00000800; onChanged(); return this; } + private java.lang.Object controlPlaneIp_ = ""; + /** * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Output only. The private IP address of the control plane for this
            +     * workstation cluster. Workstation VMs need access to this IP address to work
            +     * with the service, so make sure that your firewall rules allow egress from
            +     * the workstation VMs to this address.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The controlPlaneIp. */ - public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { - if (createTimeBuilder_ == null) { - if (((bitField0_ & 0x00000040) != 0) - && createTime_ != null - && createTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getCreateTimeBuilder().mergeFrom(value); - } else { - createTime_ = value; - } + public java.lang.String getControlPlaneIp() { + java.lang.Object ref = controlPlaneIp_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + controlPlaneIp_ = s; + return s; } else { - createTimeBuilder_.mergeFrom(value); - } - if (createTime_ != null) { - bitField0_ |= 0x00000040; - onChanged(); + return (java.lang.String) ref; } - return this; } /** * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Output only. The private IP address of the control plane for this
            +     * workstation cluster. Workstation VMs need access to this IP address to work
            +     * with the service, so make sure that your firewall rules allow egress from
            +     * the workstation VMs to this address.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for controlPlaneIp. */ - public Builder clearCreateTime() { - bitField0_ = (bitField0_ & ~0x00000040); - createTime_ = null; - if (createTimeBuilder_ != null) { - createTimeBuilder_.dispose(); - createTimeBuilder_ = null; + public com.google.protobuf.ByteString getControlPlaneIpBytes() { + java.lang.Object ref = controlPlaneIp_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + controlPlaneIp_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - onChanged(); - return this; } /** * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Output only. The private IP address of the control plane for this
            +     * workstation cluster. Workstation VMs need access to this IP address to work
            +     * with the service, so make sure that your firewall rules allow egress from
            +     * the workstation VMs to this address.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The controlPlaneIp to set. + * @return This builder for chaining. */ - public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { - bitField0_ |= 0x00000040; + public Builder setControlPlaneIp(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + controlPlaneIp_ = value; + bitField0_ |= 0x00001000; onChanged(); - return internalGetCreateTimeFieldBuilder().getBuilder(); + return this; } /** * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Output only. The private IP address of the control plane for this
            +     * workstation cluster. Workstation VMs need access to this IP address to work
            +     * with the service, so make sure that your firewall rules allow egress from
            +     * the workstation VMs to this address.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { - if (createTimeBuilder_ != null) { - return createTimeBuilder_.getMessageOrBuilder(); - } else { - return createTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : createTime_; - } + public Builder clearControlPlaneIp() { + controlPlaneIp_ = getDefaultInstance().getControlPlaneIp(); + bitField0_ = (bitField0_ & ~0x00001000); + onChanged(); + return this; } /** * * *
            -     * Output only. Time when this workstation cluster was created.
            +     * Output only. The private IP address of the control plane for this
            +     * workstation cluster. Workstation VMs need access to this IP address to work
            +     * with the service, so make sure that your firewall rules allow egress from
            +     * the workstation VMs to this address.
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for controlPlaneIp to set. + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetCreateTimeFieldBuilder() { - if (createTimeBuilder_ == null) { - createTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getCreateTime(), getParentForChildren(), isClean()); - createTime_ = null; + public Builder setControlPlaneIpBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - return createTimeBuilder_; + checkByteStringIsUtf8(value); + controlPlaneIp_ = value; + bitField0_ |= 0x00001000; + onChanged(); + return this; } - private com.google.protobuf.Timestamp updateTime_; + private com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig + privateClusterConfig_; private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - updateTimeBuilder_; + com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig, + com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfigOrBuilder> + privateClusterConfigBuilder_; /** * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return Whether the updateTime field is set. + * @return Whether the privateClusterConfig field is set. */ - public boolean hasUpdateTime() { - return ((bitField0_ & 0x00000080) != 0); + public boolean hasPrivateClusterConfig() { + return ((bitField0_ & 0x00002000) != 0); } /** * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return The updateTime. + * @return The privateClusterConfig. */ - public com.google.protobuf.Timestamp getUpdateTime() { - if (updateTimeBuilder_ == null) { - return updateTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : updateTime_; + public com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig + getPrivateClusterConfig() { + if (privateClusterConfigBuilder_ == null) { + return privateClusterConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig + .getDefaultInstance() + : privateClusterConfig_; } else { - return updateTimeBuilder_.getMessage(); + return privateClusterConfigBuilder_.getMessage(); } } @@ -4343,23 +7034,24 @@ public com.google.protobuf.Timestamp getUpdateTime() { * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setUpdateTime(com.google.protobuf.Timestamp value) { - if (updateTimeBuilder_ == null) { + public Builder setPrivateClusterConfig( + com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig value) { + if (privateClusterConfigBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - updateTime_ = value; + privateClusterConfig_ = value; } else { - updateTimeBuilder_.setMessage(value); + privateClusterConfigBuilder_.setMessage(value); } - bitField0_ |= 0x00000080; + bitField0_ |= 0x00002000; onChanged(); return this; } @@ -4368,20 +7060,22 @@ public Builder setUpdateTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (updateTimeBuilder_ == null) { - updateTime_ = builderForValue.build(); + public Builder setPrivateClusterConfig( + com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig.Builder + builderForValue) { + if (privateClusterConfigBuilder_ == null) { + privateClusterConfig_ = builderForValue.build(); } else { - updateTimeBuilder_.setMessage(builderForValue.build()); + privateClusterConfigBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00000080; + bitField0_ |= 0x00002000; onChanged(); return this; } @@ -4390,27 +7084,30 @@ public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForVal * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { - if (updateTimeBuilder_ == null) { - if (((bitField0_ & 0x00000080) != 0) - && updateTime_ != null - && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getUpdateTimeBuilder().mergeFrom(value); + public Builder mergePrivateClusterConfig( + com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig value) { + if (privateClusterConfigBuilder_ == null) { + if (((bitField0_ & 0x00002000) != 0) + && privateClusterConfig_ != null + && privateClusterConfig_ + != com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig + .getDefaultInstance()) { + getPrivateClusterConfigBuilder().mergeFrom(value); } else { - updateTime_ = value; + privateClusterConfig_ = value; } } else { - updateTimeBuilder_.mergeFrom(value); + privateClusterConfigBuilder_.mergeFrom(value); } - if (updateTime_ != null) { - bitField0_ |= 0x00000080; + if (privateClusterConfig_ != null) { + bitField0_ |= 0x00002000; onChanged(); } return this; @@ -4420,19 +7117,19 @@ public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearUpdateTime() { - bitField0_ = (bitField0_ & ~0x00000080); - updateTime_ = null; - if (updateTimeBuilder_ != null) { - updateTimeBuilder_.dispose(); - updateTimeBuilder_ = null; + public Builder clearPrivateClusterConfig() { + bitField0_ = (bitField0_ & ~0x00002000); + privateClusterConfig_ = null; + if (privateClusterConfigBuilder_ != null) { + privateClusterConfigBuilder_.dispose(); + privateClusterConfigBuilder_ = null; } onChanged(); return this; @@ -4442,37 +7139,40 @@ public Builder clearUpdateTime() { * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { - bitField0_ |= 0x00000080; + public com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig.Builder + getPrivateClusterConfigBuilder() { + bitField0_ |= 0x00002000; onChanged(); - return internalGetUpdateTimeFieldBuilder().getBuilder(); + return internalGetPrivateClusterConfigFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { - if (updateTimeBuilder_ != null) { - return updateTimeBuilder_.getMessageOrBuilder(); + public com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfigOrBuilder + getPrivateClusterConfigOrBuilder() { + if (privateClusterConfigBuilder_ != null) { + return privateClusterConfigBuilder_.getMessageOrBuilder(); } else { - return updateTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : updateTime_; + return privateClusterConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig + .getDefaultInstance() + : privateClusterConfig_; } } @@ -4480,74 +7180,77 @@ public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { * * *
            -     * Output only. Time when this workstation cluster was most recently updated.
            +     * Optional. Configuration for private workstation cluster.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetUpdateTimeFieldBuilder() { - if (updateTimeBuilder_ == null) { - updateTimeBuilder_ = + com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig, + com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfigOrBuilder> + internalGetPrivateClusterConfigFieldBuilder() { + if (privateClusterConfigBuilder_ == null) { + privateClusterConfigBuilder_ = new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getUpdateTime(), getParentForChildren(), isClean()); - updateTime_ = null; + com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig, + com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig + .Builder, + com.google.cloud.workstations.v1beta.WorkstationCluster + .PrivateClusterConfigOrBuilder>( + getPrivateClusterConfig(), getParentForChildren(), isClean()); + privateClusterConfig_ = null; } - return updateTimeBuilder_; + return privateClusterConfigBuilder_; } - private com.google.protobuf.Timestamp deleteTime_; + private com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domainConfig_; private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - deleteTimeBuilder_; + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig, + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfigOrBuilder> + domainConfigBuilder_; /** * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return Whether the deleteTime field is set. + * @return Whether the domainConfig field is set. */ - public boolean hasDeleteTime() { - return ((bitField0_ & 0x00000100) != 0); + public boolean hasDomainConfig() { + return ((bitField0_ & 0x00004000) != 0); } /** * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return The deleteTime. + * @return The domainConfig. */ - public com.google.protobuf.Timestamp getDeleteTime() { - if (deleteTimeBuilder_ == null) { - return deleteTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : deleteTime_; + public com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig getDomainConfig() { + if (domainConfigBuilder_ == null) { + return domainConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig + .getDefaultInstance() + : domainConfig_; } else { - return deleteTimeBuilder_.getMessage(); + return domainConfigBuilder_.getMessage(); } } @@ -4555,23 +7258,24 @@ public com.google.protobuf.Timestamp getDeleteTime() { * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setDeleteTime(com.google.protobuf.Timestamp value) { - if (deleteTimeBuilder_ == null) { + public Builder setDomainConfig( + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig value) { + if (domainConfigBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - deleteTime_ = value; + domainConfig_ = value; } else { - deleteTimeBuilder_.setMessage(value); + domainConfigBuilder_.setMessage(value); } - bitField0_ |= 0x00000100; + bitField0_ |= 0x00004000; onChanged(); return this; } @@ -4580,20 +7284,22 @@ public Builder setDeleteTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (deleteTimeBuilder_ == null) { - deleteTime_ = builderForValue.build(); + public Builder setDomainConfig( + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig.Builder + builderForValue) { + if (domainConfigBuilder_ == null) { + domainConfig_ = builderForValue.build(); } else { - deleteTimeBuilder_.setMessage(builderForValue.build()); + domainConfigBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00000100; + bitField0_ |= 0x00004000; onChanged(); return this; } @@ -4602,27 +7308,30 @@ public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForVal * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { - if (deleteTimeBuilder_ == null) { - if (((bitField0_ & 0x00000100) != 0) - && deleteTime_ != null - && deleteTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getDeleteTimeBuilder().mergeFrom(value); + public Builder mergeDomainConfig( + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig value) { + if (domainConfigBuilder_ == null) { + if (((bitField0_ & 0x00004000) != 0) + && domainConfig_ != null + && domainConfig_ + != com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig + .getDefaultInstance()) { + getDomainConfigBuilder().mergeFrom(value); } else { - deleteTime_ = value; + domainConfig_ = value; } } else { - deleteTimeBuilder_.mergeFrom(value); + domainConfigBuilder_.mergeFrom(value); } - if (deleteTime_ != null) { - bitField0_ |= 0x00000100; + if (domainConfig_ != null) { + bitField0_ |= 0x00004000; onChanged(); } return this; @@ -4632,19 +7341,19 @@ public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearDeleteTime() { - bitField0_ = (bitField0_ & ~0x00000100); - deleteTime_ = null; - if (deleteTimeBuilder_ != null) { - deleteTimeBuilder_.dispose(); - deleteTimeBuilder_ = null; + public Builder clearDomainConfig() { + bitField0_ = (bitField0_ & ~0x00004000); + domainConfig_ = null; + if (domainConfigBuilder_ != null) { + domainConfigBuilder_.dispose(); + domainConfigBuilder_ = null; } onChanged(); return this; @@ -4654,37 +7363,40 @@ public Builder clearDeleteTime() { * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.Timestamp.Builder getDeleteTimeBuilder() { - bitField0_ |= 0x00000100; + public com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig.Builder + getDomainConfigBuilder() { + bitField0_ |= 0x00004000; onChanged(); - return internalGetDeleteTimeFieldBuilder().getBuilder(); + return internalGetDomainConfigFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { - if (deleteTimeBuilder_ != null) { - return deleteTimeBuilder_.getMessageOrBuilder(); + public com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfigOrBuilder + getDomainConfigOrBuilder() { + if (domainConfigBuilder_ != null) { + return domainConfigBuilder_.getMessageOrBuilder(); } else { - return deleteTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : deleteTime_; + return domainConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig + .getDefaultInstance() + : domainConfig_; } } @@ -4692,79 +7404,125 @@ public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { * * *
            -     * Output only. Time when this workstation cluster was soft-deleted.
            +     * Optional. Configuration options for a custom domain.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; * */ private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetDeleteTimeFieldBuilder() { - if (deleteTimeBuilder_ == null) { - deleteTimeBuilder_ = + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig, + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfigOrBuilder> + internalGetDomainConfigFieldBuilder() { + if (domainConfigBuilder_ == null) { + domainConfigBuilder_ = new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getDeleteTime(), getParentForChildren(), isClean()); - deleteTime_ = null; + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig, + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfigOrBuilder>( + getDomainConfig(), getParentForChildren(), isClean()); + domainConfig_ = null; } - return deleteTimeBuilder_; + return domainConfigBuilder_; + } + + private boolean degraded_; + + /** + * + * + *
            +     * Output only. Whether this workstation cluster is in degraded mode, in which
            +     * case it may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1beta.WorkstationCluster.conditions]
            +     * field contains detailed information about the status of the cluster.
            +     * 
            + * + * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The degraded. + */ + @java.lang.Override + public boolean getDegraded() { + return degraded_; + } + + /** + * + * + *
            +     * Output only. Whether this workstation cluster is in degraded mode, in which
            +     * case it may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1beta.WorkstationCluster.conditions]
            +     * field contains detailed information about the status of the cluster.
            +     * 
            + * + * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The degraded to set. + * @return This builder for chaining. + */ + public Builder setDegraded(boolean value) { + + degraded_ = value; + bitField0_ |= 0x00008000; + onChanged(); + return this; } - private java.lang.Object etag_ = ""; - /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Output only. Whether this workstation cluster is in degraded mode, in which
            +     * case it may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1beta.WorkstationCluster.conditions]
            +     * field contains detailed information about the status of the cluster.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The etag. + * @return This builder for chaining. */ - public java.lang.String getEtag() { - java.lang.Object ref = etag_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - etag_ = s; - return s; - } else { - return (java.lang.String) ref; + public Builder clearDegraded() { + bitField0_ = (bitField0_ & ~0x00008000); + degraded_ = false; + onChanged(); + return this; + } + + private java.util.List conditions_ = java.util.Collections.emptyList(); + + private void ensureConditionsIsMutable() { + if (!((bitField0_ & 0x00010000) != 0)) { + conditions_ = new java.util.ArrayList(conditions_); + bitField0_ |= 0x00010000; } } + private com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> + conditionsBuilder_; + /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for etag. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getEtagBytes() { - java.lang.Object ref = etag_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - etag_ = b; - return b; + public java.util.List getConditionsList() { + if (conditionsBuilder_ == null) { + return java.util.Collections.unmodifiableList(conditions_); } else { - return (com.google.protobuf.ByteString) ref; + return conditionsBuilder_.getMessageList(); } } @@ -4772,141 +7530,140 @@ public com.google.protobuf.ByteString getEtagBytes() { * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The etag to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setEtag(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public int getConditionsCount() { + if (conditionsBuilder_ == null) { + return conditions_.size(); + } else { + return conditionsBuilder_.getCount(); } - etag_ = value; - bitField0_ |= 0x00000200; - onChanged(); - return this; } /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearEtag() { - etag_ = getDefaultInstance().getEtag(); - bitField0_ = (bitField0_ & ~0x00000200); - onChanged(); - return this; + public com.google.rpc.Status getConditions(int index) { + if (conditionsBuilder_ == null) { + return conditions_.get(index); + } else { + return conditionsBuilder_.getMessage(index); + } } /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for etag to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setEtagBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder setConditions(int index, com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionsIsMutable(); + conditions_.set(index, value); + onChanged(); + } else { + conditionsBuilder_.setMessage(index, value); } - checkByteStringIsUtf8(value); - etag_ = value; - bitField0_ |= 0x00000200; - onChanged(); return this; } - private java.lang.Object network_ = ""; - /** * * *
            -     * Immutable. Name of the Compute Engine network in which instances associated
            -     * with this workstation cluster will be created.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The network. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getNetwork() { - java.lang.Object ref = network_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - network_ = s; - return s; + public Builder setConditions(int index, com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.set(index, builderForValue.build()); + onChanged(); } else { - return (java.lang.String) ref; + conditionsBuilder_.setMessage(index, builderForValue.build()); } + return this; } /** * * *
            -     * Immutable. Name of the Compute Engine network in which instances associated
            -     * with this workstation cluster will be created.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for network. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getNetworkBytes() { - java.lang.Object ref = network_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - network_ = b; - return b; + public Builder addConditions(com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionsIsMutable(); + conditions_.add(value); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + conditionsBuilder_.addMessage(value); } + return this; } /** * * *
            -     * Immutable. Name of the Compute Engine network in which instances associated
            -     * with this workstation cluster will be created.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The network to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setNetwork(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder addConditions(int index, com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionsIsMutable(); + conditions_.add(index, value); + onChanged(); + } else { + conditionsBuilder_.addMessage(index, value); } - network_ = value; - bitField0_ |= 0x00000400; - onChanged(); return this; } @@ -4914,18 +7671,22 @@ public Builder setNetwork(java.lang.String value) { * * *
            -     * Immutable. Name of the Compute Engine network in which instances associated
            -     * with this workstation cluster will be created.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearNetwork() { - network_ = getDefaultInstance().getNetwork(); - bitField0_ = (bitField0_ & ~0x00000400); - onChanged(); + public Builder addConditions(com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(builderForValue.build()); + onChanged(); + } else { + conditionsBuilder_.addMessage(builderForValue.build()); + } return this; } @@ -4933,99 +7694,91 @@ public Builder clearNetwork() { * * *
            -     * Immutable. Name of the Compute Engine network in which instances associated
            -     * with this workstation cluster will be created.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string network = 10 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The bytes for network to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setNetworkBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder addConditions(int index, com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(index, builderForValue.build()); + onChanged(); + } else { + conditionsBuilder_.addMessage(index, builderForValue.build()); } - checkByteStringIsUtf8(value); - network_ = value; - bitField0_ |= 0x00000400; - onChanged(); return this; } - private java.lang.Object subnetwork_ = ""; - /** * * *
            -     * Immutable. Name of the Compute Engine subnetwork in which instances
            -     * associated with this workstation cluster will be created. Must be part of
            -     * the subnetwork specified for this workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The subnetwork. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getSubnetwork() { - java.lang.Object ref = subnetwork_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - subnetwork_ = s; - return s; + public Builder addAllConditions(java.lang.Iterable values) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, conditions_); + onChanged(); } else { - return (java.lang.String) ref; + conditionsBuilder_.addAllMessages(values); } + return this; } /** * * *
            -     * Immutable. Name of the Compute Engine subnetwork in which instances
            -     * associated with this workstation cluster will be created. Must be part of
            -     * the subnetwork specified for this workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for subnetwork. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getSubnetworkBytes() { - java.lang.Object ref = subnetwork_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - subnetwork_ = b; - return b; + public Builder clearConditions() { + if (conditionsBuilder_ == null) { + conditions_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00010000); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + conditionsBuilder_.clear(); } + return this; } /** * * *
            -     * Immutable. Name of the Compute Engine subnetwork in which instances
            -     * associated with this workstation cluster will be created. Must be part of
            -     * the subnetwork specified for this workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The subnetwork to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setSubnetwork(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder removeConditions(int index) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.remove(index); + onChanged(); + } else { + conditionsBuilder_.remove(index); } - subnetwork_ = value; - bitField0_ |= 0x00000800; - onChanged(); return this; } @@ -5033,72 +7786,55 @@ public Builder setSubnetwork(java.lang.String value) { * * *
            -     * Immutable. Name of the Compute Engine subnetwork in which instances
            -     * associated with this workstation cluster will be created. Must be part of
            -     * the subnetwork specified for this workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearSubnetwork() { - subnetwork_ = getDefaultInstance().getSubnetwork(); - bitField0_ = (bitField0_ & ~0x00000800); - onChanged(); - return this; + public com.google.rpc.Status.Builder getConditionsBuilder(int index) { + return internalGetConditionsFieldBuilder().getBuilder(index); } /** * * *
            -     * Immutable. Name of the Compute Engine subnetwork in which instances
            -     * associated with this workstation cluster will be created. Must be part of
            -     * the subnetwork specified for this workstation cluster.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string subnetwork = 11 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The bytes for subnetwork to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setSubnetworkBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { + if (conditionsBuilder_ == null) { + return conditions_.get(index); + } else { + return conditionsBuilder_.getMessageOrBuilder(index); } - checkByteStringIsUtf8(value); - subnetwork_ = value; - bitField0_ |= 0x00000800; - onChanged(); - return this; } - private java.lang.Object controlPlaneIp_ = ""; - /** * * *
            -     * Output only. The private IP address of the control plane for this
            -     * workstation cluster. Workstation VMs need access to this IP address to work
            -     * with the service, so make sure that your firewall rules allow egress from
            -     * the workstation VMs to this address.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The controlPlaneIp. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getControlPlaneIp() { - java.lang.Object ref = controlPlaneIp_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - controlPlaneIp_ = s; - return s; + public java.util.List getConditionsOrBuilderList() { + if (conditionsBuilder_ != null) { + return conditionsBuilder_.getMessageOrBuilderList(); } else { - return (java.lang.String) ref; + return java.util.Collections.unmodifiableList(conditions_); } } @@ -5106,172 +7842,157 @@ public java.lang.String getControlPlaneIp() { * * *
            -     * Output only. The private IP address of the control plane for this
            -     * workstation cluster. Workstation VMs need access to this IP address to work
            -     * with the service, so make sure that your firewall rules allow egress from
            -     * the workstation VMs to this address.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for controlPlaneIp. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getControlPlaneIpBytes() { - java.lang.Object ref = controlPlaneIp_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - controlPlaneIp_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public com.google.rpc.Status.Builder addConditionsBuilder() { + return internalGetConditionsFieldBuilder() + .addBuilder(com.google.rpc.Status.getDefaultInstance()); } /** * * *
            -     * Output only. The private IP address of the control plane for this
            -     * workstation cluster. Workstation VMs need access to this IP address to work
            -     * with the service, so make sure that your firewall rules allow egress from
            -     * the workstation VMs to this address.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The controlPlaneIp to set. - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setControlPlaneIp(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - controlPlaneIp_ = value; - bitField0_ |= 0x00001000; - onChanged(); - return this; + public com.google.rpc.Status.Builder addConditionsBuilder(int index) { + return internalGetConditionsFieldBuilder() + .addBuilder(index, com.google.rpc.Status.getDefaultInstance()); } /** * * *
            -     * Output only. The private IP address of the control plane for this
            -     * workstation cluster. Workstation VMs need access to this IP address to work
            -     * with the service, so make sure that your firewall rules allow egress from
            -     * the workstation VMs to this address.
            +     * Output only. Status conditions describing the workstation cluster's current
            +     * state.
                  * 
            * - * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. + * + * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearControlPlaneIp() { - controlPlaneIp_ = getDefaultInstance().getControlPlaneIp(); - bitField0_ = (bitField0_ & ~0x00001000); - onChanged(); - return this; + public java.util.List getConditionsBuilderList() { + return internalGetConditionsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> + internalGetConditionsFieldBuilder() { + if (conditionsBuilder_ == null) { + conditionsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, + com.google.rpc.Status.Builder, + com.google.rpc.StatusOrBuilder>( + conditions_, ((bitField0_ & 0x00010000) != 0), getParentForChildren(), isClean()); + conditions_ = null; + } + return conditionsBuilder_; } + private boolean satisfiesPzs_; + /** * * *
            -     * Output only. The private IP address of the control plane for this
            -     * workstation cluster. Workstation VMs need access to this IP address to work
            -     * with the service, so make sure that your firewall rules allow egress from
            -     * the workstation VMs to this address.
            +     * Output only. Reserved for future use.
                  * 
            * - * string control_plane_ip = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * bool satisfies_pzs = 18 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The bytes for controlPlaneIp to set. - * @return This builder for chaining. + * @return The satisfiesPzs. */ - public Builder setControlPlaneIpBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - controlPlaneIp_ = value; - bitField0_ |= 0x00001000; + @java.lang.Override + public boolean getSatisfiesPzs() { + return satisfiesPzs_; + } + + /** + * + * + *
            +     * Output only. Reserved for future use.
            +     * 
            + * + * bool satisfies_pzs = 18 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The satisfiesPzs to set. + * @return This builder for chaining. + */ + public Builder setSatisfiesPzs(boolean value) { + + satisfiesPzs_ = value; + bitField0_ |= 0x00020000; onChanged(); return this; } - private com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig - privateClusterConfig_; - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig, - com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig.Builder, - com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfigOrBuilder> - privateClusterConfigBuilder_; - /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Output only. Reserved for future use.
                  * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; - * + * bool satisfies_pzs = 18 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the privateClusterConfig field is set. + * @return This builder for chaining. */ - public boolean hasPrivateClusterConfig() { - return ((bitField0_ & 0x00002000) != 0); + public Builder clearSatisfiesPzs() { + bitField0_ = (bitField0_ & ~0x00020000); + satisfiesPzs_ = false; + onChanged(); + return this; } + private boolean satisfiesPzi_; + /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Output only. Reserved for future use.
                  * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; - * + * bool satisfies_pzi = 19 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The privateClusterConfig. + * @return The satisfiesPzi. */ - public com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig - getPrivateClusterConfig() { - if (privateClusterConfigBuilder_ == null) { - return privateClusterConfig_ == null - ? com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig - .getDefaultInstance() - : privateClusterConfig_; - } else { - return privateClusterConfigBuilder_.getMessage(); - } + @java.lang.Override + public boolean getSatisfiesPzi() { + return satisfiesPzi_; } /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Output only. Reserved for future use.
                  * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; - * + * bool satisfies_pzi = 19 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The satisfiesPzi to set. + * @return This builder for chaining. */ - public Builder setPrivateClusterConfig( - com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig value) { - if (privateClusterConfigBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - privateClusterConfig_ = value; - } else { - privateClusterConfigBuilder_.setMessage(value); - } - bitField0_ |= 0x00002000; + public Builder setSatisfiesPzi(boolean value) { + + satisfiesPzi_ = value; + bitField0_ |= 0x00040000; onChanged(); return this; } @@ -5280,247 +8001,273 @@ public Builder setPrivateClusterConfig( * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Output only. Reserved for future use.
                  * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; - * + * bool satisfies_pzi = 19 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public Builder setPrivateClusterConfig( - com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig.Builder - builderForValue) { - if (privateClusterConfigBuilder_ == null) { - privateClusterConfig_ = builderForValue.build(); - } else { - privateClusterConfigBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00002000; + public Builder clearSatisfiesPzi() { + bitField0_ = (bitField0_ & ~0x00040000); + satisfiesPzi_ = false; onChanged(); return this; } + private com.google.protobuf.MapField tags_; + + private com.google.protobuf.MapField internalGetTags() { + if (tags_ == null) { + return com.google.protobuf.MapField.emptyMapField(TagsDefaultEntryHolder.defaultEntry); + } + return tags_; + } + + private com.google.protobuf.MapField + internalGetMutableTags() { + if (tags_ == null) { + tags_ = com.google.protobuf.MapField.newMapField(TagsDefaultEntryHolder.defaultEntry); + } + if (!tags_.isMutable()) { + tags_ = tags_.copy(); + } + bitField0_ |= 0x00080000; + onChanged(); + return tags_; + } + + public int getTagsCount() { + return internalGetTags().getMap().size(); + } + /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +     * resource. For example:
            +     * "123/environment": "production",
            +     * "123/costCenter": "marketing"
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergePrivateClusterConfig( - com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig value) { - if (privateClusterConfigBuilder_ == null) { - if (((bitField0_ & 0x00002000) != 0) - && privateClusterConfig_ != null - && privateClusterConfig_ - != com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig - .getDefaultInstance()) { - getPrivateClusterConfigBuilder().mergeFrom(value); - } else { - privateClusterConfig_ = value; - } - } else { - privateClusterConfigBuilder_.mergeFrom(value); - } - if (privateClusterConfig_ != null) { - bitField0_ |= 0x00002000; - onChanged(); + @java.lang.Override + public boolean containsTags(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - return this; + return internalGetTags().getMap().containsKey(key); + } + + /** Use {@link #getTagsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getTags() { + return getTagsMap(); } /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +     * resource. For example:
            +     * "123/environment": "production",
            +     * "123/costCenter": "marketing"
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearPrivateClusterConfig() { - bitField0_ = (bitField0_ & ~0x00002000); - privateClusterConfig_ = null; - if (privateClusterConfigBuilder_ != null) { - privateClusterConfigBuilder_.dispose(); - privateClusterConfigBuilder_ = null; - } - onChanged(); - return this; + @java.lang.Override + public java.util.Map getTagsMap() { + return internalGetTags().getMap(); } /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +     * resource. For example:
            +     * "123/environment": "production",
            +     * "123/costCenter": "marketing"
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig.Builder - getPrivateClusterConfigBuilder() { - bitField0_ |= 0x00002000; - onChanged(); - return internalGetPrivateClusterConfigFieldBuilder().getBuilder(); + @java.lang.Override + public /* nullable */ java.lang.String getTagsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetTags().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; } /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +     * resource. For example:
            +     * "123/environment": "production",
            +     * "123/costCenter": "marketing"
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfigOrBuilder - getPrivateClusterConfigOrBuilder() { - if (privateClusterConfigBuilder_ != null) { - return privateClusterConfigBuilder_.getMessageOrBuilder(); - } else { - return privateClusterConfig_ == null - ? com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig - .getDefaultInstance() - : privateClusterConfig_; + @java.lang.Override + public java.lang.String getTagsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetTags().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); } + return map.get(key); + } + + public Builder clearTags() { + bitField0_ = (bitField0_ & ~0x00080000); + internalGetMutableTags().getMutableMap().clear(); + return this; } /** * * *
            -     * Optional. Configuration for private workstation cluster.
            +     * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +     * resource. For example:
            +     * "123/environment": "production",
            +     * "123/costCenter": "marketing"
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig private_cluster_config = 12 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig, - com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig.Builder, - com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfigOrBuilder> - internalGetPrivateClusterConfigFieldBuilder() { - if (privateClusterConfigBuilder_ == null) { - privateClusterConfigBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig, - com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfig - .Builder, - com.google.cloud.workstations.v1beta.WorkstationCluster - .PrivateClusterConfigOrBuilder>( - getPrivateClusterConfig(), getParentForChildren(), isClean()); - privateClusterConfig_ = null; + public Builder removeTags(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - return privateClusterConfigBuilder_; + internalGetMutableTags().getMutableMap().remove(key); + return this; } - private boolean degraded_; + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableTags() { + bitField0_ |= 0x00080000; + return internalGetMutableTags().getMutableMap(); + } /** * * *
            -     * Output only. Whether this workstation cluster is in degraded mode, in which
            -     * case it may require user action to restore full functionality. Details can
            -     * be found in
            -     * [conditions][google.cloud.workstations.v1beta.WorkstationCluster.conditions].
            +     * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +     * resource. For example:
            +     * "123/environment": "production",
            +     * "123/costCenter": "marketing"
                  * 
            * - * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The degraded. + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * */ - @java.lang.Override - public boolean getDegraded() { - return degraded_; + public Builder putTags(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableTags().getMutableMap().put(key, value); + bitField0_ |= 0x00080000; + return this; } /** * * *
            -     * Output only. Whether this workstation cluster is in degraded mode, in which
            -     * case it may require user action to restore full functionality. Details can
            -     * be found in
            -     * [conditions][google.cloud.workstations.v1beta.WorkstationCluster.conditions].
            +     * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +     * resource. For example:
            +     * "123/environment": "production",
            +     * "123/costCenter": "marketing"
                  * 
            * - * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The degraded to set. - * @return This builder for chaining. + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setDegraded(boolean value) { - - degraded_ = value; - bitField0_ |= 0x00004000; - onChanged(); + public Builder putAllTags(java.util.Map values) { + internalGetMutableTags().getMutableMap().putAll(values); + bitField0_ |= 0x00080000; return this; } + private com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gatewayConfig_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig, + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfigOrBuilder> + gatewayConfigBuilder_; + /** * * *
            -     * Output only. Whether this workstation cluster is in degraded mode, in which
            -     * case it may require user action to restore full functionality. Details can
            -     * be found in
            -     * [conditions][google.cloud.workstations.v1beta.WorkstationCluster.conditions].
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * - * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return This builder for chaining. + * @return Whether the gatewayConfig field is set. */ - public Builder clearDegraded() { - bitField0_ = (bitField0_ & ~0x00004000); - degraded_ = false; - onChanged(); - return this; - } - - private java.util.List conditions_ = java.util.Collections.emptyList(); - - private void ensureConditionsIsMutable() { - if (!((bitField0_ & 0x00008000) != 0)) { - conditions_ = new java.util.ArrayList(conditions_); - bitField0_ |= 0x00008000; - } + public boolean hasGatewayConfig() { + return ((bitField0_ & 0x00100000) != 0); } - private com.google.protobuf.RepeatedFieldBuilder< - com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> - conditionsBuilder_; - /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The gatewayConfig. */ - public java.util.List getConditionsList() { - if (conditionsBuilder_ == null) { - return java.util.Collections.unmodifiableList(conditions_); + public com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig + getGatewayConfig() { + if (gatewayConfigBuilder_ == null) { + return gatewayConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig + .getDefaultInstance() + : gatewayConfig_; } else { - return conditionsBuilder_.getMessageList(); + return gatewayConfigBuilder_.getMessage(); } } @@ -5528,64 +8275,81 @@ public java.util.List getConditionsList() { * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * */ - public int getConditionsCount() { - if (conditionsBuilder_ == null) { - return conditions_.size(); + public Builder setGatewayConfig( + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig value) { + if (gatewayConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + gatewayConfig_ = value; } else { - return conditionsBuilder_.getCount(); + gatewayConfigBuilder_.setMessage(value); } + bitField0_ |= 0x00100000; + onChanged(); + return this; } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.rpc.Status getConditions(int index) { - if (conditionsBuilder_ == null) { - return conditions_.get(index); + public Builder setGatewayConfig( + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig.Builder + builderForValue) { + if (gatewayConfigBuilder_ == null) { + gatewayConfig_ = builderForValue.build(); } else { - return conditionsBuilder_.getMessage(index); + gatewayConfigBuilder_.setMessage(builderForValue.build()); } + bitField0_ |= 0x00100000; + onChanged(); + return this; } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setConditions(int index, com.google.rpc.Status value) { - if (conditionsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeGatewayConfig( + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig value) { + if (gatewayConfigBuilder_ == null) { + if (((bitField0_ & 0x00100000) != 0) + && gatewayConfig_ != null + && gatewayConfig_ + != com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig + .getDefaultInstance()) { + getGatewayConfigBuilder().mergeFrom(value); + } else { + gatewayConfig_ = value; } - ensureConditionsIsMutable(); - conditions_.set(index, value); - onChanged(); } else { - conditionsBuilder_.setMessage(index, value); + gatewayConfigBuilder_.mergeFrom(value); + } + if (gatewayConfig_ != null) { + bitField0_ |= 0x00100000; + onChanged(); } return this; } @@ -5594,22 +8358,21 @@ public Builder setConditions(int index, com.google.rpc.Status value) { * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setConditions(int index, com.google.rpc.Status.Builder builderForValue) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.set(index, builderForValue.build()); - onChanged(); - } else { - conditionsBuilder_.setMessage(index, builderForValue.build()); + public Builder clearGatewayConfig() { + bitField0_ = (bitField0_ & ~0x00100000); + gatewayConfig_ = null; + if (gatewayConfigBuilder_ != null) { + gatewayConfigBuilder_.dispose(); + gatewayConfigBuilder_ = null; } + onChanged(); return this; } @@ -5617,143 +8380,159 @@ public Builder setConditions(int index, com.google.rpc.Status.Builder builderFor * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addConditions(com.google.rpc.Status value) { - if (conditionsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConditionsIsMutable(); - conditions_.add(value); - onChanged(); - } else { - conditionsBuilder_.addMessage(value); - } - return this; + public com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig.Builder + getGatewayConfigBuilder() { + bitField0_ |= 0x00100000; + onChanged(); + return internalGetGatewayConfigFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addConditions(int index, com.google.rpc.Status value) { - if (conditionsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConditionsIsMutable(); - conditions_.add(index, value); - onChanged(); + public com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfigOrBuilder + getGatewayConfigOrBuilder() { + if (gatewayConfigBuilder_ != null) { + return gatewayConfigBuilder_.getMessageOrBuilder(); } else { - conditionsBuilder_.addMessage(index, value); + return gatewayConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig + .getDefaultInstance() + : gatewayConfig_; } - return this; } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Configuration options for Cluster HTTP Gateway.
                  * 
            * * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addConditions(com.google.rpc.Status.Builder builderForValue) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.add(builderForValue.build()); - onChanged(); - } else { - conditionsBuilder_.addMessage(builderForValue.build()); + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig, + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfigOrBuilder> + internalGetGatewayConfigFieldBuilder() { + if (gatewayConfigBuilder_ == null) { + gatewayConfigBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig, + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfigOrBuilder>( + getGatewayConfig(), getParentForChildren(), isClean()); + gatewayConfig_ = null; } - return this; + return gatewayConfigBuilder_; } + private java.lang.Object workstationAuthorizationUrl_ = ""; + /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the redirect URL for unauthorized requests received by
            +     * workstation VMs in this cluster.
            +     *
            +     * Redirects to this endpoint will send a base64 encoded `state` query param
            +     * containing the target workstation name and original request hostname. The
            +     * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +     * and redirecting back to the original hostname with the token.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The workstationAuthorizationUrl. */ - public Builder addConditions(int index, com.google.rpc.Status.Builder builderForValue) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.add(index, builderForValue.build()); - onChanged(); + public java.lang.String getWorkstationAuthorizationUrl() { + java.lang.Object ref = workstationAuthorizationUrl_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + workstationAuthorizationUrl_ = s; + return s; } else { - conditionsBuilder_.addMessage(index, builderForValue.build()); + return (java.lang.String) ref; } - return this; } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the redirect URL for unauthorized requests received by
            +     * workstation VMs in this cluster.
            +     *
            +     * Redirects to this endpoint will send a base64 encoded `state` query param
            +     * containing the target workstation name and original request hostname. The
            +     * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +     * and redirecting back to the original hostname with the token.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The bytes for workstationAuthorizationUrl. */ - public Builder addAllConditions(java.lang.Iterable values) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, conditions_); - onChanged(); + public com.google.protobuf.ByteString getWorkstationAuthorizationUrlBytes() { + java.lang.Object ref = workstationAuthorizationUrl_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + workstationAuthorizationUrl_ = b; + return b; } else { - conditionsBuilder_.addAllMessages(values); + return (com.google.protobuf.ByteString) ref; } - return this; } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the redirect URL for unauthorized requests received by
            +     * workstation VMs in this cluster.
            +     *
            +     * Redirects to this endpoint will send a base64 encoded `state` query param
            +     * containing the target workstation name and original request hostname. The
            +     * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +     * and redirecting back to the original hostname with the token.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @param value The workstationAuthorizationUrl to set. + * @return This builder for chaining. */ - public Builder clearConditions() { - if (conditionsBuilder_ == null) { - conditions_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00008000); - onChanged(); - } else { - conditionsBuilder_.clear(); + public Builder setWorkstationAuthorizationUrl(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } + workstationAuthorizationUrl_ = value; + bitField0_ |= 0x00200000; + onChanged(); return this; } @@ -5761,22 +8540,24 @@ public Builder clearConditions() { * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the redirect URL for unauthorized requests received by
            +     * workstation VMs in this cluster.
            +     *
            +     * Redirects to this endpoint will send a base64 encoded `state` query param
            +     * containing the target workstation name and original request hostname. The
            +     * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +     * and redirecting back to the original hostname with the token.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return This builder for chaining. */ - public Builder removeConditions(int index) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.remove(index); - onChanged(); - } else { - conditionsBuilder_.remove(index); - } + public Builder clearWorkstationAuthorizationUrl() { + workstationAuthorizationUrl_ = getDefaultInstance().getWorkstationAuthorizationUrl(); + bitField0_ = (bitField0_ & ~0x00200000); + onChanged(); return this; } @@ -5784,35 +8565,61 @@ public Builder removeConditions(int index) { * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the redirect URL for unauthorized requests received by
            +     * workstation VMs in this cluster.
            +     *
            +     * Redirects to this endpoint will send a base64 encoded `state` query param
            +     * containing the target workstation name and original request hostname. The
            +     * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +     * and redirecting back to the original hostname with the token.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @param value The bytes for workstationAuthorizationUrl to set. + * @return This builder for chaining. */ - public com.google.rpc.Status.Builder getConditionsBuilder(int index) { - return internalGetConditionsFieldBuilder().getBuilder(index); + public Builder setWorkstationAuthorizationUrlBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + workstationAuthorizationUrl_ = value; + bitField0_ |= 0x00200000; + onChanged(); + return this; } + private java.lang.Object workstationLaunchUrl_ = ""; + /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the launch URL for workstations in this cluster.
            +     * Requests sent to unstarted workstations will be redirected to this URL.
            +     *
            +     * Requests redirected to the launch endpoint will be sent with a
            +     * `workstation` and `project` query parameter containing the full workstation
            +     * resource name and project ID, respectively. The launch endpoint is
            +     * responsible for starting the workstation, polling it until it reaches
            +     * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The workstationLaunchUrl. */ - public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { - if (conditionsBuilder_ == null) { - return conditions_.get(index); + public java.lang.String getWorkstationLaunchUrl() { + java.lang.Object ref = workstationLaunchUrl_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + workstationLaunchUrl_ = s; + return s; } else { - return conditionsBuilder_.getMessageOrBuilder(index); + return (java.lang.String) ref; } } @@ -5820,19 +8627,29 @@ public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the launch URL for workstations in this cluster.
            +     * Requests sent to unstarted workstations will be redirected to this URL.
            +     *
            +     * Requests redirected to the launch endpoint will be sent with a
            +     * `workstation` and `project` query parameter containing the full workstation
            +     * resource name and project ID, respectively. The launch endpoint is
            +     * responsible for starting the workstation, polling it until it reaches
            +     * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for workstationLaunchUrl. */ - public java.util.List getConditionsOrBuilderList() { - if (conditionsBuilder_ != null) { - return conditionsBuilder_.getMessageOrBuilderList(); + public com.google.protobuf.ByteString getWorkstationLaunchUrlBytes() { + java.lang.Object ref = workstationLaunchUrl_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + workstationLaunchUrl_ = b; + return b; } else { - return java.util.Collections.unmodifiableList(conditions_); + return (com.google.protobuf.ByteString) ref; } } @@ -5840,65 +8657,84 @@ public java.util.List getConditionsOrB * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the launch URL for workstations in this cluster.
            +     * Requests sent to unstarted workstations will be redirected to this URL.
            +     *
            +     * Requests redirected to the launch endpoint will be sent with a
            +     * `workstation` and `project` query parameter containing the full workstation
            +     * resource name and project ID, respectively. The launch endpoint is
            +     * responsible for starting the workstation, polling it until it reaches
            +     * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The workstationLaunchUrl to set. + * @return This builder for chaining. */ - public com.google.rpc.Status.Builder addConditionsBuilder() { - return internalGetConditionsFieldBuilder() - .addBuilder(com.google.rpc.Status.getDefaultInstance()); + public Builder setWorkstationLaunchUrl(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + workstationLaunchUrl_ = value; + bitField0_ |= 0x00400000; + onChanged(); + return this; } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the launch URL for workstations in this cluster.
            +     * Requests sent to unstarted workstations will be redirected to this URL.
            +     *
            +     * Requests redirected to the launch endpoint will be sent with a
            +     * `workstation` and `project` query parameter containing the full workstation
            +     * resource name and project ID, respectively. The launch endpoint is
            +     * responsible for starting the workstation, polling it until it reaches
            +     * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. */ - public com.google.rpc.Status.Builder addConditionsBuilder(int index) { - return internalGetConditionsFieldBuilder() - .addBuilder(index, com.google.rpc.Status.getDefaultInstance()); + public Builder clearWorkstationLaunchUrl() { + workstationLaunchUrl_ = getDefaultInstance().getWorkstationLaunchUrl(); + bitField0_ = (bitField0_ & ~0x00400000); + onChanged(); + return this; } /** * * *
            -     * Output only. Status conditions describing the workstation cluster's current
            -     * state.
            +     * Optional. Specifies the launch URL for workstations in this cluster.
            +     * Requests sent to unstarted workstations will be redirected to this URL.
            +     *
            +     * Requests redirected to the launch endpoint will be sent with a
            +     * `workstation` and `project` query parameter containing the full workstation
            +     * resource name and project ID, respectively. The launch endpoint is
            +     * responsible for starting the workstation, polling it until it reaches
            +     * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
                  * 
            * - * - * repeated .google.rpc.Status conditions = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for workstationLaunchUrl to set. + * @return This builder for chaining. */ - public java.util.List getConditionsBuilderList() { - return internalGetConditionsFieldBuilder().getBuilderList(); - } - - private com.google.protobuf.RepeatedFieldBuilder< - com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> - internalGetConditionsFieldBuilder() { - if (conditionsBuilder_ == null) { - conditionsBuilder_ = - new com.google.protobuf.RepeatedFieldBuilder< - com.google.rpc.Status, - com.google.rpc.Status.Builder, - com.google.rpc.StatusOrBuilder>( - conditions_, ((bitField0_ & 0x00008000) != 0), getParentForChildren(), isClean()); - conditions_ = null; + public Builder setWorkstationLaunchUrlBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - return conditionsBuilder_; + checkByteStringIsUtf8(value); + workstationLaunchUrl_ = value; + bitField0_ |= 0x00400000; + onChanged(); + return this; } // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationCluster) diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationClusterOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationClusterOrBuilder.java index a6f71370d574..10c0c9fa493f 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationClusterOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationClusterOrBuilder.java @@ -30,10 +30,10 @@ public interface WorkstationClusterOrBuilder * * *
            -   * Full name of this workstation cluster.
            +   * Identifier. Full name of this workstation cluster.
                * 
            * - * string name = 1; + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; * * @return The name. */ @@ -43,10 +43,10 @@ public interface WorkstationClusterOrBuilder * * *
            -   * Full name of this workstation cluster.
            +   * Identifier. Full name of this workstation cluster.
                * 
            * - * string name = 1; + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; * * @return The bytes for name. */ @@ -86,7 +86,9 @@ public interface WorkstationClusterOrBuilder * cluster. *
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * * * @return The uid. */ @@ -100,7 +102,9 @@ public interface WorkstationClusterOrBuilder * cluster. *
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * * * @return The bytes for uid. */ @@ -551,14 +555,58 @@ java.lang.String getLabelsOrDefault( com.google.cloud.workstations.v1beta.WorkstationCluster.PrivateClusterConfigOrBuilder getPrivateClusterConfigOrBuilder(); + /** + * + * + *
            +   * Optional. Configuration options for a custom domain.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the domainConfig field is set. + */ + boolean hasDomainConfig(); + + /** + * + * + *
            +   * Optional. Configuration options for a custom domain.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The domainConfig. + */ + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig getDomainConfig(); + + /** + * + * + *
            +   * Optional. Configuration options for a custom domain.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.DomainConfig domain_config = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1beta.WorkstationCluster.DomainConfigOrBuilder + getDomainConfigOrBuilder(); + /** * * *
                * Output only. Whether this workstation cluster is in degraded mode, in which
            -   * case it may require user action to restore full functionality. Details can
            -   * be found in
            -   * [conditions][google.cloud.workstations.v1beta.WorkstationCluster.conditions].
            +   * case it may require user action to restore full functionality. The
            +   * [conditions][google.cloud.workstations.v1beta.WorkstationCluster.conditions]
            +   * field contains detailed information about the status of the cluster.
                * 
            * * bool degraded = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; @@ -631,4 +679,242 @@ java.lang.String getLabelsOrDefault( *
            */ com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index); + + /** + * + * + *
            +   * Output only. Reserved for future use.
            +   * 
            + * + * bool satisfies_pzs = 18 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzs. + */ + boolean getSatisfiesPzs(); + + /** + * + * + *
            +   * Output only. Reserved for future use.
            +   * 
            + * + * bool satisfies_pzi = 19 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzi. + */ + boolean getSatisfiesPzi(); + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + int getTagsCount(); + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + boolean containsTags(java.lang.String key); + + /** Use {@link #getTagsMap()} instead. */ + @java.lang.Deprecated + java.util.Map getTags(); + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.Map getTagsMap(); + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + /* nullable */ + java.lang.String getTagsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue); + + /** + * + * + *
            +   * Optional. Input only. Immutable. Tag keys/values directly bound to this
            +   * resource. For example:
            +   * "123/environment": "production",
            +   * "123/costCenter": "marketing"
            +   * 
            + * + * + * map<string, string> tags = 20 [(.google.api.field_behavior) = INPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OPTIONAL]; + * + */ + java.lang.String getTagsOrThrow(java.lang.String key); + + /** + * + * + *
            +   * Optional. Configuration options for Cluster HTTP Gateway.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the gatewayConfig field is set. + */ + boolean hasGatewayConfig(); + + /** + * + * + *
            +   * Optional. Configuration options for Cluster HTTP Gateway.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The gatewayConfig. + */ + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig getGatewayConfig(); + + /** + * + * + *
            +   * Optional. Configuration options for Cluster HTTP Gateway.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfig gateway_config = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfigOrBuilder + getGatewayConfigOrBuilder(); + + /** + * + * + *
            +   * Optional. Specifies the redirect URL for unauthorized requests received by
            +   * workstation VMs in this cluster.
            +   *
            +   * Redirects to this endpoint will send a base64 encoded `state` query param
            +   * containing the target workstation name and original request hostname. The
            +   * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +   * and redirecting back to the original hostname with the token.
            +   * 
            + * + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The workstationAuthorizationUrl. + */ + java.lang.String getWorkstationAuthorizationUrl(); + + /** + * + * + *
            +   * Optional. Specifies the redirect URL for unauthorized requests received by
            +   * workstation VMs in this cluster.
            +   *
            +   * Redirects to this endpoint will send a base64 encoded `state` query param
            +   * containing the target workstation name and original request hostname. The
            +   * endpoint is responsible for retrieving a token using `GenerateAccessToken`
            +   * and redirecting back to the original hostname with the token.
            +   * 
            + * + * string workstation_authorization_url = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The bytes for workstationAuthorizationUrl. + */ + com.google.protobuf.ByteString getWorkstationAuthorizationUrlBytes(); + + /** + * + * + *
            +   * Optional. Specifies the launch URL for workstations in this cluster.
            +   * Requests sent to unstarted workstations will be redirected to this URL.
            +   *
            +   * Requests redirected to the launch endpoint will be sent with a
            +   * `workstation` and `project` query parameter containing the full workstation
            +   * resource name and project ID, respectively. The launch endpoint is
            +   * responsible for starting the workstation, polling it until it reaches
            +   * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
            +   * 
            + * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The workstationLaunchUrl. + */ + java.lang.String getWorkstationLaunchUrl(); + + /** + * + * + *
            +   * Optional. Specifies the launch URL for workstations in this cluster.
            +   * Requests sent to unstarted workstations will be redirected to this URL.
            +   *
            +   * Requests redirected to the launch endpoint will be sent with a
            +   * `workstation` and `project` query parameter containing the full workstation
            +   * resource name and project ID, respectively. The launch endpoint is
            +   * responsible for starting the workstation, polling it until it reaches
            +   * `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
            +   * 
            + * + * string workstation_launch_url = 23 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for workstationLaunchUrl. + */ + com.google.protobuf.ByteString getWorkstationLaunchUrlBytes(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationConfig.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationConfig.java index b1e7ed6e3fbd..c8bc8d05ae3d 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationConfig.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationConfig.java @@ -69,6 +69,7 @@ private WorkstationConfig() { readinessChecks_ = java.util.Collections.emptyList(); replicaZones_ = com.google.protobuf.LazyStringArrayList.emptyList(); conditions_ = java.util.Collections.emptyList(); + allowedPorts_ = java.util.Collections.emptyList(); } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -241,10 +242,12 @@ public interface GceInstanceOrBuilder *
                    * Optional. The email address of the service account for Cloud
                    * Workstations VMs created with this configuration. When specified, be
            -       * sure that the service account has `logginglogEntries.create` permission
            -       * on the project so it can write logs out to Cloud Logging. If using a
            -       * custom container image, the service account must have permissions to
            -       * pull the specified image.
            +       * sure that the service account has `logging.logEntries.create` and
            +       * `monitoring.timeSeries.create` permissions on the project so it can
            +       * write logs out to Cloud Logging. If using a custom container image, the
            +       * service account must have [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image.
                    *
                    * If you as the administrator want to be able to `ssh` into the
                    * underlying VM, you need to set this value to a service account
            @@ -270,10 +273,12 @@ public interface GceInstanceOrBuilder
                    * 
                    * Optional. The email address of the service account for Cloud
                    * Workstations VMs created with this configuration. When specified, be
            -       * sure that the service account has `logginglogEntries.create` permission
            -       * on the project so it can write logs out to Cloud Logging. If using a
            -       * custom container image, the service account must have permissions to
            -       * pull the specified image.
            +       * sure that the service account has `logging.logEntries.create` and
            +       * `monitoring.timeSeries.create` permissions on the project so it can
            +       * write logs out to Cloud Logging. If using a custom container image, the
            +       * service account must have [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image.
                    *
                    * If you as the administrator want to be able to `ssh` into the
                    * underlying VM, you need to set this value to a service account
            @@ -299,9 +304,8 @@ public interface GceInstanceOrBuilder
                    * 
                    * Optional. Scopes to grant to the
                    * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
                    * 
            * * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -317,9 +321,8 @@ public interface GceInstanceOrBuilder *
                    * Optional. Scopes to grant to the
                    * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
                    * 
            * * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -335,9 +338,8 @@ public interface GceInstanceOrBuilder *
                    * Optional. Scopes to grant to the
                    * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
                    * 
            * * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -354,9 +356,8 @@ public interface GceInstanceOrBuilder *
                    * Optional. Scopes to grant to the
                    * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
                    * 
            * * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -499,7 +500,9 @@ public interface GceInstanceOrBuilder * *
                    * Optional. Whether to enable nested virtualization on Cloud Workstations
            -       * VMs created under this workstation configuration.
            +       * VMs created using this workstation configuration.
            +       *
            +       * Defaults to false.
                    *
                    * Nested virtualization lets you run virtual machine (VM) instances
                    * inside your workstation. Before enabling nested virtualization,
            @@ -522,16 +525,6 @@ public interface GceInstanceOrBuilder
                    * workstation configurations that specify a
                    * [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.machine_type]
                    * in the N1 or N2 machine series.
            -       * * **GPUs**: nested virtualization may not be enabled on workstation
            -       * configurations with accelerators.
            -       * * **Operating System**: Because
            -       * [Container-Optimized
            -       * OS](https://cloud.google.com/compute/docs/images/os-details#container-optimized_os_cos)
            -       * does not support nested virtualization, when nested virtualization is
            -       * enabled, the underlying Compute Engine VM instances boot from an
            -       * [Ubuntu
            -       * LTS](https://cloud.google.com/compute/docs/images/os-details#ubuntu_lts)
            -       * image.
                    * 
            * * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; @@ -726,6 +719,406 @@ public interface GceInstanceOrBuilder */ com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.AcceleratorOrBuilder getAcceleratorsOrBuilder(int index); + + /** + * + * + *
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig> + getBoostConfigsList(); + + /** + * + * + *
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + getBoostConfigs(int index); + + /** + * + * + *
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getBoostConfigsCount(); + + /** + * + * + *
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder> + getBoostConfigsOrBuilderList(); + + /** + * + * + *
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfigOrBuilder + getBoostConfigsOrBuilder(int index); + + /** + * + * + *
            +       * Optional. Whether to disable SSH access to the VM.
            +       * 
            + * + * bool disable_ssh = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The disableSsh. + */ + boolean getDisableSsh(); + + /** + * + * + *
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
            +       * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getVmTagsCount(); + + /** + * + * + *
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
            +       * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + boolean containsVmTags(java.lang.String key); + + /** Use {@link #getVmTagsMap()} instead. */ + @java.lang.Deprecated + java.util.Map getVmTags(); + + /** + * + * + *
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
            +       * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.Map getVmTagsMap(); + + /** + * + * + *
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
            +       * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + /* nullable */ + java.lang.String getVmTagsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue); + + /** + * + * + *
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
            +       * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.lang.String getVmTagsOrThrow(java.lang.String key); + + /** + * + * + *
            +       * Optional.
            +       * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +       * specifies a reservation that can be consumed to create VM
            +       * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +       * will only create VMs in the zone where the reservation is located.
            +       * This would affect availability since the service will no longer be
            +       * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +       * reservations in both zones that the config creates VMs in will ensure
            +       * higher availability.
            +       * **Important Considerations for Reservation Affinity:**
            +       *
            +       * *   This feature is intended for advanced users and requires
            +       * familiarity with Google Compute Engine reservations.
            +       * *   Using reservations incurs charges, regardless of utilization.
            +       * *   The resources in the pool will consume the specified
            +       * reservation. Take this into account when setting the
            +       * pool size.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the reservationAffinity field is set. + */ + boolean hasReservationAffinity(); + + /** + * + * + *
            +       * Optional.
            +       * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +       * specifies a reservation that can be consumed to create VM
            +       * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +       * will only create VMs in the zone where the reservation is located.
            +       * This would affect availability since the service will no longer be
            +       * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +       * reservations in both zones that the config creates VMs in will ensure
            +       * higher availability.
            +       * **Important Considerations for Reservation Affinity:**
            +       *
            +       * *   This feature is intended for advanced users and requires
            +       * familiarity with Google Compute Engine reservations.
            +       * *   Using reservations incurs charges, regardless of utilization.
            +       * *   The resources in the pool will consume the specified
            +       * reservation. Take this into account when setting the
            +       * pool size.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The reservationAffinity. + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity + getReservationAffinity(); + + /** + * + * + *
            +       * Optional.
            +       * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +       * specifies a reservation that can be consumed to create VM
            +       * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +       * will only create VMs in the zone where the reservation is located.
            +       * This would affect availability since the service will no longer be
            +       * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +       * reservations in both zones that the config creates VMs in will ensure
            +       * higher availability.
            +       * **Important Considerations for Reservation Affinity:**
            +       *
            +       * *   This feature is intended for advanced users and requires
            +       * familiarity with Google Compute Engine reservations.
            +       * *   Using reservations incurs charges, regardless of utilization.
            +       * *   The resources in the pool will consume the specified
            +       * reservation. Take this into account when setting the
            +       * pool size.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinityOrBuilder + getReservationAffinityOrBuilder(); + + /** + * + * + *
            +       * Optional. Link to the startup script stored in Cloud Storage. This
            +       * script will be run on the host workstation VM when the VM is created.
            +       * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +       * specifying a startup script, the service account must have [Permission
            +       * to access the bucket and script file in Cloud
            +       * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +       * Otherwise, the script must be publicly accessible.
            +       * Note that the service regularly updates the OS version of the host VM,
            +       * and it is the responsibility of the user to ensure the script stays
            +       * compatible with the OS version.
            +       * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The startupScriptUri. + */ + java.lang.String getStartupScriptUri(); + + /** + * + * + *
            +       * Optional. Link to the startup script stored in Cloud Storage. This
            +       * script will be run on the host workstation VM when the VM is created.
            +       * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +       * specifying a startup script, the service account must have [Permission
            +       * to access the bucket and script file in Cloud
            +       * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +       * Otherwise, the script must be publicly accessible.
            +       * Note that the service regularly updates the OS version of the host VM,
            +       * and it is the responsibility of the user to ensure the script stays
            +       * compatible with the OS version.
            +       * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for startupScriptUri. + */ + com.google.protobuf.ByteString getStartupScriptUriBytes(); + + /** + * + * + *
            +       * Optional. Custom metadata to apply to Compute Engine instances.
            +       * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getInstanceMetadataCount(); + + /** + * + * + *
            +       * Optional. Custom metadata to apply to Compute Engine instances.
            +       * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + boolean containsInstanceMetadata(java.lang.String key); + + /** Use {@link #getInstanceMetadataMap()} instead. */ + @java.lang.Deprecated + java.util.Map getInstanceMetadata(); + + /** + * + * + *
            +       * Optional. Custom metadata to apply to Compute Engine instances.
            +       * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.Map getInstanceMetadataMap(); + + /** + * + * + *
            +       * Optional. Custom metadata to apply to Compute Engine instances.
            +       * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + /* nullable */ + java.lang.String getInstanceMetadataOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue); + + /** + * + * + *
            +       * Optional. Custom metadata to apply to Compute Engine instances.
            +       * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.lang.String getInstanceMetadataOrThrow(java.lang.String key); } /** @@ -764,6 +1157,8 @@ private GceInstance() { serviceAccountScopes_ = com.google.protobuf.LazyStringArrayList.emptyList(); tags_ = com.google.protobuf.LazyStringArrayList.emptyList(); accelerators_ = java.util.Collections.emptyList(); + boostConfigs_ = java.util.Collections.emptyList(); + startupScriptUri_ = ""; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { @@ -771,6 +1166,20 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_descriptor; } + @SuppressWarnings({"rawtypes"}) + @java.lang.Override + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 14: + return internalGetVmTags(); + case 27: + return internalGetInstanceMetadata(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + @java.lang.Override protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { @@ -2975,5636 +3384,6346 @@ public com.google.protobuf.Parser getParserForType() { } } - private int bitField0_; - public static final int MACHINE_TYPE_FIELD_NUMBER = 1; + public interface BoostConfigOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig) + com.google.protobuf.MessageOrBuilder { - @SuppressWarnings("serial") - private volatile java.lang.Object machineType_ = ""; + /** + * + * + *
            +         * Required. The ID to be used for the boost configuration.
            +         * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The id. + */ + java.lang.String getId(); - /** - * - * - *
            -       * Optional. The type of machine to use for VM instances—for example,
            -       * `"e2-standard-4"`. For more information about machine types that
            -       * Cloud Workstations supports, see the list of
            -       * [available machine
            -       * types](https://cloud.google.com/workstations/docs/available-machine-types).
            -       * 
            - * - * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The machineType. - */ - @java.lang.Override - public java.lang.String getMachineType() { - java.lang.Object ref = machineType_; - 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(); - machineType_ = s; - return s; - } - } + /** + * + * + *
            +         * Required. The ID to be used for the boost configuration.
            +         * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for id. + */ + com.google.protobuf.ByteString getIdBytes(); - /** - * - * - *
            -       * Optional. The type of machine to use for VM instances—for example,
            -       * `"e2-standard-4"`. For more information about machine types that
            -       * Cloud Workstations supports, see the list of
            -       * [available machine
            -       * types](https://cloud.google.com/workstations/docs/available-machine-types).
            -       * 
            - * - * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for machineType. - */ - @java.lang.Override - public com.google.protobuf.ByteString getMachineTypeBytes() { - java.lang.Object ref = machineType_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - machineType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + /** + * + * + *
            +         * Optional. The type of machine that boosted VM instances will use—for
            +         * example, `e2-standard-4`. For more information about machine types
            +         * that Cloud Workstations supports, see the list of [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Defaults to `e2-standard-4`.
            +         * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The machineType. + */ + java.lang.String getMachineType(); - public static final int SERVICE_ACCOUNT_FIELD_NUMBER = 2; + /** + * + * + *
            +         * Optional. The type of machine that boosted VM instances will use—for
            +         * example, `e2-standard-4`. For more information about machine types
            +         * that Cloud Workstations supports, see the list of [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Defaults to `e2-standard-4`.
            +         * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for machineType. + */ + com.google.protobuf.ByteString getMachineTypeBytes(); - @SuppressWarnings("serial") - private volatile java.lang.Object serviceAccount_ = ""; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator> + getAcceleratorsList(); + + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + getAccelerators(int index); + + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getAcceleratorsCount(); + + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + getAcceleratorsOrBuilderList(); + + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.AcceleratorOrBuilder + getAcceleratorsOrBuilder(int index); + + /** + * + * + *
            +         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +         * 
            + * + * int32 boot_disk_size_gb = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bootDiskSizeGb. + */ + int getBootDiskSizeGb(); + + /** + * + * + *
            +         * Optional. Whether to enable nested virtualization on boosted Cloud
            +         * Workstations VMs running using this boost configuration.
            +         *
            +         * Defaults to false.
            +         *
            +         * Nested virtualization lets you run virtual machine (VM) instances
            +         * inside your workstation. Before enabling nested virtualization,
            +         * consider the following important considerations. Cloud Workstations
            +         * instances are subject to the [same restrictions as Compute Engine
            +         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +         *
            +         * * **Organization policy**: projects, folders, or
            +         * organizations may be restricted from creating nested VMs if the
            +         * **Disable VM nested virtualization** constraint is enforced in
            +         * the organization policy. For more information, see the
            +         * Compute Engine section,
            +         * [Checking whether nested virtualization is
            +         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +         * * **Performance**: nested VMs might experience a 10% or greater
            +         * decrease in performance for workloads that are CPU-bound and
            +         * possibly greater than a 10% decrease for workloads that are
            +         * input/output bound.
            +         * * **Machine Type**: nested virtualization can only be enabled on
            +         * boost configurations that specify a
            +         * [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig.machine_type]
            +         * in the N1 or N2 machine series.
            +         * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enableNestedVirtualization. + */ + boolean getEnableNestedVirtualization(); + + /** + * + * + *
            +         * Optional. The number of boost VMs that the system should keep idle so
            +         * that workstations can be boosted quickly. Defaults to `0`.
            +         * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The poolSize. + */ + int getPoolSize(); + + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create boost VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the reservationAffinity field is set. + */ + boolean hasReservationAffinity(); + + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create boost VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The reservationAffinity. + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity + getReservationAffinity(); + + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create boost VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinityOrBuilder + getReservationAffinityOrBuilder(); + } /** * * *
            -       * Optional. The email address of the service account for Cloud
            -       * Workstations VMs created with this configuration. When specified, be
            -       * sure that the service account has `logginglogEntries.create` permission
            -       * on the project so it can write logs out to Cloud Logging. If using a
            -       * custom container image, the service account must have permissions to
            -       * pull the specified image.
            -       *
            -       * If you as the administrator want to be able to `ssh` into the
            -       * underlying VM, you need to set this value to a service account
            -       * for which you have the `iam.serviceAccounts.actAs` permission.
            -       * Conversely, if you don't want anyone to be able to `ssh` into the
            -       * underlying VM, use a service account where no one has that
            -       * permission.
            -       *
            -       * If not set, VMs run with a service account provided by the
            -       * Cloud Workstations service, and the image must be publicly
            -       * accessible.
            +       * A boost configuration is a set of resources that a workstation can use
            +       * to increase its performance. If you specify a boost configuration, upon
            +       * startup, workstation users can choose to use a VM provisioned under the
            +       * boost config by passing the boost config ID in the start request. If
            +       * the workstation user does not provide a boost config ID  in the start
            +       * request, the system will choose a VM from the pool provisioned under
            +       * the default config.
                    * 
            * - * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The serviceAccount. + * Protobuf type {@code + * google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig} */ - @java.lang.Override - public java.lang.String getServiceAccount() { - java.lang.Object ref = serviceAccount_; - 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(); - serviceAccount_ = s; - return s; + public static final class BoostConfig extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig) + BoostConfigOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "BoostConfig"); } - } - /** - * - * - *
            -       * Optional. The email address of the service account for Cloud
            -       * Workstations VMs created with this configuration. When specified, be
            -       * sure that the service account has `logginglogEntries.create` permission
            -       * on the project so it can write logs out to Cloud Logging. If using a
            -       * custom container image, the service account must have permissions to
            -       * pull the specified image.
            -       *
            -       * If you as the administrator want to be able to `ssh` into the
            -       * underlying VM, you need to set this value to a service account
            -       * for which you have the `iam.serviceAccounts.actAs` permission.
            -       * Conversely, if you don't want anyone to be able to `ssh` into the
            -       * underlying VM, use a service account where no one has that
            -       * permission.
            -       *
            -       * If not set, VMs run with a service account provided by the
            -       * Cloud Workstations service, and the image must be publicly
            -       * accessible.
            -       * 
            - * - * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for serviceAccount. - */ - @java.lang.Override - public com.google.protobuf.ByteString getServiceAccountBytes() { - java.lang.Object ref = serviceAccount_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - serviceAccount_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + // Use BoostConfig.newBuilder() to construct. + private BoostConfig(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); } - } - - public static final int SERVICE_ACCOUNT_SCOPES_FIELD_NUMBER = 3; - @SuppressWarnings("serial") - private com.google.protobuf.LazyStringArrayList serviceAccountScopes_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + private BoostConfig() { + id_ = ""; + machineType_ = ""; + accelerators_ = java.util.Collections.emptyList(); + } - /** - * - * - *
            -       * Optional. Scopes to grant to the
            -       * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            -       * 
            - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return A list containing the serviceAccountScopes. - */ - public com.google.protobuf.ProtocolStringList getServiceAccountScopesList() { - return serviceAccountScopes_; - } + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_BoostConfig_descriptor; + } - /** - * - * - *
            -       * Optional. Scopes to grant to the
            -       * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            -       * 
            - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The count of serviceAccountScopes. - */ - public int getServiceAccountScopesCount() { - return serviceAccountScopes_.size(); - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_BoostConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig.Builder.class); + } - /** - * - * - *
            -       * Optional. Scopes to grant to the
            -       * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            -       * 
            - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index of the element to return. - * @return The serviceAccountScopes at the given index. - */ - public java.lang.String getServiceAccountScopes(int index) { - return serviceAccountScopes_.get(index); - } + private int bitField0_; + public static final int ID_FIELD_NUMBER = 1; - /** - * - * - *
            -       * Optional. Scopes to grant to the
            -       * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -       * Various scopes are automatically added based on feature usage. When
            -       * specified, users of workstations under this configuration must have
            -       * `iam.serviceAccounts.actAs` on the service account.
            -       * 
            - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index of the value to return. - * @return The bytes of the serviceAccountScopes at the given index. - */ - public com.google.protobuf.ByteString getServiceAccountScopesBytes(int index) { - return serviceAccountScopes_.getByteString(index); - } + @SuppressWarnings("serial") + private volatile java.lang.Object id_ = ""; - public static final int TAGS_FIELD_NUMBER = 4; + /** + * + * + *
            +         * Required. The ID to be used for the boost configuration.
            +         * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The id. + */ + @java.lang.Override + public java.lang.String getId() { + java.lang.Object ref = id_; + 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(); + id_ = s; + return s; + } + } - @SuppressWarnings("serial") - private com.google.protobuf.LazyStringArrayList tags_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * + * + *
            +         * Required. The ID to be used for the boost configuration.
            +         * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for id. + */ + @java.lang.Override + public com.google.protobuf.ByteString getIdBytes() { + java.lang.Object ref = id_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + id_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - /** - * - * - *
            -       * Optional. Network tags to add to the Compute Engine VMs backing the
            -       * workstations. This option applies
            -       * [network
            -       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -       * created with this configuration. These network tags enable the creation
            -       * of [firewall
            -       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -       * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return A list containing the tags. - */ - public com.google.protobuf.ProtocolStringList getTagsList() { - return tags_; - } + public static final int MACHINE_TYPE_FIELD_NUMBER = 2; - /** - * - * - *
            -       * Optional. Network tags to add to the Compute Engine VMs backing the
            -       * workstations. This option applies
            -       * [network
            -       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -       * created with this configuration. These network tags enable the creation
            -       * of [firewall
            -       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -       * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The count of tags. - */ - public int getTagsCount() { - return tags_.size(); - } + @SuppressWarnings("serial") + private volatile java.lang.Object machineType_ = ""; - /** - * - * - *
            -       * Optional. Network tags to add to the Compute Engine VMs backing the
            -       * workstations. This option applies
            -       * [network
            -       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -       * created with this configuration. These network tags enable the creation
            -       * of [firewall
            -       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -       * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the element to return. - * @return The tags at the given index. - */ - public java.lang.String getTags(int index) { - return tags_.get(index); - } + /** + * + * + *
            +         * Optional. The type of machine that boosted VM instances will use—for
            +         * example, `e2-standard-4`. For more information about machine types
            +         * that Cloud Workstations supports, see the list of [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Defaults to `e2-standard-4`.
            +         * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The machineType. + */ + @java.lang.Override + public java.lang.String getMachineType() { + java.lang.Object ref = machineType_; + 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(); + machineType_ = s; + return s; + } + } - /** - * - * - *
            -       * Optional. Network tags to add to the Compute Engine VMs backing the
            -       * workstations. This option applies
            -       * [network
            -       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -       * created with this configuration. These network tags enable the creation
            -       * of [firewall
            -       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -       * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the value to return. - * @return The bytes of the tags at the given index. - */ - public com.google.protobuf.ByteString getTagsBytes(int index) { - return tags_.getByteString(index); - } + /** + * + * + *
            +         * Optional. The type of machine that boosted VM instances will use—for
            +         * example, `e2-standard-4`. For more information about machine types
            +         * that Cloud Workstations supports, see the list of [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Defaults to `e2-standard-4`.
            +         * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for machineType. + */ + @java.lang.Override + public com.google.protobuf.ByteString getMachineTypeBytes() { + java.lang.Object ref = machineType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + machineType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - public static final int POOL_SIZE_FIELD_NUMBER = 5; - private int poolSize_ = 0; + public static final int ACCELERATORS_FIELD_NUMBER = 3; - /** - * - * - *
            -       * Optional. The number of VMs that the system should keep idle so that
            -       * new workstations can be started quickly for new users. Defaults to `0`
            -       * in the API.
            -       * 
            - * - * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The poolSize. - */ - @java.lang.Override - public int getPoolSize() { - return poolSize_; - } + @SuppressWarnings("serial") + private java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator> + accelerators_; - public static final int POOLED_INSTANCES_FIELD_NUMBER = 12; - private int pooledInstances_ = 0; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator> + getAcceleratorsList() { + return accelerators_; + } - /** - * - * - *
            -       * Output only. Number of instances currently available in the pool for
            -       * faster workstation startup.
            -       * 
            - * - * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The pooledInstances. - */ - @java.lang.Override - public int getPooledInstances() { - return pooledInstances_; - } + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + getAcceleratorsOrBuilderList() { + return accelerators_; + } - public static final int DISABLE_PUBLIC_IP_ADDRESSES_FIELD_NUMBER = 6; - private boolean disablePublicIpAddresses_ = false; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getAcceleratorsCount() { + return accelerators_.size(); + } - /** - * - * - *
            -       * Optional. When set to true, disables public IP addresses for VMs. If
            -       * you disable public IP addresses, you must set up Private Google Access
            -       * or Cloud NAT on your network. If you use Private Google Access and you
            -       * use `private.googleapis.com` or `restricted.googleapis.com` for
            -       * Container Registry and Artifact Registry, make sure that you set
            -       * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            -       * Defaults to false (VMs have public IP addresses).
            -       * 
            - * - * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The disablePublicIpAddresses. - */ - @java.lang.Override - public boolean getDisablePublicIpAddresses() { - return disablePublicIpAddresses_; - } + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + getAccelerators(int index) { + return accelerators_.get(index); + } - public static final int ENABLE_NESTED_VIRTUALIZATION_FIELD_NUMBER = 7; - private boolean enableNestedVirtualization_ = false; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached
            +         * to the boost instance. Defaults to `none`.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder + getAcceleratorsOrBuilder(int index) { + return accelerators_.get(index); + } - /** - * - * - *
            -       * Optional. Whether to enable nested virtualization on Cloud Workstations
            -       * VMs created under this workstation configuration.
            -       *
            -       * Nested virtualization lets you run virtual machine (VM) instances
            -       * inside your workstation. Before enabling nested virtualization,
            -       * consider the following important considerations. Cloud Workstations
            -       * instances are subject to the [same restrictions as Compute Engine
            -       * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            -       *
            -       * * **Organization policy**: projects, folders, or
            -       * organizations may be restricted from creating nested VMs if the
            -       * **Disable VM nested virtualization** constraint is enforced in
            -       * the organization policy. For more information, see the
            -       * Compute Engine section,
            -       * [Checking whether nested virtualization is
            -       * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            -       * * **Performance**: nested VMs might experience a 10% or greater
            -       * decrease in performance for workloads that are CPU-bound and
            -       * possibly greater than a 10% decrease for workloads that are
            -       * input/output bound.
            -       * * **Machine Type**: nested virtualization can only be enabled on
            -       * workstation configurations that specify a
            -       * [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.machine_type]
            -       * in the N1 or N2 machine series.
            -       * * **GPUs**: nested virtualization may not be enabled on workstation
            -       * configurations with accelerators.
            -       * * **Operating System**: Because
            -       * [Container-Optimized
            -       * OS](https://cloud.google.com/compute/docs/images/os-details#container-optimized_os_cos)
            -       * does not support nested virtualization, when nested virtualization is
            -       * enabled, the underlying Compute Engine VM instances boot from an
            -       * [Ubuntu
            -       * LTS](https://cloud.google.com/compute/docs/images/os-details#ubuntu_lts)
            -       * image.
            -       * 
            - * - * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The enableNestedVirtualization. - */ - @java.lang.Override - public boolean getEnableNestedVirtualization() { - return enableNestedVirtualization_; - } + public static final int BOOT_DISK_SIZE_GB_FIELD_NUMBER = 4; + private int bootDiskSizeGb_ = 0; - public static final int SHIELDED_INSTANCE_CONFIG_FIELD_NUMBER = 8; - private com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig - shieldedInstanceConfig_; + /** + * + * + *
            +         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +         * 
            + * + * int32 boot_disk_size_gb = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bootDiskSizeGb. + */ + @java.lang.Override + public int getBootDiskSizeGb() { + return bootDiskSizeGb_; + } - /** - * - * - *
            -       * Optional. A set of Compute Engine Shielded instance options.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the shieldedInstanceConfig field is set. - */ - @java.lang.Override - public boolean hasShieldedInstanceConfig() { - return ((bitField0_ & 0x00000001) != 0); - } + public static final int ENABLE_NESTED_VIRTUALIZATION_FIELD_NUMBER = 7; + private boolean enableNestedVirtualization_ = false; - /** - * - * - *
            -       * Optional. A set of Compute Engine Shielded instance options.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The shieldedInstanceConfig. - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig - getShieldedInstanceConfig() { - return shieldedInstanceConfig_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.getDefaultInstance() - : shieldedInstanceConfig_; - } + /** + * + * + *
            +         * Optional. Whether to enable nested virtualization on boosted Cloud
            +         * Workstations VMs running using this boost configuration.
            +         *
            +         * Defaults to false.
            +         *
            +         * Nested virtualization lets you run virtual machine (VM) instances
            +         * inside your workstation. Before enabling nested virtualization,
            +         * consider the following important considerations. Cloud Workstations
            +         * instances are subject to the [same restrictions as Compute Engine
            +         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +         *
            +         * * **Organization policy**: projects, folders, or
            +         * organizations may be restricted from creating nested VMs if the
            +         * **Disable VM nested virtualization** constraint is enforced in
            +         * the organization policy. For more information, see the
            +         * Compute Engine section,
            +         * [Checking whether nested virtualization is
            +         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +         * * **Performance**: nested VMs might experience a 10% or greater
            +         * decrease in performance for workloads that are CPU-bound and
            +         * possibly greater than a 10% decrease for workloads that are
            +         * input/output bound.
            +         * * **Machine Type**: nested virtualization can only be enabled on
            +         * boost configurations that specify a
            +         * [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig.machine_type]
            +         * in the N1 or N2 machine series.
            +         * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enableNestedVirtualization. + */ + @java.lang.Override + public boolean getEnableNestedVirtualization() { + return enableNestedVirtualization_; + } - /** - * - * - *
            -       * Optional. A set of Compute Engine Shielded instance options.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfigOrBuilder - getShieldedInstanceConfigOrBuilder() { - return shieldedInstanceConfig_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.getDefaultInstance() - : shieldedInstanceConfig_; - } + public static final int POOL_SIZE_FIELD_NUMBER = 5; + private int poolSize_ = 0; - public static final int CONFIDENTIAL_INSTANCE_CONFIG_FIELD_NUMBER = 10; - private com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig - confidentialInstanceConfig_; + /** + * + * + *
            +         * Optional. The number of boost VMs that the system should keep idle so
            +         * that workstations can be boosted quickly. Defaults to `0`.
            +         * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The poolSize. + */ + @java.lang.Override + public int getPoolSize() { + return poolSize_; + } - /** - * - * - *
            -       * Optional. A set of Compute Engine Confidential VM instance options.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the confidentialInstanceConfig field is set. - */ - @java.lang.Override - public boolean hasConfidentialInstanceConfig() { - return ((bitField0_ & 0x00000002) != 0); - } + public static final int RESERVATION_AFFINITY_FIELD_NUMBER = 6; + private com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + reservationAffinity_; - /** - * - * - *
            -       * Optional. A set of Compute Engine Confidential VM instance options.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The confidentialInstanceConfig. - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig - getConfidentialInstanceConfig() { - return confidentialInstanceConfig_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.getDefaultInstance() - : confidentialInstanceConfig_; - } + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create boost VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the reservationAffinity field is set. + */ + @java.lang.Override + public boolean hasReservationAffinity() { + return ((bitField0_ & 0x00000001) != 0); + } - /** - * - * - *
            -       * Optional. A set of Compute Engine Confidential VM instance options.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfigOrBuilder - getConfidentialInstanceConfigOrBuilder() { - return confidentialInstanceConfig_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.getDefaultInstance() - : confidentialInstanceConfig_; - } + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create boost VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The reservationAffinity. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + getReservationAffinity() { + return reservationAffinity_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.getDefaultInstance() + : reservationAffinity_; + } - public static final int BOOT_DISK_SIZE_GB_FIELD_NUMBER = 9; - private int bootDiskSizeGb_ = 0; + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create boost VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinityOrBuilder + getReservationAffinityOrBuilder() { + return reservationAffinity_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.getDefaultInstance() + : reservationAffinity_; + } - /** - * - * - *
            -       * Optional. The size of the boot disk for the VM in gigabytes (GB).
            -       * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            -       * 
            - * - * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bootDiskSizeGb. - */ - @java.lang.Override - public int getBootDiskSizeGb() { - return bootDiskSizeGb_; - } + private byte memoizedIsInitialized = -1; - public static final int ACCELERATORS_FIELD_NUMBER = 11; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - @SuppressWarnings("serial") - private java.util.List< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator> - accelerators_; + memoizedIsInitialized = 1; + return true; + } - /** - * - * - *
            -       * Optional. A list of the type and count of accelerator cards attached to
            -       * the instance.
            -       * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.List< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator> - getAcceleratorsList() { - return accelerators_; - } + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(id_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, id_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(machineType_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, machineType_); + } + for (int i = 0; i < accelerators_.size(); i++) { + output.writeMessage(3, accelerators_.get(i)); + } + if (bootDiskSizeGb_ != 0) { + output.writeInt32(4, bootDiskSizeGb_); + } + if (poolSize_ != 0) { + output.writeInt32(5, poolSize_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(6, getReservationAffinity()); + } + if (enableNestedVirtualization_ != false) { + output.writeBool(7, enableNestedVirtualization_); + } + getUnknownFields().writeTo(output); + } - /** - * - * - *
            -       * Optional. A list of the type and count of accelerator cards attached to
            -       * the instance.
            -       * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.List< - ? extends - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .AcceleratorOrBuilder> - getAcceleratorsOrBuilderList() { - return accelerators_; - } - - /** - * - * - *
            -       * Optional. A list of the type and count of accelerator cards attached to
            -       * the instance.
            -       * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public int getAcceleratorsCount() { - return accelerators_.size(); - } - - /** - * - * - *
            -       * Optional. A list of the type and count of accelerator cards attached to
            -       * the instance.
            -       * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator - getAccelerators(int index) { - return accelerators_.get(index); - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - /** - * - * - *
            -       * Optional. A list of the type and count of accelerator cards attached to
            -       * the instance.
            -       * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .AcceleratorOrBuilder - getAcceleratorsOrBuilder(int index) { - return accelerators_.get(index); - } + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(id_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, id_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(machineType_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, machineType_); + } + for (int i = 0; i < accelerators_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(3, accelerators_.get(i)); + } + if (bootDiskSizeGb_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(4, bootDiskSizeGb_); + } + if (poolSize_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(5, poolSize_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 6, getReservationAffinity()); + } + if (enableNestedVirtualization_ != false) { + size += + com.google.protobuf.CodedOutputStream.computeBoolSize( + 7, enableNestedVirtualization_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - private byte memoizedIsInitialized = -1; + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + other = + (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig) + obj; - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + if (!getId().equals(other.getId())) return false; + if (!getMachineType().equals(other.getMachineType())) return false; + if (!getAcceleratorsList().equals(other.getAcceleratorsList())) return false; + if (getBootDiskSizeGb() != other.getBootDiskSizeGb()) return false; + if (getEnableNestedVirtualization() != other.getEnableNestedVirtualization()) + return false; + if (getPoolSize() != other.getPoolSize()) return false; + if (hasReservationAffinity() != other.hasReservationAffinity()) return false; + if (hasReservationAffinity()) { + if (!getReservationAffinity().equals(other.getReservationAffinity())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - memoizedIsInitialized = 1; - return true; - } + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + ID_FIELD_NUMBER; + hash = (53 * hash) + getId().hashCode(); + hash = (37 * hash) + MACHINE_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getMachineType().hashCode(); + if (getAcceleratorsCount() > 0) { + hash = (37 * hash) + ACCELERATORS_FIELD_NUMBER; + hash = (53 * hash) + getAcceleratorsList().hashCode(); + } + hash = (37 * hash) + BOOT_DISK_SIZE_GB_FIELD_NUMBER; + hash = (53 * hash) + getBootDiskSizeGb(); + hash = (37 * hash) + ENABLE_NESTED_VIRTUALIZATION_FIELD_NUMBER; + hash = + (53 * hash) + + com.google.protobuf.Internal.hashBoolean(getEnableNestedVirtualization()); + hash = (37 * hash) + POOL_SIZE_FIELD_NUMBER; + hash = (53 * hash) + getPoolSize(); + if (hasReservationAffinity()) { + hash = (37 * hash) + RESERVATION_AFFINITY_FIELD_NUMBER; + hash = (53 * hash) + getReservationAffinity().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(machineType_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 1, machineType_); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serviceAccount_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, serviceAccount_); + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - for (int i = 0; i < serviceAccountScopes_.size(); i++) { - com.google.protobuf.GeneratedMessage.writeString( - output, 3, serviceAccountScopes_.getRaw(i)); + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - for (int i = 0; i < tags_.size(); i++) { - com.google.protobuf.GeneratedMessage.writeString(output, 4, tags_.getRaw(i)); + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - if (poolSize_ != 0) { - output.writeInt32(5, poolSize_); + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - if (disablePublicIpAddresses_ != false) { - output.writeBool(6, disablePublicIpAddresses_); + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - if (enableNestedVirtualization_ != false) { - output.writeBool(7, enableNestedVirtualization_); + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - if (((bitField0_ & 0x00000001) != 0)) { - output.writeMessage(8, getShieldedInstanceConfig()); + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - if (bootDiskSizeGb_ != 0) { - output.writeInt32(9, bootDiskSizeGb_); + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); } - if (((bitField0_ & 0x00000002) != 0)) { - output.writeMessage(10, getConfidentialInstanceConfig()); + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); } - for (int i = 0; i < accelerators_.size(); i++) { - output.writeMessage(11, accelerators_.get(i)); + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - if (pooledInstances_ != 0) { - output.writeInt32(12, pooledInstances_); + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - getUnknownFields().writeTo(output); - } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(machineType_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, machineType_); + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serviceAccount_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(2, serviceAccount_); + + public static Builder newBuilder( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } - { - int dataSize = 0; - for (int i = 0; i < serviceAccountScopes_.size(); i++) { - dataSize += computeStringSizeNoTag(serviceAccountScopes_.getRaw(i)); - } - size += dataSize; - size += 1 * getServiceAccountScopesList().size(); + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } - { - int dataSize = 0; - for (int i = 0; i < tags_.size(); i++) { - dataSize += computeStringSizeNoTag(tags_.getRaw(i)); - } - size += dataSize; - size += 1 * getTagsList().size(); + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; } - if (poolSize_ != 0) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(5, poolSize_); - } - if (disablePublicIpAddresses_ != false) { - size += - com.google.protobuf.CodedOutputStream.computeBoolSize(6, disablePublicIpAddresses_); - } - if (enableNestedVirtualization_ != false) { - size += - com.google.protobuf.CodedOutputStream.computeBoolSize(7, enableNestedVirtualization_); - } - if (((bitField0_ & 0x00000001) != 0)) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 8, getShieldedInstanceConfig()); - } - if (bootDiskSizeGb_ != 0) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(9, bootDiskSizeGb_); - } - if (((bitField0_ & 0x00000002) != 0)) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 10, getConfidentialInstanceConfig()); - } - for (int i = 0; i < accelerators_.size(); i++) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize(11, accelerators_.get(i)); - } - if (pooledInstances_ != 0) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(12, pooledInstances_); - } - 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.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance other = - (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) obj; - if (!getMachineType().equals(other.getMachineType())) return false; - if (!getServiceAccount().equals(other.getServiceAccount())) return false; - if (!getServiceAccountScopesList().equals(other.getServiceAccountScopesList())) - return false; - if (!getTagsList().equals(other.getTagsList())) return false; - if (getPoolSize() != other.getPoolSize()) return false; - if (getPooledInstances() != other.getPooledInstances()) return false; - if (getDisablePublicIpAddresses() != other.getDisablePublicIpAddresses()) return false; - if (getEnableNestedVirtualization() != other.getEnableNestedVirtualization()) return false; - if (hasShieldedInstanceConfig() != other.hasShieldedInstanceConfig()) return false; - if (hasShieldedInstanceConfig()) { - if (!getShieldedInstanceConfig().equals(other.getShieldedInstanceConfig())) return false; - } - if (hasConfidentialInstanceConfig() != other.hasConfidentialInstanceConfig()) return false; - if (hasConfidentialInstanceConfig()) { - if (!getConfidentialInstanceConfig().equals(other.getConfidentialInstanceConfig())) - return false; - } - if (getBootDiskSizeGb() != other.getBootDiskSizeGb()) return false; - if (!getAcceleratorsList().equals(other.getAcceleratorsList())) return false; - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + /** + * + * + *
            +         * A boost configuration is a set of resources that a workstation can use
            +         * to increase its performance. If you specify a boost configuration, upon
            +         * startup, workstation users can choose to use a VM provisioned under the
            +         * boost config by passing the boost config ID in the start request. If
            +         * the workstation user does not provide a boost config ID  in the start
            +         * request, the system will choose a VM from the pool provisioned under
            +         * the default config.
            +         * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig) + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_BoostConfig_descriptor; + } - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; - } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + MACHINE_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getMachineType().hashCode(); - hash = (37 * hash) + SERVICE_ACCOUNT_FIELD_NUMBER; - hash = (53 * hash) + getServiceAccount().hashCode(); - if (getServiceAccountScopesCount() > 0) { - hash = (37 * hash) + SERVICE_ACCOUNT_SCOPES_FIELD_NUMBER; - hash = (53 * hash) + getServiceAccountScopesList().hashCode(); - } - if (getTagsCount() > 0) { - hash = (37 * hash) + TAGS_FIELD_NUMBER; - hash = (53 * hash) + getTagsList().hashCode(); - } - hash = (37 * hash) + POOL_SIZE_FIELD_NUMBER; - hash = (53 * hash) + getPoolSize(); - hash = (37 * hash) + POOLED_INSTANCES_FIELD_NUMBER; - hash = (53 * hash) + getPooledInstances(); - hash = (37 * hash) + DISABLE_PUBLIC_IP_ADDRESSES_FIELD_NUMBER; - hash = - (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDisablePublicIpAddresses()); - hash = (37 * hash) + ENABLE_NESTED_VIRTUALIZATION_FIELD_NUMBER; - hash = - (53 * hash) + com.google.protobuf.Internal.hashBoolean(getEnableNestedVirtualization()); - if (hasShieldedInstanceConfig()) { - hash = (37 * hash) + SHIELDED_INSTANCE_CONFIG_FIELD_NUMBER; - hash = (53 * hash) + getShieldedInstanceConfig().hashCode(); - } - if (hasConfidentialInstanceConfig()) { - hash = (37 * hash) + CONFIDENTIAL_INSTANCE_CONFIG_FIELD_NUMBER; - hash = (53 * hash) + getConfidentialInstanceConfig().hashCode(); - } - hash = (37 * hash) + BOOT_DISK_SIZE_GB_FIELD_NUMBER; - hash = (53 * hash) + getBootDiskSizeGb(); - if (getAcceleratorsCount() > 0) { - hash = (37 * hash) + ACCELERATORS_FIELD_NUMBER; - hash = (53 * hash) + getAcceleratorsList().hashCode(); - } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_BoostConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig.Builder.class); + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + // Construct using + // com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - parseFrom(com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetAcceleratorsFieldBuilder(); + internalGetReservationAffinityFieldBuilder(); + } + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + id_ = ""; + machineType_ = ""; + if (acceleratorsBuilder_ == null) { + accelerators_ = java.util.Collections.emptyList(); + } else { + accelerators_ = null; + acceleratorsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000004); + bootDiskSizeGb_ = 0; + enableNestedVirtualization_ = false; + poolSize_ = 0; + reservationAffinity_ = null; + if (reservationAffinityBuilder_ != null) { + reservationAffinityBuilder_.dispose(); + reservationAffinityBuilder_ = null; + } + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_BoostConfig_descriptor; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig.getDefaultInstance(); + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + build() { + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - parseFrom( - java.io.InputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + result = + new com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } + private void buildPartialRepeatedFields( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + result) { + if (acceleratorsBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0)) { + accelerators_ = java.util.Collections.unmodifiableList(accelerators_); + bitField0_ = (bitField0_ & ~0x00000004); + } + result.accelerators_ = accelerators_; + } else { + result.accelerators_ = acceleratorsBuilder_.build(); + } + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - parseDelimitedFrom( - java.io.InputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.id_ = id_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.machineType_ = machineType_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.bootDiskSizeGb_ = bootDiskSizeGb_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.enableNestedVirtualization_ = enableNestedVirtualization_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.poolSize_ = poolSize_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000040) != 0)) { + result.reservationAffinity_ = + reservationAffinityBuilder_ == null + ? reservationAffinity_ + : reservationAffinityBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig) + other); + } else { + super.mergeFrom(other); + return this; + } + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - parseFrom( + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + other) { + if (other + == com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig.getDefaultInstance()) return this; + if (!other.getId().isEmpty()) { + id_ = other.id_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getMachineType().isEmpty()) { + machineType_ = other.machineType_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (acceleratorsBuilder_ == null) { + if (!other.accelerators_.isEmpty()) { + if (accelerators_.isEmpty()) { + accelerators_ = other.accelerators_; + bitField0_ = (bitField0_ & ~0x00000004); + } else { + ensureAcceleratorsIsMutable(); + accelerators_.addAll(other.accelerators_); + } + onChanged(); + } + } else { + if (!other.accelerators_.isEmpty()) { + if (acceleratorsBuilder_.isEmpty()) { + acceleratorsBuilder_.dispose(); + acceleratorsBuilder_ = null; + accelerators_ = other.accelerators_; + bitField0_ = (bitField0_ & ~0x00000004); + acceleratorsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetAcceleratorsFieldBuilder() + : null; + } else { + acceleratorsBuilder_.addAllMessages(other.accelerators_); + } + } + } + if (other.getBootDiskSizeGb() != 0) { + setBootDiskSizeGb(other.getBootDiskSizeGb()); + } + if (other.getEnableNestedVirtualization() != false) { + setEnableNestedVirtualization(other.getEnableNestedVirtualization()); + } + if (other.getPoolSize() != 0) { + setPoolSize(other.getPoolSize()); + } + if (other.hasReservationAffinity()) { + mergeReservationAffinity(other.getReservationAffinity()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + id_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + machineType_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator + m = + input.readMessage( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host + .GceInstance.Accelerator.parser(), + extensionRegistry); + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.add(m); + } else { + acceleratorsBuilder_.addMessage(m); + } + break; + } // case 26 + case 32: + { + bootDiskSizeGb_ = input.readInt32(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 40: + { + poolSize_ = input.readInt32(); + bitField0_ |= 0x00000020; + break; + } // case 40 + case 50: + { + input.readMessage( + internalGetReservationAffinityFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000040; + break; + } // case 50 + case 56: + { + enableNestedVirtualization_ = input.readBool(); + bitField0_ |= 0x00000010; + break; + } // case 56 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } + private int bitField0_; - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + private java.lang.Object id_ = ""; - public static Builder newBuilder( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + /** + * + * + *
            +           * Required. The ID to be used for the boost configuration.
            +           * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The id. + */ + public java.lang.String getId() { + java.lang.Object ref = id_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + id_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + /** + * + * + *
            +           * Required. The ID to be used for the boost configuration.
            +           * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for id. + */ + public com.google.protobuf.ByteString getIdBytes() { + java.lang.Object ref = id_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + id_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - @java.lang.Override - protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessage.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } + /** + * + * + *
            +           * Required. The ID to be used for the boost configuration.
            +           * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The id to set. + * @return This builder for chaining. + */ + public Builder setId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + id_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } - /** - * - * - *
            -       * A runtime using a Compute Engine instance.
            -       * 
            - * - * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance} - */ - public static final class Builder - extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstanceOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_descriptor; - } + /** + * + * + *
            +           * Required. The ID to be used for the boost configuration.
            +           * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearId() { + id_ = getDefaultInstance().getId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Builder - .class); - } + /** + * + * + *
            +           * Required. The ID to be used for the boost configuration.
            +           * 
            + * + * string id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The bytes for id to set. + * @return This builder for chaining. + */ + public Builder setIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + id_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } - // Construct using - // com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); - } + private java.lang.Object machineType_ = ""; - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); - } + /** + * + * + *
            +           * Optional. The type of machine that boosted VM instances will use—for
            +           * example, `e2-standard-4`. For more information about machine types
            +           * that Cloud Workstations supports, see the list of [available machine
            +           * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +           * Defaults to `e2-standard-4`.
            +           * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The machineType. + */ + public java.lang.String getMachineType() { + java.lang.Object ref = machineType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + machineType_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { - internalGetShieldedInstanceConfigFieldBuilder(); - internalGetConfidentialInstanceConfigFieldBuilder(); - internalGetAcceleratorsFieldBuilder(); + /** + * + * + *
            +           * Optional. The type of machine that boosted VM instances will use—for
            +           * example, `e2-standard-4`. For more information about machine types
            +           * that Cloud Workstations supports, see the list of [available machine
            +           * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +           * Defaults to `e2-standard-4`.
            +           * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for machineType. + */ + public com.google.protobuf.ByteString getMachineTypeBytes() { + java.lang.Object ref = machineType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + machineType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - } - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - machineType_ = ""; - serviceAccount_ = ""; - serviceAccountScopes_ = com.google.protobuf.LazyStringArrayList.emptyList(); - tags_ = com.google.protobuf.LazyStringArrayList.emptyList(); - poolSize_ = 0; - pooledInstances_ = 0; - disablePublicIpAddresses_ = false; - enableNestedVirtualization_ = false; - shieldedInstanceConfig_ = null; - if (shieldedInstanceConfigBuilder_ != null) { - shieldedInstanceConfigBuilder_.dispose(); - shieldedInstanceConfigBuilder_ = null; + /** + * + * + *
            +           * Optional. The type of machine that boosted VM instances will use—for
            +           * example, `e2-standard-4`. For more information about machine types
            +           * that Cloud Workstations supports, see the list of [available machine
            +           * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +           * Defaults to `e2-standard-4`.
            +           * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The machineType to set. + * @return This builder for chaining. + */ + public Builder setMachineType(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + machineType_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; } - confidentialInstanceConfig_ = null; - if (confidentialInstanceConfigBuilder_ != null) { - confidentialInstanceConfigBuilder_.dispose(); - confidentialInstanceConfigBuilder_ = null; + + /** + * + * + *
            +           * Optional. The type of machine that boosted VM instances will use—for
            +           * example, `e2-standard-4`. For more information about machine types
            +           * that Cloud Workstations supports, see the list of [available machine
            +           * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +           * Defaults to `e2-standard-4`.
            +           * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearMachineType() { + machineType_ = getDefaultInstance().getMachineType(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; } - bootDiskSizeGb_ = 0; - if (acceleratorsBuilder_ == null) { - accelerators_ = java.util.Collections.emptyList(); - } else { - accelerators_ = null; - acceleratorsBuilder_.clear(); + + /** + * + * + *
            +           * Optional. The type of machine that boosted VM instances will use—for
            +           * example, `e2-standard-4`. For more information about machine types
            +           * that Cloud Workstations supports, see the list of [available machine
            +           * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +           * Defaults to `e2-standard-4`.
            +           * 
            + * + * string machine_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for machineType to set. + * @return This builder for chaining. + */ + public Builder setMachineTypeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + machineType_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; } - bitField0_ = (bitField0_ & ~0x00000800); - return this; - } - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_descriptor; - } + private java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator> + accelerators_ = java.util.Collections.emptyList(); + + private void ensureAcceleratorsIsMutable() { + if (!((bitField0_ & 0x00000004) != 0)) { + accelerators_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator>(accelerators_); + bitField0_ |= 0x00000004; + } + } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - getDefaultInstanceForType() { - return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .getDefaultInstance(); - } + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + acceleratorsBuilder_; - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance build() { - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance result = - buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator> + getAcceleratorsList() { + if (acceleratorsBuilder_ == null) { + return java.util.Collections.unmodifiableList(accelerators_); + } else { + return acceleratorsBuilder_.getMessageList(); + } } - return result; - } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - buildPartial() { - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance result = - new com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance(this); - buildPartialRepeatedFields(result); - if (bitField0_ != 0) { - buildPartial0(result); + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public int getAcceleratorsCount() { + if (acceleratorsBuilder_ == null) { + return accelerators_.size(); + } else { + return acceleratorsBuilder_.getCount(); + } } - onBuilt(); - return result; - } - private void buildPartialRepeatedFields( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance result) { - if (acceleratorsBuilder_ == null) { - if (((bitField0_ & 0x00000800) != 0)) { - accelerators_ = java.util.Collections.unmodifiableList(accelerators_); - bitField0_ = (bitField0_ & ~0x00000800); + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + getAccelerators(int index) { + if (acceleratorsBuilder_ == null) { + return accelerators_.get(index); + } else { + return acceleratorsBuilder_.getMessage(index); } - result.accelerators_ = accelerators_; - } else { - result.accelerators_ = acceleratorsBuilder_.build(); } - } - private void buildPartial0( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.machineType_ = machineType_; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.serviceAccount_ = serviceAccount_; - } - if (((from_bitField0_ & 0x00000004) != 0)) { - serviceAccountScopes_.makeImmutable(); - result.serviceAccountScopes_ = serviceAccountScopes_; - } - if (((from_bitField0_ & 0x00000008) != 0)) { - tags_.makeImmutable(); - result.tags_ = tags_; - } - if (((from_bitField0_ & 0x00000010) != 0)) { - result.poolSize_ = poolSize_; - } - if (((from_bitField0_ & 0x00000020) != 0)) { - result.pooledInstances_ = pooledInstances_; - } - if (((from_bitField0_ & 0x00000040) != 0)) { - result.disablePublicIpAddresses_ = disablePublicIpAddresses_; - } - if (((from_bitField0_ & 0x00000080) != 0)) { - result.enableNestedVirtualization_ = enableNestedVirtualization_; - } - int to_bitField0_ = 0; - if (((from_bitField0_ & 0x00000100) != 0)) { - result.shieldedInstanceConfig_ = - shieldedInstanceConfigBuilder_ == null - ? shieldedInstanceConfig_ - : shieldedInstanceConfigBuilder_.build(); - to_bitField0_ |= 0x00000001; - } - if (((from_bitField0_ & 0x00000200) != 0)) { - result.confidentialInstanceConfig_ = - confidentialInstanceConfigBuilder_ == null - ? confidentialInstanceConfig_ - : confidentialInstanceConfigBuilder_.build(); - to_bitField0_ |= 0x00000002; - } - if (((from_bitField0_ & 0x00000400) != 0)) { - result.bootDiskSizeGb_ = bootDiskSizeGb_; + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setAccelerators( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + value) { + if (acceleratorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAcceleratorsIsMutable(); + accelerators_.set(index, value); + onChanged(); + } else { + acceleratorsBuilder_.setMessage(index, value); + } + return this; } - result.bitField0_ |= to_bitField0_; - } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other - instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) { - return mergeFrom( - (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) other); - } else { - super.mergeFrom(other); + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setAccelerators( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + builderForValue) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.set(index, builderForValue.build()); + onChanged(); + } else { + acceleratorsBuilder_.setMessage(index, builderForValue.build()); + } return this; } - } - public Builder mergeFrom( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance other) { - if (other - == com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .getDefaultInstance()) return this; - if (!other.getMachineType().isEmpty()) { - machineType_ = other.machineType_; - bitField0_ |= 0x00000001; - onChanged(); + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + value) { + if (acceleratorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAcceleratorsIsMutable(); + accelerators_.add(value); + onChanged(); + } else { + acceleratorsBuilder_.addMessage(value); + } + return this; } - if (!other.getServiceAccount().isEmpty()) { - serviceAccount_ = other.serviceAccount_; - bitField0_ |= 0x00000002; - onChanged(); + + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + value) { + if (acceleratorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAcceleratorsIsMutable(); + accelerators_.add(index, value); + onChanged(); + } else { + acceleratorsBuilder_.addMessage(index, value); + } + return this; } - if (!other.serviceAccountScopes_.isEmpty()) { - if (serviceAccountScopes_.isEmpty()) { - serviceAccountScopes_ = other.serviceAccountScopes_; - bitField0_ |= 0x00000004; + + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + builderForValue) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.add(builderForValue.build()); + onChanged(); } else { - ensureServiceAccountScopesIsMutable(); - serviceAccountScopes_.addAll(other.serviceAccountScopes_); + acceleratorsBuilder_.addMessage(builderForValue.build()); } - onChanged(); + return this; } - if (!other.tags_.isEmpty()) { - if (tags_.isEmpty()) { - tags_ = other.tags_; - bitField0_ |= 0x00000008; + + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + builderForValue) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.add(index, builderForValue.build()); + onChanged(); } else { - ensureTagsIsMutable(); - tags_.addAll(other.tags_); + acceleratorsBuilder_.addMessage(index, builderForValue.build()); } - onChanged(); + return this; } - if (other.getPoolSize() != 0) { - setPoolSize(other.getPoolSize()); + + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllAccelerators( + java.lang.Iterable< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator> + values) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, accelerators_); + onChanged(); + } else { + acceleratorsBuilder_.addAllMessages(values); + } + return this; } - if (other.getPooledInstances() != 0) { - setPooledInstances(other.getPooledInstances()); + + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearAccelerators() { + if (acceleratorsBuilder_ == null) { + accelerators_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + } else { + acceleratorsBuilder_.clear(); + } + return this; } - if (other.getDisablePublicIpAddresses() != false) { - setDisablePublicIpAddresses(other.getDisablePublicIpAddresses()); + + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeAccelerators(int index) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.remove(index); + onChanged(); + } else { + acceleratorsBuilder_.remove(index); + } + return this; } - if (other.getEnableNestedVirtualization() != false) { - setEnableNestedVirtualization(other.getEnableNestedVirtualization()); + + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + getAcceleratorsBuilder(int index) { + return internalGetAcceleratorsFieldBuilder().getBuilder(index); } - if (other.hasShieldedInstanceConfig()) { - mergeShieldedInstanceConfig(other.getShieldedInstanceConfig()); + + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder + getAcceleratorsOrBuilder(int index) { + if (acceleratorsBuilder_ == null) { + return accelerators_.get(index); + } else { + return acceleratorsBuilder_.getMessageOrBuilder(index); + } } - if (other.hasConfidentialInstanceConfig()) { - mergeConfidentialInstanceConfig(other.getConfidentialInstanceConfig()); + + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + getAcceleratorsOrBuilderList() { + if (acceleratorsBuilder_ != null) { + return acceleratorsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(accelerators_); + } } - if (other.getBootDiskSizeGb() != 0) { - setBootDiskSizeGb(other.getBootDiskSizeGb()); + + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + addAcceleratorsBuilder() { + return internalGetAcceleratorsFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator.getDefaultInstance()); } - if (acceleratorsBuilder_ == null) { - if (!other.accelerators_.isEmpty()) { - if (accelerators_.isEmpty()) { - accelerators_ = other.accelerators_; - bitField0_ = (bitField0_ & ~0x00000800); - } else { - ensureAcceleratorsIsMutable(); - accelerators_.addAll(other.accelerators_); - } - onChanged(); - } - } else { - if (!other.accelerators_.isEmpty()) { - if (acceleratorsBuilder_.isEmpty()) { - acceleratorsBuilder_.dispose(); - acceleratorsBuilder_ = null; - accelerators_ = other.accelerators_; - bitField0_ = (bitField0_ & ~0x00000800); - acceleratorsBuilder_ = - com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders - ? internalGetAcceleratorsFieldBuilder() - : null; - } else { - acceleratorsBuilder_.addAllMessages(other.accelerators_); - } + + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + addAcceleratorsBuilder(int index) { + return internalGetAcceleratorsFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator.getDefaultInstance()); + } + + /** + * + * + *
            +           * Optional. A list of the type and count of accelerator cards attached
            +           * to the boost instance. Defaults to `none`.
            +           * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator.Builder> + getAcceleratorsBuilderList() { + return internalGetAcceleratorsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + internalGetAcceleratorsFieldBuilder() { + if (acceleratorsBuilder_ == null) { + acceleratorsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder>( + accelerators_, + ((bitField0_ & 0x00000004) != 0), + getParentForChildren(), + isClean()); + accelerators_ = null; } + return acceleratorsBuilder_; } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; - } - @java.lang.Override - public final boolean isInitialized() { - return true; - } + private int bootDiskSizeGb_; - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); + /** + * + * + *
            +           * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +           * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +           * 
            + * + * int32 boot_disk_size_gb = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bootDiskSizeGb. + */ + @java.lang.Override + public int getBootDiskSizeGb() { + return bootDiskSizeGb_; } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - machineType_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - serviceAccount_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 18 - case 26: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureServiceAccountScopesIsMutable(); - serviceAccountScopes_.add(s); - break; - } // case 26 - case 34: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureTagsIsMutable(); - tags_.add(s); - break; - } // case 34 - case 40: - { - poolSize_ = input.readInt32(); - bitField0_ |= 0x00000010; - break; - } // case 40 - case 48: - { - disablePublicIpAddresses_ = input.readBool(); - bitField0_ |= 0x00000040; - break; - } // case 48 - case 56: - { - enableNestedVirtualization_ = input.readBool(); - bitField0_ |= 0x00000080; - break; - } // case 56 - case 66: - { - input.readMessage( - internalGetShieldedInstanceConfigFieldBuilder().getBuilder(), - extensionRegistry); - bitField0_ |= 0x00000100; - break; - } // case 66 - case 72: - { - bootDiskSizeGb_ = input.readInt32(); - bitField0_ |= 0x00000400; - break; - } // case 72 - case 82: - { - input.readMessage( - internalGetConfidentialInstanceConfigFieldBuilder().getBuilder(), - extensionRegistry); - bitField0_ |= 0x00000200; - break; - } // case 82 - case 90: - { - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .Accelerator - m = - input.readMessage( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host - .GceInstance.Accelerator.parser(), - extensionRegistry); - if (acceleratorsBuilder_ == null) { - ensureAcceleratorsIsMutable(); - accelerators_.add(m); - } else { - acceleratorsBuilder_.addMessage(m); - } - break; - } // case 90 - case 96: - { - pooledInstances_ = input.readInt32(); - bitField0_ |= 0x00000020; - break; - } // case 96 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { + + /** + * + * + *
            +           * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +           * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +           * 
            + * + * int32 boot_disk_size_gb = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bootDiskSizeGb to set. + * @return This builder for chaining. + */ + public Builder setBootDiskSizeGb(int value) { + + bootDiskSizeGb_ = value; + bitField0_ |= 0x00000008; onChanged(); - } // finally - return this; - } + return this; + } - private int bitField0_; + /** + * + * + *
            +           * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +           * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +           * 
            + * + * int32 boot_disk_size_gb = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearBootDiskSizeGb() { + bitField0_ = (bitField0_ & ~0x00000008); + bootDiskSizeGb_ = 0; + onChanged(); + return this; + } - private java.lang.Object machineType_ = ""; + private boolean enableNestedVirtualization_; - /** - * - * - *
            -         * Optional. The type of machine to use for VM instances—for example,
            -         * `"e2-standard-4"`. For more information about machine types that
            -         * Cloud Workstations supports, see the list of
            -         * [available machine
            -         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            -         * 
            - * - * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The machineType. - */ - public java.lang.String getMachineType() { - java.lang.Object ref = machineType_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - machineType_ = s; - return s; - } else { - return (java.lang.String) ref; + /** + * + * + *
            +           * Optional. Whether to enable nested virtualization on boosted Cloud
            +           * Workstations VMs running using this boost configuration.
            +           *
            +           * Defaults to false.
            +           *
            +           * Nested virtualization lets you run virtual machine (VM) instances
            +           * inside your workstation. Before enabling nested virtualization,
            +           * consider the following important considerations. Cloud Workstations
            +           * instances are subject to the [same restrictions as Compute Engine
            +           * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +           *
            +           * * **Organization policy**: projects, folders, or
            +           * organizations may be restricted from creating nested VMs if the
            +           * **Disable VM nested virtualization** constraint is enforced in
            +           * the organization policy. For more information, see the
            +           * Compute Engine section,
            +           * [Checking whether nested virtualization is
            +           * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +           * * **Performance**: nested VMs might experience a 10% or greater
            +           * decrease in performance for workloads that are CPU-bound and
            +           * possibly greater than a 10% decrease for workloads that are
            +           * input/output bound.
            +           * * **Machine Type**: nested virtualization can only be enabled on
            +           * boost configurations that specify a
            +           * [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig.machine_type]
            +           * in the N1 or N2 machine series.
            +           * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enableNestedVirtualization. + */ + @java.lang.Override + public boolean getEnableNestedVirtualization() { + return enableNestedVirtualization_; } - } - /** - * - * - *
            -         * Optional. The type of machine to use for VM instances—for example,
            -         * `"e2-standard-4"`. For more information about machine types that
            -         * Cloud Workstations supports, see the list of
            -         * [available machine
            -         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            -         * 
            - * - * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for machineType. - */ - public com.google.protobuf.ByteString getMachineTypeBytes() { - java.lang.Object ref = machineType_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - machineType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
            +           * Optional. Whether to enable nested virtualization on boosted Cloud
            +           * Workstations VMs running using this boost configuration.
            +           *
            +           * Defaults to false.
            +           *
            +           * Nested virtualization lets you run virtual machine (VM) instances
            +           * inside your workstation. Before enabling nested virtualization,
            +           * consider the following important considerations. Cloud Workstations
            +           * instances are subject to the [same restrictions as Compute Engine
            +           * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +           *
            +           * * **Organization policy**: projects, folders, or
            +           * organizations may be restricted from creating nested VMs if the
            +           * **Disable VM nested virtualization** constraint is enforced in
            +           * the organization policy. For more information, see the
            +           * Compute Engine section,
            +           * [Checking whether nested virtualization is
            +           * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +           * * **Performance**: nested VMs might experience a 10% or greater
            +           * decrease in performance for workloads that are CPU-bound and
            +           * possibly greater than a 10% decrease for workloads that are
            +           * input/output bound.
            +           * * **Machine Type**: nested virtualization can only be enabled on
            +           * boost configurations that specify a
            +           * [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig.machine_type]
            +           * in the N1 or N2 machine series.
            +           * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The enableNestedVirtualization to set. + * @return This builder for chaining. + */ + public Builder setEnableNestedVirtualization(boolean value) { + + enableNestedVirtualization_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; } - } - /** - * - * - *
            -         * Optional. The type of machine to use for VM instances—for example,
            -         * `"e2-standard-4"`. For more information about machine types that
            -         * Cloud Workstations supports, see the list of
            -         * [available machine
            -         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            -         * 
            - * - * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The machineType to set. - * @return This builder for chaining. - */ - public Builder setMachineType(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + /** + * + * + *
            +           * Optional. Whether to enable nested virtualization on boosted Cloud
            +           * Workstations VMs running using this boost configuration.
            +           *
            +           * Defaults to false.
            +           *
            +           * Nested virtualization lets you run virtual machine (VM) instances
            +           * inside your workstation. Before enabling nested virtualization,
            +           * consider the following important considerations. Cloud Workstations
            +           * instances are subject to the [same restrictions as Compute Engine
            +           * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +           *
            +           * * **Organization policy**: projects, folders, or
            +           * organizations may be restricted from creating nested VMs if the
            +           * **Disable VM nested virtualization** constraint is enforced in
            +           * the organization policy. For more information, see the
            +           * Compute Engine section,
            +           * [Checking whether nested virtualization is
            +           * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +           * * **Performance**: nested VMs might experience a 10% or greater
            +           * decrease in performance for workloads that are CPU-bound and
            +           * possibly greater than a 10% decrease for workloads that are
            +           * input/output bound.
            +           * * **Machine Type**: nested virtualization can only be enabled on
            +           * boost configurations that specify a
            +           * [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig.machine_type]
            +           * in the N1 or N2 machine series.
            +           * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearEnableNestedVirtualization() { + bitField0_ = (bitField0_ & ~0x00000010); + enableNestedVirtualization_ = false; + onChanged(); + return this; } - machineType_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - /** + private int poolSize_; + + /** + * + * + *
            +           * Optional. The number of boost VMs that the system should keep idle so
            +           * that workstations can be boosted quickly. Defaults to `0`.
            +           * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The poolSize. + */ + @java.lang.Override + public int getPoolSize() { + return poolSize_; + } + + /** + * + * + *
            +           * Optional. The number of boost VMs that the system should keep idle so
            +           * that workstations can be boosted quickly. Defaults to `0`.
            +           * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The poolSize to set. + * @return This builder for chaining. + */ + public Builder setPoolSize(int value) { + + poolSize_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + /** + * + * + *
            +           * Optional. The number of boost VMs that the system should keep idle so
            +           * that workstations can be boosted quickly. Defaults to `0`.
            +           * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearPoolSize() { + bitField0_ = (bitField0_ & ~0x00000020); + poolSize_ = 0; + onChanged(); + return this; + } + + private com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + reservationAffinity_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinityOrBuilder> + reservationAffinityBuilder_; + + /** + * + * + *
            +           * Optional.
            +           * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +           * specifies a reservation that can be consumed to create boost VM
            +           * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +           * will only create VMs in the zone where the reservation is located.
            +           * This would affect availability since the service will no longer be
            +           * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +           * reservations in both zones that the config creates VMs in will ensure
            +           * higher availability.
            +           * **Important Considerations for Reservation Affinity:**
            +           *
            +           * *   This feature is intended for advanced users and requires
            +           * familiarity with Google Compute Engine reservations.
            +           * *   Using reservations incurs charges, regardless of utilization.
            +           * *   The resources in the pool will consume the specified
            +           * reservation. Take this into account when setting the
            +           * pool size.
            +           * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the reservationAffinity field is set. + */ + public boolean hasReservationAffinity() { + return ((bitField0_ & 0x00000040) != 0); + } + + /** + * + * + *
            +           * Optional.
            +           * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +           * specifies a reservation that can be consumed to create boost VM
            +           * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +           * will only create VMs in the zone where the reservation is located.
            +           * This would affect availability since the service will no longer be
            +           * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +           * reservations in both zones that the config creates VMs in will ensure
            +           * higher availability.
            +           * **Important Considerations for Reservation Affinity:**
            +           *
            +           * *   This feature is intended for advanced users and requires
            +           * familiarity with Google Compute Engine reservations.
            +           * *   Using reservations incurs charges, regardless of utilization.
            +           * *   The resources in the pool will consume the specified
            +           * reservation. Take this into account when setting the
            +           * pool size.
            +           * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The reservationAffinity. + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + getReservationAffinity() { + if (reservationAffinityBuilder_ == null) { + return reservationAffinity_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.getDefaultInstance() + : reservationAffinity_; + } else { + return reservationAffinityBuilder_.getMessage(); + } + } + + /** + * + * + *
            +           * Optional.
            +           * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +           * specifies a reservation that can be consumed to create boost VM
            +           * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +           * will only create VMs in the zone where the reservation is located.
            +           * This would affect availability since the service will no longer be
            +           * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +           * reservations in both zones that the config creates VMs in will ensure
            +           * higher availability.
            +           * **Important Considerations for Reservation Affinity:**
            +           *
            +           * *   This feature is intended for advanced users and requires
            +           * familiarity with Google Compute Engine reservations.
            +           * *   Using reservations incurs charges, regardless of utilization.
            +           * *   The resources in the pool will consume the specified
            +           * reservation. Take this into account when setting the
            +           * pool size.
            +           * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setReservationAffinity( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + value) { + if (reservationAffinityBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + reservationAffinity_ = value; + } else { + reservationAffinityBuilder_.setMessage(value); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + /** + * + * + *
            +           * Optional.
            +           * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +           * specifies a reservation that can be consumed to create boost VM
            +           * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +           * will only create VMs in the zone where the reservation is located.
            +           * This would affect availability since the service will no longer be
            +           * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +           * reservations in both zones that the config creates VMs in will ensure
            +           * higher availability.
            +           * **Important Considerations for Reservation Affinity:**
            +           *
            +           * *   This feature is intended for advanced users and requires
            +           * familiarity with Google Compute Engine reservations.
            +           * *   Using reservations incurs charges, regardless of utilization.
            +           * *   The resources in the pool will consume the specified
            +           * reservation. Take this into account when setting the
            +           * pool size.
            +           * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setReservationAffinity( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Builder + builderForValue) { + if (reservationAffinityBuilder_ == null) { + reservationAffinity_ = builderForValue.build(); + } else { + reservationAffinityBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + /** + * + * + *
            +           * Optional.
            +           * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +           * specifies a reservation that can be consumed to create boost VM
            +           * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +           * will only create VMs in the zone where the reservation is located.
            +           * This would affect availability since the service will no longer be
            +           * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +           * reservations in both zones that the config creates VMs in will ensure
            +           * higher availability.
            +           * **Important Considerations for Reservation Affinity:**
            +           *
            +           * *   This feature is intended for advanced users and requires
            +           * familiarity with Google Compute Engine reservations.
            +           * *   Using reservations incurs charges, regardless of utilization.
            +           * *   The resources in the pool will consume the specified
            +           * reservation. Take this into account when setting the
            +           * pool size.
            +           * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeReservationAffinity( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + value) { + if (reservationAffinityBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0) + && reservationAffinity_ != null + && reservationAffinity_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.getDefaultInstance()) { + getReservationAffinityBuilder().mergeFrom(value); + } else { + reservationAffinity_ = value; + } + } else { + reservationAffinityBuilder_.mergeFrom(value); + } + if (reservationAffinity_ != null) { + bitField0_ |= 0x00000040; + onChanged(); + } + return this; + } + + /** + * + * + *
            +           * Optional.
            +           * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +           * specifies a reservation that can be consumed to create boost VM
            +           * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +           * will only create VMs in the zone where the reservation is located.
            +           * This would affect availability since the service will no longer be
            +           * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +           * reservations in both zones that the config creates VMs in will ensure
            +           * higher availability.
            +           * **Important Considerations for Reservation Affinity:**
            +           *
            +           * *   This feature is intended for advanced users and requires
            +           * familiarity with Google Compute Engine reservations.
            +           * *   Using reservations incurs charges, regardless of utilization.
            +           * *   The resources in the pool will consume the specified
            +           * reservation. Take this into account when setting the
            +           * pool size.
            +           * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearReservationAffinity() { + bitField0_ = (bitField0_ & ~0x00000040); + reservationAffinity_ = null; + if (reservationAffinityBuilder_ != null) { + reservationAffinityBuilder_.dispose(); + reservationAffinityBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
            +           * Optional.
            +           * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +           * specifies a reservation that can be consumed to create boost VM
            +           * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +           * will only create VMs in the zone where the reservation is located.
            +           * This would affect availability since the service will no longer be
            +           * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +           * reservations in both zones that the config creates VMs in will ensure
            +           * higher availability.
            +           * **Important Considerations for Reservation Affinity:**
            +           *
            +           * *   This feature is intended for advanced users and requires
            +           * familiarity with Google Compute Engine reservations.
            +           * *   Using reservations incurs charges, regardless of utilization.
            +           * *   The resources in the pool will consume the specified
            +           * reservation. Take this into account when setting the
            +           * pool size.
            +           * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Builder + getReservationAffinityBuilder() { + bitField0_ |= 0x00000040; + onChanged(); + return internalGetReservationAffinityFieldBuilder().getBuilder(); + } + + /** + * + * + *
            +           * Optional.
            +           * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +           * specifies a reservation that can be consumed to create boost VM
            +           * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +           * will only create VMs in the zone where the reservation is located.
            +           * This would affect availability since the service will no longer be
            +           * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +           * reservations in both zones that the config creates VMs in will ensure
            +           * higher availability.
            +           * **Important Considerations for Reservation Affinity:**
            +           *
            +           * *   This feature is intended for advanced users and requires
            +           * familiarity with Google Compute Engine reservations.
            +           * *   Using reservations incurs charges, regardless of utilization.
            +           * *   The resources in the pool will consume the specified
            +           * reservation. Take this into account when setting the
            +           * pool size.
            +           * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinityOrBuilder + getReservationAffinityOrBuilder() { + if (reservationAffinityBuilder_ != null) { + return reservationAffinityBuilder_.getMessageOrBuilder(); + } else { + return reservationAffinity_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.getDefaultInstance() + : reservationAffinity_; + } + } + + /** + * + * + *
            +           * Optional.
            +           * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +           * specifies a reservation that can be consumed to create boost VM
            +           * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +           * will only create VMs in the zone where the reservation is located.
            +           * This would affect availability since the service will no longer be
            +           * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +           * reservations in both zones that the config creates VMs in will ensure
            +           * higher availability.
            +           * **Important Considerations for Reservation Affinity:**
            +           *
            +           * *   This feature is intended for advanced users and requires
            +           * familiarity with Google Compute Engine reservations.
            +           * *   Using reservations incurs charges, regardless of utilization.
            +           * *   The resources in the pool will consume the specified
            +           * reservation. Take this into account when setting the
            +           * pool size.
            +           * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinityOrBuilder> + internalGetReservationAffinityFieldBuilder() { + if (reservationAffinityBuilder_ == null) { + reservationAffinityBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinityOrBuilder>( + getReservationAffinity(), getParentForChildren(), isClean()); + reservationAffinity_ = null; + } + return reservationAffinityBuilder_; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig) + private static final com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig(); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public BoostConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface ReservationAffinityOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity) + com.google.protobuf.MessageOrBuilder { + + /** * * *
            -         * Optional. The type of machine to use for VM instances—for example,
            -         * `"e2-standard-4"`. For more information about machine types that
            -         * Cloud Workstations supports, see the list of
            -         * [available machine
            -         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Optional. Corresponds to the type of reservation consumption.
                      * 
            * - * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity.Type consume_reservation_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return This builder for chaining. + * @return The enum numeric value on the wire for consumeReservationType. */ - public Builder clearMachineType() { - machineType_ = getDefaultInstance().getMachineType(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; - } + int getConsumeReservationTypeValue(); /** * * *
            -         * Optional. The type of machine to use for VM instances—for example,
            -         * `"e2-standard-4"`. For more information about machine types that
            -         * Cloud Workstations supports, see the list of
            -         * [available machine
            -         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * Optional. Corresponds to the type of reservation consumption.
                      * 
            * - * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity.Type consume_reservation_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param value The bytes for machineType to set. - * @return This builder for chaining. + * @return The consumeReservationType. */ - public Builder setMachineTypeBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - machineType_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - - private java.lang.Object serviceAccount_ = ""; + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity + .Type + getConsumeReservationType(); /** * * *
            -         * Optional. The email address of the service account for Cloud
            -         * Workstations VMs created with this configuration. When specified, be
            -         * sure that the service account has `logginglogEntries.create` permission
            -         * on the project so it can write logs out to Cloud Logging. If using a
            -         * custom container image, the service account must have permissions to
            -         * pull the specified image.
            -         *
            -         * If you as the administrator want to be able to `ssh` into the
            -         * underlying VM, you need to set this value to a service account
            -         * for which you have the `iam.serviceAccounts.actAs` permission.
            -         * Conversely, if you don't want anyone to be able to `ssh` into the
            -         * underlying VM, use a service account where no one has that
            -         * permission.
            -         *
            -         * If not set, VMs run with a service account provided by the
            -         * Cloud Workstations service, and the image must be publicly
            -         * accessible.
            +         * Optional. Corresponds to the label key of reservation resource.
                      * 
            * - * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string key = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The serviceAccount. + * @return The key. */ - public java.lang.String getServiceAccount() { - java.lang.Object ref = serviceAccount_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - serviceAccount_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } + java.lang.String getKey(); /** * * *
            -         * Optional. The email address of the service account for Cloud
            -         * Workstations VMs created with this configuration. When specified, be
            -         * sure that the service account has `logginglogEntries.create` permission
            -         * on the project so it can write logs out to Cloud Logging. If using a
            -         * custom container image, the service account must have permissions to
            -         * pull the specified image.
            -         *
            -         * If you as the administrator want to be able to `ssh` into the
            -         * underlying VM, you need to set this value to a service account
            -         * for which you have the `iam.serviceAccounts.actAs` permission.
            -         * Conversely, if you don't want anyone to be able to `ssh` into the
            -         * underlying VM, use a service account where no one has that
            -         * permission.
            -         *
            -         * If not set, VMs run with a service account provided by the
            -         * Cloud Workstations service, and the image must be publicly
            -         * accessible.
            +         * Optional. Corresponds to the label key of reservation resource.
                      * 
            * - * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string key = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The bytes for serviceAccount. + * @return The bytes for key. */ - public com.google.protobuf.ByteString getServiceAccountBytes() { - java.lang.Object ref = serviceAccount_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - serviceAccount_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + com.google.protobuf.ByteString getKeyBytes(); /** * * *
            -         * Optional. The email address of the service account for Cloud
            -         * Workstations VMs created with this configuration. When specified, be
            -         * sure that the service account has `logginglogEntries.create` permission
            -         * on the project so it can write logs out to Cloud Logging. If using a
            -         * custom container image, the service account must have permissions to
            -         * pull the specified image.
            -         *
            -         * If you as the administrator want to be able to `ssh` into the
            -         * underlying VM, you need to set this value to a service account
            -         * for which you have the `iam.serviceAccounts.actAs` permission.
            -         * Conversely, if you don't want anyone to be able to `ssh` into the
            -         * underlying VM, use a service account where no one has that
            -         * permission.
            -         *
            -         * If not set, VMs run with a service account provided by the
            -         * Cloud Workstations service, and the image must be publicly
            -         * accessible.
            +         * Optional. Corresponds to the label values of reservation resources.
            +         * Valid values are either the name of a reservation in the same project
            +         * or "projects/{project}/reservations/{reservation}" to target a shared
            +         * reservation in the same zone but in a different project.
                      * 
            * - * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The serviceAccount to set. - * @return This builder for chaining. + * @return A list containing the values. */ - public Builder setServiceAccount(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - serviceAccount_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } + java.util.List getValuesList(); /** * * *
            -         * Optional. The email address of the service account for Cloud
            -         * Workstations VMs created with this configuration. When specified, be
            -         * sure that the service account has `logginglogEntries.create` permission
            -         * on the project so it can write logs out to Cloud Logging. If using a
            -         * custom container image, the service account must have permissions to
            -         * pull the specified image.
            -         *
            -         * If you as the administrator want to be able to `ssh` into the
            -         * underlying VM, you need to set this value to a service account
            -         * for which you have the `iam.serviceAccounts.actAs` permission.
            -         * Conversely, if you don't want anyone to be able to `ssh` into the
            -         * underlying VM, use a service account where no one has that
            -         * permission.
            -         *
            -         * If not set, VMs run with a service account provided by the
            -         * Cloud Workstations service, and the image must be publicly
            -         * accessible.
            +         * Optional. Corresponds to the label values of reservation resources.
            +         * Valid values are either the name of a reservation in the same project
            +         * or "projects/{project}/reservations/{reservation}" to target a shared
            +         * reservation in the same zone but in a different project.
                      * 
            * - * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; * - * @return This builder for chaining. + * @return The count of values. */ - public Builder clearServiceAccount() { - serviceAccount_ = getDefaultInstance().getServiceAccount(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - return this; - } + int getValuesCount(); /** * * *
            -         * Optional. The email address of the service account for Cloud
            -         * Workstations VMs created with this configuration. When specified, be
            -         * sure that the service account has `logginglogEntries.create` permission
            -         * on the project so it can write logs out to Cloud Logging. If using a
            -         * custom container image, the service account must have permissions to
            -         * pull the specified image.
            -         *
            -         * If you as the administrator want to be able to `ssh` into the
            -         * underlying VM, you need to set this value to a service account
            -         * for which you have the `iam.serviceAccounts.actAs` permission.
            -         * Conversely, if you don't want anyone to be able to `ssh` into the
            -         * underlying VM, use a service account where no one has that
            -         * permission.
            -         *
            -         * If not set, VMs run with a service account provided by the
            -         * Cloud Workstations service, and the image must be publicly
            -         * accessible.
            +         * Optional. Corresponds to the label values of reservation resources.
            +         * Valid values are either the name of a reservation in the same project
            +         * or "projects/{project}/reservations/{reservation}" to target a shared
            +         * reservation in the same zone but in a different project.
                      * 
            * - * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The bytes for serviceAccount to set. - * @return This builder for chaining. + * @param index The index of the element to return. + * @return The values at the given index. */ - public Builder setServiceAccountBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - serviceAccount_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - - private com.google.protobuf.LazyStringArrayList serviceAccountScopes_ = - com.google.protobuf.LazyStringArrayList.emptyList(); - - private void ensureServiceAccountScopesIsMutable() { - if (!serviceAccountScopes_.isModifiable()) { - serviceAccountScopes_ = - new com.google.protobuf.LazyStringArrayList(serviceAccountScopes_); - } - bitField0_ |= 0x00000004; - } + java.lang.String getValues(int index); /** * * *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            +         * Optional. Corresponds to the label values of reservation resources.
            +         * Valid values are either the name of a reservation in the same project
            +         * or "projects/{project}/reservations/{reservation}" to target a shared
            +         * reservation in the same zone but in a different project.
                      * 
            * - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; * - * @return A list containing the serviceAccountScopes. + * @param index The index of the value to return. + * @return The bytes of the values at the given index. */ - public com.google.protobuf.ProtocolStringList getServiceAccountScopesList() { - serviceAccountScopes_.makeImmutable(); - return serviceAccountScopes_; + com.google.protobuf.ByteString getValuesBytes(int index); + } + + /** + * + * + *
            +       * ReservationAffinity is the configuration of the desired reservation
            +       * from which instances can consume resources.
            +       * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity} + */ + public static final class ReservationAffinity extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity) + ReservationAffinityOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "ReservationAffinity"); } - /** - * - * - *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            -         * 
            - * - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The count of serviceAccountScopes. - */ - public int getServiceAccountScopesCount() { - return serviceAccountScopes_.size(); + // Use ReservationAffinity.newBuilder() to construct. + private ReservationAffinity(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); } - /** - * - * - *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            -         * 
            - * - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index of the element to return. - * @return The serviceAccountScopes at the given index. - */ - public java.lang.String getServiceAccountScopes(int index) { - return serviceAccountScopes_.get(index); + private ReservationAffinity() { + consumeReservationType_ = 0; + key_ = ""; + values_ = com.google.protobuf.LazyStringArrayList.emptyList(); } - /** - * - * - *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            -         * 
            - * - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index of the value to return. - * @return The bytes of the serviceAccountScopes at the given index. - */ - public com.google.protobuf.ByteString getServiceAccountScopesBytes(int index) { - return serviceAccountScopes_.getByteString(index); + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_ReservationAffinity_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_ReservationAffinity_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Builder.class); } /** * * *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            +         * Indicates whether to consume capacity from a reservation or not.
                      * 
            * - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index to set the value at. - * @param value The serviceAccountScopes to set. - * @return This builder for chaining. + * Protobuf enum {@code + * google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity.Type} */ - public Builder setServiceAccountScopes(int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureServiceAccountScopesIsMutable(); - serviceAccountScopes_.set(index, value); - bitField0_ |= 0x00000004; - onChanged(); - return this; + public enum Type implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
            +           * Default value. This should not be used.
            +           * 
            + * + * TYPE_UNSPECIFIED = 0; + */ + TYPE_UNSPECIFIED(0), + /** + * + * + *
            +           * Do not consume from any reserved capacity.
            +           * 
            + * + * NO_RESERVATION = 1; + */ + NO_RESERVATION(1), + /** + * + * + *
            +           * Consume any reservation available.
            +           * 
            + * + * ANY_RESERVATION = 2; + */ + ANY_RESERVATION(2), + /** + * + * + *
            +           * Must consume from a specific reservation. Must specify key value
            +           * fields for specifying the reservations.
            +           * 
            + * + * SPECIFIC_RESERVATION = 3; + */ + SPECIFIC_RESERVATION(3), + UNRECOGNIZED(-1), + ; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "Type"); + } + + /** + * + * + *
            +           * Default value. This should not be used.
            +           * 
            + * + * TYPE_UNSPECIFIED = 0; + */ + public static final int TYPE_UNSPECIFIED_VALUE = 0; + + /** + * + * + *
            +           * Do not consume from any reserved capacity.
            +           * 
            + * + * NO_RESERVATION = 1; + */ + public static final int NO_RESERVATION_VALUE = 1; + + /** + * + * + *
            +           * Consume any reservation available.
            +           * 
            + * + * ANY_RESERVATION = 2; + */ + public static final int ANY_RESERVATION_VALUE = 2; + + /** + * + * + *
            +           * Must consume from a specific reservation. Must specify key value
            +           * fields for specifying the reservations.
            +           * 
            + * + * SPECIFIC_RESERVATION = 3; + */ + public static final int SPECIFIC_RESERVATION_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 Type 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 Type forNumber(int value) { + switch (value) { + case 0: + return TYPE_UNSPECIFIED; + case 1: + return NO_RESERVATION; + case 2: + return ANY_RESERVATION; + case 3: + return SPECIFIC_RESERVATION; + default: + return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap internalGetValueMap() { + return internalValueMap; + } + + private static final com.google.protobuf.Internal.EnumLiteMap internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public Type findValueByNumber(int number) { + return Type.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + + public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { + return getDescriptor(); + } + + public static com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.getDescriptor() + .getEnumTypes() + .get(0); + } + + private static final Type[] VALUES = values(); + + public static Type valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private Type(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity.Type) } + public static final int CONSUME_RESERVATION_TYPE_FIELD_NUMBER = 1; + private int consumeReservationType_ = 0; + /** * * *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            +         * Optional. Corresponds to the type of reservation consumption.
                      * 
            * * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity.Type consume_reservation_type = 1 [(.google.api.field_behavior) = OPTIONAL]; * * - * @param value The serviceAccountScopes to add. - * @return This builder for chaining. + * @return The enum numeric value on the wire for consumeReservationType. */ - public Builder addServiceAccountScopes(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureServiceAccountScopesIsMutable(); - serviceAccountScopes_.add(value); - bitField0_ |= 0x00000004; - onChanged(); - return this; + @java.lang.Override + public int getConsumeReservationTypeValue() { + return consumeReservationType_; } /** * * *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            +         * Optional. Corresponds to the type of reservation consumption.
                      * 
            * * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity.Type consume_reservation_type = 1 [(.google.api.field_behavior) = OPTIONAL]; * * - * @param values The serviceAccountScopes to add. - * @return This builder for chaining. + * @return The consumeReservationType. */ - public Builder addAllServiceAccountScopes(java.lang.Iterable values) { - ensureServiceAccountScopesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, serviceAccountScopes_); - bitField0_ |= 0x00000004; - onChanged(); - return this; + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Type + getConsumeReservationType() { + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Type + result = + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Type.forNumber(consumeReservationType_); + return result == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Type.UNRECOGNIZED + : result; } + public static final int KEY_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object key_ = ""; + /** * * *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            +         * Optional. Corresponds to the label key of reservation resource.
                      * 
            * - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * string key = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return This builder for chaining. + * @return The key. */ - public Builder clearServiceAccountScopes() { - serviceAccountScopes_ = com.google.protobuf.LazyStringArrayList.emptyList(); - bitField0_ = (bitField0_ & ~0x00000004); - ; - onChanged(); - return this; + @java.lang.Override + public java.lang.String getKey() { + java.lang.Object ref = key_; + 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(); + key_ = s; + return s; + } } /** * * *
            -         * Optional. Scopes to grant to the
            -         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            -         * Various scopes are automatically added based on feature usage. When
            -         * specified, users of workstations under this configuration must have
            -         * `iam.serviceAccounts.actAs` on the service account.
            +         * Optional. Corresponds to the label key of reservation resource.
                      * 
            * - * - * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * string key = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The bytes of the serviceAccountScopes to add. - * @return This builder for chaining. + * @return The bytes for key. */ - public Builder addServiceAccountScopesBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + @java.lang.Override + public com.google.protobuf.ByteString getKeyBytes() { + java.lang.Object ref = key_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + key_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - checkByteStringIsUtf8(value); - ensureServiceAccountScopesIsMutable(); - serviceAccountScopes_.add(value); - bitField0_ |= 0x00000004; - onChanged(); - return this; } - private com.google.protobuf.LazyStringArrayList tags_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + public static final int VALUES_FIELD_NUMBER = 3; - private void ensureTagsIsMutable() { - if (!tags_.isModifiable()) { - tags_ = new com.google.protobuf.LazyStringArrayList(tags_); - } - bitField0_ |= 0x00000008; - } + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList values_ = + com.google.protobuf.LazyStringArrayList.emptyList(); /** * * *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * Optional. Corresponds to the label values of reservation resources.
            +         * Valid values are either the name of a reservation in the same project
            +         * or "projects/{project}/reservations/{reservation}" to target a shared
            +         * reservation in the same zone but in a different project.
                      * 
            * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; * - * @return A list containing the tags. + * @return A list containing the values. */ - public com.google.protobuf.ProtocolStringList getTagsList() { - tags_.makeImmutable(); - return tags_; + public com.google.protobuf.ProtocolStringList getValuesList() { + return values_; } /** * * *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * Optional. Corresponds to the label values of reservation resources.
            +         * Valid values are either the name of a reservation in the same project
            +         * or "projects/{project}/reservations/{reservation}" to target a shared
            +         * reservation in the same zone but in a different project.
                      * 
            * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The count of tags. + * @return The count of values. */ - public int getTagsCount() { - return tags_.size(); + public int getValuesCount() { + return values_.size(); } /** * * *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * Optional. Corresponds to the label values of reservation resources.
            +         * Valid values are either the name of a reservation in the same project
            +         * or "projects/{project}/reservations/{reservation}" to target a shared
            +         * reservation in the same zone but in a different project.
                      * 
            * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; * * @param index The index of the element to return. - * @return The tags at the given index. + * @return The values at the given index. */ - public java.lang.String getTags(int index) { - return tags_.get(index); + public java.lang.String getValues(int index) { + return values_.get(index); } /** * * *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * Optional. Corresponds to the label values of reservation resources.
            +         * Valid values are either the name of a reservation in the same project
            +         * or "projects/{project}/reservations/{reservation}" to target a shared
            +         * reservation in the same zone but in a different project.
                      * 
            * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; * * @param index The index of the value to return. - * @return The bytes of the tags at the given index. + * @return The bytes of the values at the given index. */ - public com.google.protobuf.ByteString getTagsBytes(int index) { - return tags_.getByteString(index); + public com.google.protobuf.ByteString getValuesBytes(int index) { + return values_.getByteString(index); } - /** - * - * - *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -         * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index to set the value at. - * @param value The tags to set. - * @return This builder for chaining. - */ - public Builder setTags(int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureTagsIsMutable(); - tags_.set(index, value); - bitField0_ |= 0x00000008; - onChanged(); - return this; + 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; } - /** - * - * - *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -         * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The tags to add. - * @return This builder for chaining. - */ - public Builder addTags(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (consumeReservationType_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Type.TYPE_UNSPECIFIED + .getNumber()) { + output.writeEnum(1, consumeReservationType_); } - ensureTagsIsMutable(); - tags_.add(value); - bitField0_ |= 0x00000008; - onChanged(); - return this; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(key_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, key_); + } + for (int i = 0; i < values_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, values_.getRaw(i)); + } + getUnknownFields().writeTo(output); } - /** - * - * - *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -         * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param values The tags to add. - * @return This builder for chaining. - */ - public Builder addAllTags(java.lang.Iterable values) { - ensureTagsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, tags_); - bitField0_ |= 0x00000008; - onChanged(); - return this; - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - /** - * - * - *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -         * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearTags() { - tags_ = com.google.protobuf.LazyStringArrayList.emptyList(); - bitField0_ = (bitField0_ & ~0x00000008); - ; - onChanged(); - return this; + size = 0; + if (consumeReservationType_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Type.TYPE_UNSPECIFIED + .getNumber()) { + size += + com.google.protobuf.CodedOutputStream.computeEnumSize(1, consumeReservationType_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(key_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, key_); + } + { + int dataSize = 0; + for (int i = 0; i < values_.size(); i++) { + dataSize += computeStringSizeNoTag(values_.getRaw(i)); + } + size += dataSize; + size += 1 * getValuesList().size(); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - /** - * - * - *
            -         * Optional. Network tags to add to the Compute Engine VMs backing the
            -         * workstations. This option applies
            -         * [network
            -         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            -         * created with this configuration. These network tags enable the creation
            -         * of [firewall
            -         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            -         * 
            - * - * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes of the tags to add. - * @return This builder for chaining. - */ - public Builder addTagsBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; } - checkByteStringIsUtf8(value); - ensureTagsIsMutable(); - tags_.add(value); - bitField0_ |= 0x00000008; - onChanged(); - return this; - } + if (!(obj + instanceof + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + other = + (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity) + obj; - private int poolSize_; + if (consumeReservationType_ != other.consumeReservationType_) return false; + if (!getKey().equals(other.getKey())) return false; + if (!getValuesList().equals(other.getValuesList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - /** - * - * - *
            -         * Optional. The number of VMs that the system should keep idle so that
            -         * new workstations can be started quickly for new users. Defaults to `0`
            -         * in the API.
            -         * 
            - * - * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The poolSize. - */ @java.lang.Override - public int getPoolSize() { - return poolSize_; + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + CONSUME_RESERVATION_TYPE_FIELD_NUMBER; + hash = (53 * hash) + consumeReservationType_; + hash = (37 * hash) + KEY_FIELD_NUMBER; + hash = (53 * hash) + getKey().hashCode(); + if (getValuesCount() > 0) { + hash = (37 * hash) + VALUES_FIELD_NUMBER; + hash = (53 * hash) + getValuesList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - /** - * - * - *
            -         * Optional. The number of VMs that the system should keep idle so that
            -         * new workstations can be started quickly for new users. Defaults to `0`
            -         * in the API.
            -         * 
            - * - * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The poolSize to set. - * @return This builder for chaining. - */ - public Builder setPoolSize(int value) { - - poolSize_ = value; - bitField0_ |= 0x00000010; - onChanged(); - return this; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - /** - * - * - *
            -         * Optional. The number of VMs that the system should keep idle so that
            -         * new workstations can be started quickly for new users. Defaults to `0`
            -         * in the API.
            -         * 
            - * - * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearPoolSize() { - bitField0_ = (bitField0_ & ~0x00000010); - poolSize_ = 0; - onChanged(); - return this; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - private int pooledInstances_; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - /** - * - * - *
            -         * Output only. Number of instances currently available in the pool for
            -         * faster workstation startup.
            -         * 
            - * - * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The pooledInstances. - */ - @java.lang.Override - public int getPooledInstances() { - return pooledInstances_; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - /** - * - * - *
            -         * Output only. Number of instances currently available in the pool for
            -         * faster workstation startup.
            -         * 
            - * - * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The pooledInstances to set. - * @return This builder for chaining. - */ - public Builder setPooledInstances(int value) { + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - pooledInstances_ = value; - bitField0_ |= 0x00000020; - onChanged(); - return this; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - /** - * - * - *
            -         * Output only. Number of instances currently available in the pool for
            -         * faster workstation startup.
            -         * 
            - * - * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. - */ - public Builder clearPooledInstances() { - bitField0_ = (bitField0_ & ~0x00000020); - pooledInstances_ = 0; - onChanged(); - return this; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - private boolean disablePublicIpAddresses_; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -         * Optional. When set to true, disables public IP addresses for VMs. If
            -         * you disable public IP addresses, you must set up Private Google Access
            -         * or Cloud NAT on your network. If you use Private Google Access and you
            -         * use `private.googleapis.com` or `restricted.googleapis.com` for
            -         * Container Registry and Artifact Registry, make sure that you set
            -         * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            -         * Defaults to false (VMs have public IP addresses).
            -         * 
            - * - * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The disablePublicIpAddresses. - */ - @java.lang.Override - public boolean getDisablePublicIpAddresses() { - return disablePublicIpAddresses_; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); } - /** - * - * - *
            -         * Optional. When set to true, disables public IP addresses for VMs. If
            -         * you disable public IP addresses, you must set up Private Google Access
            -         * or Cloud NAT on your network. If you use Private Google Access and you
            -         * use `private.googleapis.com` or `restricted.googleapis.com` for
            -         * Container Registry and Artifact Registry, make sure that you set
            -         * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            -         * Defaults to false (VMs have public IP addresses).
            -         * 
            - * - * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param value The disablePublicIpAddresses to set. - * @return This builder for chaining. - */ - public Builder setDisablePublicIpAddresses(boolean value) { + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - disablePublicIpAddresses_ = value; - bitField0_ |= 0x00000040; - onChanged(); - return this; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - /** - * - * - *
            -         * Optional. When set to true, disables public IP addresses for VMs. If
            -         * you disable public IP addresses, you must set up Private Google Access
            -         * or Cloud NAT on your network. If you use Private Google Access and you
            -         * use `private.googleapis.com` or `restricted.googleapis.com` for
            -         * Container Registry and Artifact Registry, make sure that you set
            -         * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            -         * Defaults to false (VMs have public IP addresses).
            -         * 
            - * - * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return This builder for chaining. - */ - public Builder clearDisablePublicIpAddresses() { - bitField0_ = (bitField0_ & ~0x00000040); - disablePublicIpAddresses_ = false; - onChanged(); - return this; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - private boolean enableNestedVirtualization_; + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - /** - * - * - *
            -         * Optional. Whether to enable nested virtualization on Cloud Workstations
            -         * VMs created under this workstation configuration.
            -         *
            -         * Nested virtualization lets you run virtual machine (VM) instances
            -         * inside your workstation. Before enabling nested virtualization,
            -         * consider the following important considerations. Cloud Workstations
            -         * instances are subject to the [same restrictions as Compute Engine
            -         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            -         *
            -         * * **Organization policy**: projects, folders, or
            -         * organizations may be restricted from creating nested VMs if the
            -         * **Disable VM nested virtualization** constraint is enforced in
            -         * the organization policy. For more information, see the
            -         * Compute Engine section,
            -         * [Checking whether nested virtualization is
            -         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            -         * * **Performance**: nested VMs might experience a 10% or greater
            -         * decrease in performance for workloads that are CPU-bound and
            -         * possibly greater than a 10% decrease for workloads that are
            -         * input/output bound.
            -         * * **Machine Type**: nested virtualization can only be enabled on
            -         * workstation configurations that specify a
            -         * [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.machine_type]
            -         * in the N1 or N2 machine series.
            -         * * **GPUs**: nested virtualization may not be enabled on workstation
            -         * configurations with accelerators.
            -         * * **Operating System**: Because
            -         * [Container-Optimized
            -         * OS](https://cloud.google.com/compute/docs/images/os-details#container-optimized_os_cos)
            -         * does not support nested virtualization, when nested virtualization is
            -         * enabled, the underlying Compute Engine VM instances boot from an
            -         * [Ubuntu
            -         * LTS](https://cloud.google.com/compute/docs/images/os-details#ubuntu_lts)
            -         * image.
            -         * 
            - * - * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The enableNestedVirtualization. - */ @java.lang.Override - public boolean getEnableNestedVirtualization() { - return enableNestedVirtualization_; + 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; } /** * * *
            -         * Optional. Whether to enable nested virtualization on Cloud Workstations
            -         * VMs created under this workstation configuration.
            -         *
            -         * Nested virtualization lets you run virtual machine (VM) instances
            -         * inside your workstation. Before enabling nested virtualization,
            -         * consider the following important considerations. Cloud Workstations
            -         * instances are subject to the [same restrictions as Compute Engine
            -         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            -         *
            -         * * **Organization policy**: projects, folders, or
            -         * organizations may be restricted from creating nested VMs if the
            -         * **Disable VM nested virtualization** constraint is enforced in
            -         * the organization policy. For more information, see the
            -         * Compute Engine section,
            -         * [Checking whether nested virtualization is
            -         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            -         * * **Performance**: nested VMs might experience a 10% or greater
            -         * decrease in performance for workloads that are CPU-bound and
            -         * possibly greater than a 10% decrease for workloads that are
            -         * input/output bound.
            -         * * **Machine Type**: nested virtualization can only be enabled on
            -         * workstation configurations that specify a
            -         * [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.machine_type]
            -         * in the N1 or N2 machine series.
            -         * * **GPUs**: nested virtualization may not be enabled on workstation
            -         * configurations with accelerators.
            -         * * **Operating System**: Because
            -         * [Container-Optimized
            -         * OS](https://cloud.google.com/compute/docs/images/os-details#container-optimized_os_cos)
            -         * does not support nested virtualization, when nested virtualization is
            -         * enabled, the underlying Compute Engine VM instances boot from an
            -         * [Ubuntu
            -         * LTS](https://cloud.google.com/compute/docs/images/os-details#ubuntu_lts)
            -         * image.
            +         * ReservationAffinity is the configuration of the desired reservation
            +         * from which instances can consume resources.
                      * 
            * - * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param value The enableNestedVirtualization to set. - * @return This builder for chaining. + * Protobuf type {@code + * google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity} */ - public Builder setEnableNestedVirtualization(boolean value) { + public static final class Builder + extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity) + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinityOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_ReservationAffinity_descriptor; + } - enableNestedVirtualization_ = value; - bitField0_ |= 0x00000080; - onChanged(); - return this; - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_ReservationAffinity_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Builder.class); + } - /** - * - * - *
            -         * Optional. Whether to enable nested virtualization on Cloud Workstations
            -         * VMs created under this workstation configuration.
            -         *
            -         * Nested virtualization lets you run virtual machine (VM) instances
            -         * inside your workstation. Before enabling nested virtualization,
            -         * consider the following important considerations. Cloud Workstations
            -         * instances are subject to the [same restrictions as Compute Engine
            -         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            -         *
            -         * * **Organization policy**: projects, folders, or
            -         * organizations may be restricted from creating nested VMs if the
            -         * **Disable VM nested virtualization** constraint is enforced in
            -         * the organization policy. For more information, see the
            -         * Compute Engine section,
            -         * [Checking whether nested virtualization is
            -         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            -         * * **Performance**: nested VMs might experience a 10% or greater
            -         * decrease in performance for workloads that are CPU-bound and
            -         * possibly greater than a 10% decrease for workloads that are
            -         * input/output bound.
            -         * * **Machine Type**: nested virtualization can only be enabled on
            -         * workstation configurations that specify a
            -         * [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.machine_type]
            -         * in the N1 or N2 machine series.
            -         * * **GPUs**: nested virtualization may not be enabled on workstation
            -         * configurations with accelerators.
            -         * * **Operating System**: Because
            -         * [Container-Optimized
            -         * OS](https://cloud.google.com/compute/docs/images/os-details#container-optimized_os_cos)
            -         * does not support nested virtualization, when nested virtualization is
            -         * enabled, the underlying Compute Engine VM instances boot from an
            -         * [Ubuntu
            -         * LTS](https://cloud.google.com/compute/docs/images/os-details#ubuntu_lts)
            -         * image.
            -         * 
            - * - * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return This builder for chaining. - */ - public Builder clearEnableNestedVirtualization() { - bitField0_ = (bitField0_ & ~0x00000080); - enableNestedVirtualization_ = false; - onChanged(); - return this; - } + // Construct using + // com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity.newBuilder() + private Builder() {} - private com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig - shieldedInstanceConfig_; - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfigOrBuilder> - shieldedInstanceConfigBuilder_; + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the shieldedInstanceConfig field is set. - */ - public boolean hasShieldedInstanceConfig() { - return ((bitField0_ & 0x00000100) != 0); - } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + consumeReservationType_ = 0; + key_ = ""; + values_ = com.google.protobuf.LazyStringArrayList.emptyList(); + return this; + } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The shieldedInstanceConfig. - */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig - getShieldedInstanceConfig() { - if (shieldedInstanceConfigBuilder_ == null) { - return shieldedInstanceConfig_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.getDefaultInstance() - : shieldedInstanceConfig_; - } else { - return shieldedInstanceConfigBuilder_.getMessage(); + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_ReservationAffinity_descriptor; } - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setShieldedInstanceConfig( + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + build() { com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig - value) { - if (shieldedInstanceConfigBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + .ReservationAffinity + result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } - shieldedInstanceConfig_ = value; - } else { - shieldedInstanceConfigBuilder_.setMessage(value); + return result; } - bitField0_ |= 0x00000100; - onChanged(); - return this; - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setShieldedInstanceConfig( + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + buildPartial() { com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.Builder - builderForValue) { - if (shieldedInstanceConfigBuilder_ == null) { - shieldedInstanceConfig_ = builderForValue.build(); - } else { - shieldedInstanceConfigBuilder_.setMessage(builderForValue.build()); + .ReservationAffinity + result = + new com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; } - bitField0_ |= 0x00000100; - onChanged(); - return this; - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder mergeShieldedInstanceConfig( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig - value) { - if (shieldedInstanceConfigBuilder_ == null) { - if (((bitField0_ & 0x00000100) != 0) - && shieldedInstanceConfig_ != null - && shieldedInstanceConfig_ - != com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.getDefaultInstance()) { - getShieldedInstanceConfigBuilder().mergeFrom(value); + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.consumeReservationType_ = consumeReservationType_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.key_ = key_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + values_.makeImmutable(); + result.values_ = values_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity) + other); } else { - shieldedInstanceConfig_ = value; + super.mergeFrom(other); + return this; } - } else { - shieldedInstanceConfigBuilder_.mergeFrom(value); } - if (shieldedInstanceConfig_ != null) { - bitField0_ |= 0x00000100; + + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + other) { + if (other + == com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.getDefaultInstance()) return this; + if (other.consumeReservationType_ != 0) { + setConsumeReservationTypeValue(other.getConsumeReservationTypeValue()); + } + if (!other.getKey().isEmpty()) { + key_ = other.key_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.values_.isEmpty()) { + if (values_.isEmpty()) { + values_ = other.values_; + bitField0_ |= 0x00000004; + } else { + ensureValuesIsMutable(); + values_.addAll(other.values_); + } + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); onChanged(); + return this; } - return this; - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder clearShieldedInstanceConfig() { - bitField0_ = (bitField0_ & ~0x00000100); - shieldedInstanceConfig_ = null; - if (shieldedInstanceConfigBuilder_ != null) { - shieldedInstanceConfigBuilder_.dispose(); - shieldedInstanceConfigBuilder_ = null; - } - onChanged(); - return this; - } - - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.Builder - getShieldedInstanceConfigBuilder() { - bitField0_ |= 0x00000100; - onChanged(); - return internalGetShieldedInstanceConfigFieldBuilder().getBuilder(); - } - - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfigOrBuilder - getShieldedInstanceConfigOrBuilder() { - if (shieldedInstanceConfigBuilder_ != null) { - return shieldedInstanceConfigBuilder_.getMessageOrBuilder(); - } else { - return shieldedInstanceConfig_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.getDefaultInstance() - : shieldedInstanceConfig_; + @java.lang.Override + public final boolean isInitialized() { + return true; } - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Shielded instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfigOrBuilder> - internalGetShieldedInstanceConfigFieldBuilder() { - if (shieldedInstanceConfigBuilder_ == null) { - shieldedInstanceConfigBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfig.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceShieldedInstanceConfigOrBuilder>( - getShieldedInstanceConfig(), getParentForChildren(), isClean()); - shieldedInstanceConfig_ = null; + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + consumeReservationType_ = input.readEnum(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: + { + key_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureValuesIsMutable(); + values_.add(s); + break; + } // case 26 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; } - return shieldedInstanceConfigBuilder_; - } - private com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig - confidentialInstanceConfig_; - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfigOrBuilder> - confidentialInstanceConfigBuilder_; + private int bitField0_; - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the confidentialInstanceConfig field is set. - */ - public boolean hasConfidentialInstanceConfig() { - return ((bitField0_ & 0x00000200) != 0); - } + private int consumeReservationType_ = 0; - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The confidentialInstanceConfig. - */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig - getConfidentialInstanceConfig() { - if (confidentialInstanceConfigBuilder_ == null) { - return confidentialInstanceConfig_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.getDefaultInstance() - : confidentialInstanceConfig_; - } else { - return confidentialInstanceConfigBuilder_.getMessage(); + /** + * + * + *
            +           * Optional. Corresponds to the type of reservation consumption.
            +           * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity.Type consume_reservation_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for consumeReservationType. + */ + @java.lang.Override + public int getConsumeReservationTypeValue() { + return consumeReservationType_; } - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setConfidentialInstanceConfig( + /** + * + * + *
            +           * Optional. Corresponds to the type of reservation consumption.
            +           * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity.Type consume_reservation_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The enum numeric value on the wire for consumeReservationType to set. + * @return This builder for chaining. + */ + public Builder setConsumeReservationTypeValue(int value) { + consumeReservationType_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +           * Optional. Corresponds to the type of reservation consumption.
            +           * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity.Type consume_reservation_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The consumeReservationType. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Type + getConsumeReservationType() { com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig - value) { - if (confidentialInstanceConfigBuilder_ == null) { + .ReservationAffinity.Type + result = + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Type.forNumber(consumeReservationType_); + return result == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Type.UNRECOGNIZED + : result; + } + + /** + * + * + *
            +           * Optional. Corresponds to the type of reservation consumption.
            +           * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity.Type consume_reservation_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The consumeReservationType to set. + * @return This builder for chaining. + */ + public Builder setConsumeReservationType( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Type + value) { if (value == null) { throw new NullPointerException(); } - confidentialInstanceConfig_ = value; - } else { - confidentialInstanceConfigBuilder_.setMessage(value); + bitField0_ |= 0x00000001; + consumeReservationType_ = value.getNumber(); + onChanged(); + return this; } - bitField0_ |= 0x00000200; - onChanged(); - return this; - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setConfidentialInstanceConfig( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.Builder - builderForValue) { - if (confidentialInstanceConfigBuilder_ == null) { - confidentialInstanceConfig_ = builderForValue.build(); - } else { - confidentialInstanceConfigBuilder_.setMessage(builderForValue.build()); + /** + * + * + *
            +           * Optional. Corresponds to the type of reservation consumption.
            +           * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity.Type consume_reservation_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearConsumeReservationType() { + bitField0_ = (bitField0_ & ~0x00000001); + consumeReservationType_ = 0; + onChanged(); + return this; } - bitField0_ |= 0x00000200; - onChanged(); - return this; - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder mergeConfidentialInstanceConfig( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig - value) { - if (confidentialInstanceConfigBuilder_ == null) { - if (((bitField0_ & 0x00000200) != 0) - && confidentialInstanceConfig_ != null - && confidentialInstanceConfig_ - != com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.getDefaultInstance()) { - getConfidentialInstanceConfigBuilder().mergeFrom(value); + private java.lang.Object key_ = ""; + + /** + * + * + *
            +           * Optional. Corresponds to the label key of reservation resource.
            +           * 
            + * + * string key = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The key. + */ + public java.lang.String getKey() { + java.lang.Object ref = key_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + key_ = s; + return s; } else { - confidentialInstanceConfig_ = value; + return (java.lang.String) ref; } - } else { - confidentialInstanceConfigBuilder_.mergeFrom(value); } - if (confidentialInstanceConfig_ != null) { - bitField0_ |= 0x00000200; + + /** + * + * + *
            +           * Optional. Corresponds to the label key of reservation resource.
            +           * 
            + * + * string key = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for key. + */ + public com.google.protobuf.ByteString getKeyBytes() { + java.lang.Object ref = key_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + key_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +           * Optional. Corresponds to the label key of reservation resource.
            +           * 
            + * + * string key = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The key to set. + * @return This builder for chaining. + */ + public Builder setKey(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + key_ = value; + bitField0_ |= 0x00000002; onChanged(); + return this; } - return this; - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder clearConfidentialInstanceConfig() { - bitField0_ = (bitField0_ & ~0x00000200); - confidentialInstanceConfig_ = null; - if (confidentialInstanceConfigBuilder_ != null) { - confidentialInstanceConfigBuilder_.dispose(); - confidentialInstanceConfigBuilder_ = null; + /** + * + * + *
            +           * Optional. Corresponds to the label key of reservation resource.
            +           * 
            + * + * string key = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearKey() { + key_ = getDefaultInstance().getKey(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; } - onChanged(); - return this; - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.Builder - getConfidentialInstanceConfigBuilder() { - bitField0_ |= 0x00000200; - onChanged(); - return internalGetConfidentialInstanceConfigFieldBuilder().getBuilder(); - } + /** + * + * + *
            +           * Optional. Corresponds to the label key of reservation resource.
            +           * 
            + * + * string key = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for key to set. + * @return This builder for chaining. + */ + public Builder setKeyBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + key_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfigOrBuilder - getConfidentialInstanceConfigOrBuilder() { - if (confidentialInstanceConfigBuilder_ != null) { - return confidentialInstanceConfigBuilder_.getMessageOrBuilder(); - } else { - return confidentialInstanceConfig_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.getDefaultInstance() - : confidentialInstanceConfig_; + private com.google.protobuf.LazyStringArrayList values_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureValuesIsMutable() { + if (!values_.isModifiable()) { + values_ = new com.google.protobuf.LazyStringArrayList(values_); + } + bitField0_ |= 0x00000004; } - } - /** - * - * - *
            -         * Optional. A set of Compute Engine Confidential VM instance options.
            -         * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfigOrBuilder> - internalGetConfidentialInstanceConfigFieldBuilder() { - if (confidentialInstanceConfigBuilder_ == null) { - confidentialInstanceConfigBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfig.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .GceConfidentialInstanceConfigOrBuilder>( - getConfidentialInstanceConfig(), getParentForChildren(), isClean()); - confidentialInstanceConfig_ = null; + /** + * + * + *
            +           * Optional. Corresponds to the label values of reservation resources.
            +           * Valid values are either the name of a reservation in the same project
            +           * or "projects/{project}/reservations/{reservation}" to target a shared
            +           * reservation in the same zone but in a different project.
            +           * 
            + * + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the values. + */ + public com.google.protobuf.ProtocolStringList getValuesList() { + values_.makeImmutable(); + return values_; } - return confidentialInstanceConfigBuilder_; - } - private int bootDiskSizeGb_; + /** + * + * + *
            +           * Optional. Corresponds to the label values of reservation resources.
            +           * Valid values are either the name of a reservation in the same project
            +           * or "projects/{project}/reservations/{reservation}" to target a shared
            +           * reservation in the same zone but in a different project.
            +           * 
            + * + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of values. + */ + public int getValuesCount() { + return values_.size(); + } - /** - * - * - *
            -         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            -         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            -         * 
            - * - * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bootDiskSizeGb. - */ - @java.lang.Override - public int getBootDiskSizeGb() { - return bootDiskSizeGb_; - } - - /** - * - * - *
            -         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            -         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            -         * 
            - * - * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bootDiskSizeGb to set. - * @return This builder for chaining. - */ - public Builder setBootDiskSizeGb(int value) { - - bootDiskSizeGb_ = value; - bitField0_ |= 0x00000400; - onChanged(); - return this; - } - - /** - * - * - *
            -         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            -         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            -         * 
            - * - * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearBootDiskSizeGb() { - bitField0_ = (bitField0_ & ~0x00000400); - bootDiskSizeGb_ = 0; - onChanged(); - return this; - } - - private java.util.List< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator> - accelerators_ = java.util.Collections.emptyList(); + /** + * + * + *
            +           * Optional. Corresponds to the label values of reservation resources.
            +           * Valid values are either the name of a reservation in the same project
            +           * or "projects/{project}/reservations/{reservation}" to target a shared
            +           * reservation in the same zone but in a different project.
            +           * 
            + * + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The values at the given index. + */ + public java.lang.String getValues(int index) { + return values_.get(index); + } - private void ensureAcceleratorsIsMutable() { - if (!((bitField0_ & 0x00000800) != 0)) { - accelerators_ = - new java.util.ArrayList< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .Accelerator>(accelerators_); - bitField0_ |= 0x00000800; + /** + * + * + *
            +           * Optional. Corresponds to the label values of reservation resources.
            +           * Valid values are either the name of a reservation in the same project
            +           * or "projects/{project}/reservations/{reservation}" to target a shared
            +           * reservation in the same zone but in a different project.
            +           * 
            + * + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the values at the given index. + */ + public com.google.protobuf.ByteString getValuesBytes(int index) { + return values_.getByteString(index); } - } - private com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator - .Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .AcceleratorOrBuilder> - acceleratorsBuilder_; + /** + * + * + *
            +           * Optional. Corresponds to the label values of reservation resources.
            +           * Valid values are either the name of a reservation in the same project
            +           * or "projects/{project}/reservations/{reservation}" to target a shared
            +           * reservation in the same zone but in a different project.
            +           * 
            + * + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index to set the value at. + * @param value The values to set. + * @return This builder for chaining. + */ + public Builder setValues(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureValuesIsMutable(); + values_.set(index, value); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public java.util.List< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator> - getAcceleratorsList() { - if (acceleratorsBuilder_ == null) { - return java.util.Collections.unmodifiableList(accelerators_); - } else { - return acceleratorsBuilder_.getMessageList(); + /** + * + * + *
            +           * Optional. Corresponds to the label values of reservation resources.
            +           * Valid values are either the name of a reservation in the same project
            +           * or "projects/{project}/reservations/{reservation}" to target a shared
            +           * reservation in the same zone but in a different project.
            +           * 
            + * + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The values to add. + * @return This builder for chaining. + */ + public Builder addValues(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureValuesIsMutable(); + values_.add(value); + bitField0_ |= 0x00000004; + onChanged(); + return this; } - } - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public int getAcceleratorsCount() { - if (acceleratorsBuilder_ == null) { - return accelerators_.size(); - } else { - return acceleratorsBuilder_.getCount(); + /** + * + * + *
            +           * Optional. Corresponds to the label values of reservation resources.
            +           * Valid values are either the name of a reservation in the same project
            +           * or "projects/{project}/reservations/{reservation}" to target a shared
            +           * reservation in the same zone but in a different project.
            +           * 
            + * + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param values The values to add. + * @return This builder for chaining. + */ + public Builder addAllValues(java.lang.Iterable values) { + ensureValuesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, values_); + bitField0_ |= 0x00000004; + onChanged(); + return this; } - } - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator - getAccelerators(int index) { - if (acceleratorsBuilder_ == null) { - return accelerators_.get(index); - } else { - return acceleratorsBuilder_.getMessage(index); + /** + * + * + *
            +           * Optional. Corresponds to the label values of reservation resources.
            +           * Valid values are either the name of a reservation in the same project
            +           * or "projects/{project}/reservations/{reservation}" to target a shared
            +           * reservation in the same zone but in a different project.
            +           * 
            + * + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearValues() { + values_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + ; + onChanged(); + return this; } - } - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setAccelerators( - int index, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator - value) { - if (acceleratorsBuilder_ == null) { + /** + * + * + *
            +           * Optional. Corresponds to the label values of reservation resources.
            +           * Valid values are either the name of a reservation in the same project
            +           * or "projects/{project}/reservations/{reservation}" to target a shared
            +           * reservation in the same zone but in a different project.
            +           * 
            + * + * repeated string values = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes of the values to add. + * @return This builder for chaining. + */ + public Builder addValuesBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } - ensureAcceleratorsIsMutable(); - accelerators_.set(index, value); + checkByteStringIsUtf8(value); + ensureValuesIsMutable(); + values_.add(value); + bitField0_ |= 0x00000004; onChanged(); - } else { - acceleratorsBuilder_.setMessage(index, value); + return this; } - return this; - } - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setAccelerators( - int index, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator - .Builder - builderForValue) { - if (acceleratorsBuilder_ == null) { - ensureAcceleratorsIsMutable(); - accelerators_.set(index, builderForValue.build()); - onChanged(); - } else { - acceleratorsBuilder_.setMessage(index, builderForValue.build()); - } - return this; + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity) } - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder addAccelerators( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator - value) { - if (acceleratorsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureAcceleratorsIsMutable(); - accelerators_.add(value); - onChanged(); - } else { - acceleratorsBuilder_.addMessage(value); - } - return this; - } + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity) + private static final com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + DEFAULT_INSTANCE; - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder addAccelerators( - int index, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator - value) { - if (acceleratorsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureAcceleratorsIsMutable(); - accelerators_.add(index, value); - onChanged(); - } else { - acceleratorsBuilder_.addMessage(index, value); - } - return this; + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity(); } - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder addAccelerators( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator - .Builder - builderForValue) { - if (acceleratorsBuilder_ == null) { - ensureAcceleratorsIsMutable(); - accelerators_.add(builderForValue.build()); - onChanged(); - } else { - acceleratorsBuilder_.addMessage(builderForValue.build()); - } - return this; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + getDefaultInstance() { + return DEFAULT_INSTANCE; } - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder addAccelerators( - int index, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator - .Builder - builderForValue) { - if (acceleratorsBuilder_ == null) { - ensureAcceleratorsIsMutable(); - accelerators_.add(index, builderForValue.build()); - onChanged(); - } else { - acceleratorsBuilder_.addMessage(index, builderForValue.build()); - } - return this; - } + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public ReservationAffinity parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder addAllAccelerators( - java.lang.Iterable< - ? extends - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .Accelerator> - values) { - if (acceleratorsBuilder_ == null) { - ensureAcceleratorsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, accelerators_); - onChanged(); - } else { - acceleratorsBuilder_.addAllMessages(values); - } - return this; + public static com.google.protobuf.Parser parser() { + return PARSER; } - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder clearAccelerators() { - if (acceleratorsBuilder_ == null) { - accelerators_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000800); - onChanged(); - } else { - acceleratorsBuilder_.clear(); - } - return this; + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; } - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder removeAccelerators(int index) { - if (acceleratorsBuilder_ == null) { - ensureAcceleratorsIsMutable(); - accelerators_.remove(index); - onChanged(); - } else { - acceleratorsBuilder_.remove(index); - } - return this; + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } + } - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator - .Builder - getAcceleratorsBuilder(int index) { - return internalGetAcceleratorsFieldBuilder().getBuilder(index); - } + private int bitField0_; + public static final int MACHINE_TYPE_FIELD_NUMBER = 1; - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .AcceleratorOrBuilder - getAcceleratorsOrBuilder(int index) { - if (acceleratorsBuilder_ == null) { - return accelerators_.get(index); - } else { - return acceleratorsBuilder_.getMessageOrBuilder(index); - } - } + @SuppressWarnings("serial") + private volatile java.lang.Object machineType_ = ""; - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public java.util.List< - ? extends - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .AcceleratorOrBuilder> - getAcceleratorsOrBuilderList() { - if (acceleratorsBuilder_ != null) { - return acceleratorsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(accelerators_); - } + /** + * + * + *
            +       * Optional. The type of machine to use for VM instances—for example,
            +       * `"e2-standard-4"`. For more information about machine types that
            +       * Cloud Workstations supports, see the list of
            +       * [available machine
            +       * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +       * 
            + * + * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The machineType. + */ + @java.lang.Override + public java.lang.String getMachineType() { + java.lang.Object ref = machineType_; + 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(); + machineType_ = s; + return s; } + } - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator - .Builder - addAcceleratorsBuilder() { - return internalGetAcceleratorsFieldBuilder() - .addBuilder( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .Accelerator.getDefaultInstance()); + /** + * + * + *
            +       * Optional. The type of machine to use for VM instances—for example,
            +       * `"e2-standard-4"`. For more information about machine types that
            +       * Cloud Workstations supports, see the list of
            +       * [available machine
            +       * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +       * 
            + * + * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for machineType. + */ + @java.lang.Override + public com.google.protobuf.ByteString getMachineTypeBytes() { + java.lang.Object ref = machineType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + machineType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } + } - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator - .Builder - addAcceleratorsBuilder(int index) { - return internalGetAcceleratorsFieldBuilder() - .addBuilder( - index, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .Accelerator.getDefaultInstance()); - } + public static final int SERVICE_ACCOUNT_FIELD_NUMBER = 2; - /** - * - * - *
            -         * Optional. A list of the type and count of accelerator cards attached to
            -         * the instance.
            -         * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public java.util.List< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator - .Builder> - getAcceleratorsBuilderList() { - return internalGetAcceleratorsFieldBuilder().getBuilderList(); - } + @SuppressWarnings("serial") + private volatile java.lang.Object serviceAccount_ = ""; - private com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator - .Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .AcceleratorOrBuilder> - internalGetAcceleratorsFieldBuilder() { - if (acceleratorsBuilder_ == null) { - acceleratorsBuilder_ = - new com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .Accelerator, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .Accelerator.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .AcceleratorOrBuilder>( - accelerators_, - ((bitField0_ & 0x00000800) != 0), - getParentForChildren(), - isClean()); - accelerators_ = null; - } - return acceleratorsBuilder_; + /** + * + * + *
            +       * Optional. The email address of the service account for Cloud
            +       * Workstations VMs created with this configuration. When specified, be
            +       * sure that the service account has `logging.logEntries.create` and
            +       * `monitoring.timeSeries.create` permissions on the project so it can
            +       * write logs out to Cloud Logging. If using a custom container image, the
            +       * service account must have [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image.
            +       *
            +       * If you as the administrator want to be able to `ssh` into the
            +       * underlying VM, you need to set this value to a service account
            +       * for which you have the `iam.serviceAccounts.actAs` permission.
            +       * Conversely, if you don't want anyone to be able to `ssh` into the
            +       * underlying VM, use a service account where no one has that
            +       * permission.
            +       *
            +       * If not set, VMs run with a service account provided by the
            +       * Cloud Workstations service, and the image must be publicly
            +       * accessible.
            +       * 
            + * + * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The serviceAccount. + */ + @java.lang.Override + public java.lang.String getServiceAccount() { + java.lang.Object ref = serviceAccount_; + 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(); + serviceAccount_ = s; + return s; } + } - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) + /** + * + * + *
            +       * Optional. The email address of the service account for Cloud
            +       * Workstations VMs created with this configuration. When specified, be
            +       * sure that the service account has `logging.logEntries.create` and
            +       * `monitoring.timeSeries.create` permissions on the project so it can
            +       * write logs out to Cloud Logging. If using a custom container image, the
            +       * service account must have [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image.
            +       *
            +       * If you as the administrator want to be able to `ssh` into the
            +       * underlying VM, you need to set this value to a service account
            +       * for which you have the `iam.serviceAccounts.actAs` permission.
            +       * Conversely, if you don't want anyone to be able to `ssh` into the
            +       * underlying VM, use a service account where no one has that
            +       * permission.
            +       *
            +       * If not set, VMs run with a service account provided by the
            +       * Cloud Workstations service, and the image must be publicly
            +       * accessible.
            +       * 
            + * + * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for serviceAccount. + */ + @java.lang.Override + public com.google.protobuf.ByteString getServiceAccountBytes() { + java.lang.Object ref = serviceAccount_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + serviceAccount_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) - private static final com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - DEFAULT_INSTANCE; + public static final int SERVICE_ACCOUNT_SCOPES_FIELD_NUMBER = 3; - static { - DEFAULT_INSTANCE = - new com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance(); - } + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList serviceAccountScopes_ = + com.google.protobuf.LazyStringArrayList.emptyList(); - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - getDefaultInstance() { - return DEFAULT_INSTANCE; + /** + * + * + *
            +       * Optional. Scopes to grant to the
            +       * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
            +       * 
            + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return A list containing the serviceAccountScopes. + */ + public com.google.protobuf.ProtocolStringList getServiceAccountScopesList() { + return serviceAccountScopes_; } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public GceInstance parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); - } - }; - - public static com.google.protobuf.Parser parser() { - return PARSER; + /** + * + * + *
            +       * Optional. Scopes to grant to the
            +       * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
            +       * 
            + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The count of serviceAccountScopes. + */ + public int getServiceAccountScopesCount() { + return serviceAccountScopes_.size(); } - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; + /** + * + * + *
            +       * Optional. Scopes to grant to the
            +       * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
            +       * 
            + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param index The index of the element to return. + * @return The serviceAccountScopes at the given index. + */ + public java.lang.String getServiceAccountScopes(int index) { + return serviceAccountScopes_.get(index); } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; + /** + * + * + *
            +       * Optional. Scopes to grant to the
            +       * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            +       * When specified, users of workstations under this configuration must
            +       * have `iam.serviceAccounts.actAs` on the service account.
            +       * 
            + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param index The index of the value to return. + * @return The bytes of the serviceAccountScopes at the given index. + */ + public com.google.protobuf.ByteString getServiceAccountScopesBytes(int index) { + return serviceAccountScopes_.getByteString(index); } - } - - private int configCase_ = 0; - @SuppressWarnings("serial") - private java.lang.Object config_; + public static final int TAGS_FIELD_NUMBER = 4; - public enum ConfigCase - implements - com.google.protobuf.Internal.EnumLite, - com.google.protobuf.AbstractMessage.InternalOneOfEnum { - GCE_INSTANCE(1), - CONFIG_NOT_SET(0); - private final int value; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList tags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); - private ConfigCase(int value) { - this.value = value; + /** + * + * + *
            +       * Optional. Network tags to add to the Compute Engine VMs backing the
            +       * workstations. This option applies
            +       * [network
            +       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +       * created with this configuration. These network tags enable the creation
            +       * of [firewall
            +       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +       * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the tags. + */ + public com.google.protobuf.ProtocolStringList getTagsList() { + return tags_; } /** - * @param value The number of the enum to look for. - * @return The enum associated with the given number. - * @deprecated Use {@link #forNumber(int)} instead. + * + * + *
            +       * Optional. Network tags to add to the Compute Engine VMs backing the
            +       * workstations. This option applies
            +       * [network
            +       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +       * created with this configuration. These network tags enable the creation
            +       * of [firewall
            +       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +       * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of tags. */ - @java.lang.Deprecated - public static ConfigCase valueOf(int value) { - return forNumber(value); + public int getTagsCount() { + return tags_.size(); } - public static ConfigCase forNumber(int value) { - switch (value) { - case 1: - return GCE_INSTANCE; - case 0: - return CONFIG_NOT_SET; - default: - return null; - } + /** + * + * + *
            +       * Optional. Network tags to add to the Compute Engine VMs backing the
            +       * workstations. This option applies
            +       * [network
            +       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +       * created with this configuration. These network tags enable the creation
            +       * of [firewall
            +       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +       * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The tags at the given index. + */ + public java.lang.String getTags(int index) { + return tags_.get(index); } - public int getNumber() { - return this.value; + /** + * + * + *
            +       * Optional. Network tags to add to the Compute Engine VMs backing the
            +       * workstations. This option applies
            +       * [network
            +       * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +       * created with this configuration. These network tags enable the creation
            +       * of [firewall
            +       * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +       * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the tags at the given index. + */ + public com.google.protobuf.ByteString getTagsBytes(int index) { + return tags_.getByteString(index); } - }; - public ConfigCase getConfigCase() { - return ConfigCase.forNumber(configCase_); - } + public static final int POOL_SIZE_FIELD_NUMBER = 5; + private int poolSize_ = 0; - public static final int GCE_INSTANCE_FIELD_NUMBER = 1; + /** + * + * + *
            +       * Optional. The number of VMs that the system should keep idle so that
            +       * new workstations can be started quickly for new users. Defaults to `0`
            +       * in the API.
            +       * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The poolSize. + */ + @java.lang.Override + public int getPoolSize() { + return poolSize_; + } - /** - * - * - *
            -     * Specifies a Compute Engine instance as the host.
            -     * 
            - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; - * - * - * @return Whether the gceInstance field is set. - */ - @java.lang.Override - public boolean hasGceInstance() { - return configCase_ == 1; - } + public static final int POOLED_INSTANCES_FIELD_NUMBER = 12; + private int pooledInstances_ = 0; - /** - * - * - *
            -     * Specifies a Compute Engine instance as the host.
            -     * 
            - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; - * - * - * @return The gceInstance. - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - getGceInstance() { - if (configCase_ == 1) { - return (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) config_; + /** + * + * + *
            +       * Output only. Number of instances currently available in the pool for
            +       * faster workstation startup.
            +       * 
            + * + * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The pooledInstances. + */ + @java.lang.Override + public int getPooledInstances() { + return pooledInstances_; } - return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .getDefaultInstance(); - } - - /** - * - * - *
            -     * Specifies a Compute Engine instance as the host.
            -     * 
            - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstanceOrBuilder - getGceInstanceOrBuilder() { - if (configCase_ == 1) { - return (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) config_; - } - return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .getDefaultInstance(); - } - private byte memoizedIsInitialized = -1; + public static final int DISABLE_PUBLIC_IP_ADDRESSES_FIELD_NUMBER = 6; + private boolean disablePublicIpAddresses_ = false; - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + /** + * + * + *
            +       * Optional. When set to true, disables public IP addresses for VMs. If
            +       * you disable public IP addresses, you must set up Private Google Access
            +       * or Cloud NAT on your network. If you use Private Google Access and you
            +       * use `private.googleapis.com` or `restricted.googleapis.com` for
            +       * Container Registry and Artifact Registry, make sure that you set
            +       * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            +       * Defaults to false (VMs have public IP addresses).
            +       * 
            + * + * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The disablePublicIpAddresses. + */ + @java.lang.Override + public boolean getDisablePublicIpAddresses() { + return disablePublicIpAddresses_; + } - memoizedIsInitialized = 1; - return true; - } + public static final int ENABLE_NESTED_VIRTUALIZATION_FIELD_NUMBER = 7; + private boolean enableNestedVirtualization_ = false; - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (configCase_ == 1) { - output.writeMessage( - 1, (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) config_); + /** + * + * + *
            +       * Optional. Whether to enable nested virtualization on Cloud Workstations
            +       * VMs created using this workstation configuration.
            +       *
            +       * Defaults to false.
            +       *
            +       * Nested virtualization lets you run virtual machine (VM) instances
            +       * inside your workstation. Before enabling nested virtualization,
            +       * consider the following important considerations. Cloud Workstations
            +       * instances are subject to the [same restrictions as Compute Engine
            +       * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +       *
            +       * * **Organization policy**: projects, folders, or
            +       * organizations may be restricted from creating nested VMs if the
            +       * **Disable VM nested virtualization** constraint is enforced in
            +       * the organization policy. For more information, see the
            +       * Compute Engine section,
            +       * [Checking whether nested virtualization is
            +       * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +       * * **Performance**: nested VMs might experience a 10% or greater
            +       * decrease in performance for workloads that are CPU-bound and
            +       * possibly greater than a 10% decrease for workloads that are
            +       * input/output bound.
            +       * * **Machine Type**: nested virtualization can only be enabled on
            +       * workstation configurations that specify a
            +       * [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.machine_type]
            +       * in the N1 or N2 machine series.
            +       * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enableNestedVirtualization. + */ + @java.lang.Override + public boolean getEnableNestedVirtualization() { + return enableNestedVirtualization_; } - getUnknownFields().writeTo(output); - } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + public static final int SHIELDED_INSTANCE_CONFIG_FIELD_NUMBER = 8; + private com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig + shieldedInstanceConfig_; - size = 0; - if (configCase_ == 1) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 1, - (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) config_); + /** + * + * + *
            +       * Optional. A set of Compute Engine Shielded instance options.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the shieldedInstanceConfig field is set. + */ + @java.lang.Override + public boolean hasShieldedInstanceConfig() { + return ((bitField0_ & 0x00000001) != 0); } - 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.cloud.workstations.v1beta.WorkstationConfig.Host)) { - return super.equals(obj); + /** + * + * + *
            +       * Optional. A set of Compute Engine Shielded instance options.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The shieldedInstanceConfig. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig + getShieldedInstanceConfig() { + return shieldedInstanceConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.getDefaultInstance() + : shieldedInstanceConfig_; } - com.google.cloud.workstations.v1beta.WorkstationConfig.Host other = - (com.google.cloud.workstations.v1beta.WorkstationConfig.Host) obj; - if (!getConfigCase().equals(other.getConfigCase())) return false; - switch (configCase_) { - case 1: - if (!getGceInstance().equals(other.getGceInstance())) return false; - break; - case 0: - default: + /** + * + * + *
            +       * Optional. A set of Compute Engine Shielded instance options.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfigOrBuilder + getShieldedInstanceConfigOrBuilder() { + return shieldedInstanceConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.getDefaultInstance() + : shieldedInstanceConfig_; } - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; + public static final int CONFIDENTIAL_INSTANCE_CONFIG_FIELD_NUMBER = 10; + private com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig + confidentialInstanceConfig_; + + /** + * + * + *
            +       * Optional. A set of Compute Engine Confidential VM instance options.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the confidentialInstanceConfig field is set. + */ + @java.lang.Override + public boolean hasConfidentialInstanceConfig() { + return ((bitField0_ & 0x00000002) != 0); } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - switch (configCase_) { - case 1: - hash = (37 * hash) + GCE_INSTANCE_FIELD_NUMBER; - hash = (53 * hash) + getGceInstance().hashCode(); - break; - case 0: - default: + + /** + * + * + *
            +       * Optional. A set of Compute Engine Confidential VM instance options.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The confidentialInstanceConfig. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig + getConfidentialInstanceConfig() { + return confidentialInstanceConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.getDefaultInstance() + : confidentialInstanceConfig_; } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host 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.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host 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.cloud.workstations.v1beta.WorkstationConfig.Host parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host 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.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host 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.cloud.workstations.v1beta.WorkstationConfig.Host 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; - } - - /** - * - * - *
            -     * Runtime host for a workstation.
            -     * 
            - * - * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.Host} - */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.Host) - com.google.cloud.workstations.v1beta.WorkstationConfig.HostOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_descriptor; + /** + * + * + *
            +       * Optional. A set of Compute Engine Confidential VM instance options.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfigOrBuilder + getConfidentialInstanceConfigOrBuilder() { + return confidentialInstanceConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.getDefaultInstance() + : confidentialInstanceConfig_; } + public static final int BOOT_DISK_SIZE_GB_FIELD_NUMBER = 9; + private int bootDiskSizeGb_ = 0; + + /** + * + * + *
            +       * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +       * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +       * 
            + * + * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bootDiskSizeGb. + */ @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.Builder.class); + public int getBootDiskSizeGb() { + return bootDiskSizeGb_; } - // Construct using com.google.cloud.workstations.v1beta.WorkstationConfig.Host.newBuilder() - private Builder() {} + public static final int ACCELERATORS_FIELD_NUMBER = 11; - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - } + @SuppressWarnings("serial") + private java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator> + accelerators_; + /** + * + * + *
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - if (gceInstanceBuilder_ != null) { - gceInstanceBuilder_.clear(); - } - configCase_ = 0; - config_ = null; - return this; + public java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator> + getAcceleratorsList() { + return accelerators_; } + /** + * + * + *
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_descriptor; + public java.util.List< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + getAcceleratorsOrBuilderList() { + return accelerators_; } + /** + * + * + *
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host - getDefaultInstanceForType() { - return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.getDefaultInstance(); + public int getAcceleratorsCount() { + return accelerators_.size(); } + /** + * + * + *
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
            +       * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host build() { - com.google.cloud.workstations.v1beta.WorkstationConfig.Host result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + getAccelerators(int index) { + return accelerators_.get(index); } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host buildPartial() { - com.google.cloud.workstations.v1beta.WorkstationConfig.Host result = - new com.google.cloud.workstations.v1beta.WorkstationConfig.Host(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - buildPartialOneofs(result); - onBuilt(); - return result; - } - - private void buildPartial0( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host result) { - int from_bitField0_ = bitField0_; - } - - private void buildPartialOneofs( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host result) { - result.configCase_ = configCase_; - result.config_ = this.config_; - if (configCase_ == 1 && gceInstanceBuilder_ != null) { - result.config_ = gceInstanceBuilder_.build(); - } - } - - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.Host) { - return mergeFrom((com.google.cloud.workstations.v1beta.WorkstationConfig.Host) other); - } else { - super.mergeFrom(other); - return this; - } - } - - public Builder mergeFrom(com.google.cloud.workstations.v1beta.WorkstationConfig.Host other) { - if (other - == com.google.cloud.workstations.v1beta.WorkstationConfig.Host.getDefaultInstance()) - return this; - switch (other.getConfigCase()) { - case GCE_INSTANCE: - { - mergeGceInstance(other.getGceInstance()); - break; - } - case CONFIG_NOT_SET: - { - break; - } - } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; - } - - @java.lang.Override - public final boolean isInitialized() { - return true; - } - - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - input.readMessage( - internalGetGceInstanceFieldBuilder().getBuilder(), extensionRegistry); - configCase_ = 1; - break; - } // case 10 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; - } - - private int configCase_ = 0; - private java.lang.Object config_; - - public ConfigCase getConfigCase() { - return ConfigCase.forNumber(configCase_); - } - - public Builder clearConfig() { - configCase_ = 0; - config_ = null; - onChanged(); - return this; - } - - private int bitField0_; - - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstanceOrBuilder> - gceInstanceBuilder_; - /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. A list of the type and count of accelerator cards attached to
            +       * the instance.
                    * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the gceInstance field is set. */ @java.lang.Override - public boolean hasGceInstance() { - return configCase_ == 1; + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder + getAcceleratorsOrBuilder(int index) { + return accelerators_.get(index); } + public static final int BOOST_CONFIGS_FIELD_NUMBER = 25; + + @SuppressWarnings("serial") + private java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig> + boostConfigs_; + /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
                    * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The gceInstance. */ @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - getGceInstance() { - if (gceInstanceBuilder_ == null) { - if (configCase_ == 1) { - return (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) - config_; - } - return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .getDefaultInstance(); - } else { - if (configCase_ == 1) { - return gceInstanceBuilder_.getMessage(); - } - return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .getDefaultInstance(); - } + public java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig> + getBoostConfigsList() { + return boostConfigs_; } /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
                    * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setGceInstance( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance value) { - if (gceInstanceBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - config_ = value; - onChanged(); - } else { - gceInstanceBuilder_.setMessage(value); - } - configCase_ = 1; - return this; + @java.lang.Override + public java.util.List< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder> + getBoostConfigsOrBuilderList() { + return boostConfigs_; } /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
                    * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setGceInstance( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Builder - builderForValue) { - if (gceInstanceBuilder_ == null) { - config_ = builderForValue.build(); - onChanged(); - } else { - gceInstanceBuilder_.setMessage(builderForValue.build()); - } - configCase_ = 1; - return this; + @java.lang.Override + public int getBoostConfigsCount() { + return boostConfigs_.size(); } /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
                    * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeGceInstance( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance value) { - if (gceInstanceBuilder_ == null) { - if (configCase_ == 1 - && config_ - != com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .getDefaultInstance()) { - config_ = - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.newBuilder( - (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) - config_) - .mergeFrom(value) - .buildPartial(); - } else { - config_ = value; - } - onChanged(); - } else { - if (configCase_ == 1) { - gceInstanceBuilder_.mergeFrom(value); - } else { - gceInstanceBuilder_.setMessage(value); - } - } - configCase_ = 1; - return this; + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + getBoostConfigs(int index) { + return boostConfigs_.get(index); } /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. A list of the boost configurations that workstations created
            +       * using this workstation configuration are allowed to use. If specified,
            +       * users will have the option to choose from the list of boost configs
            +       * when starting a workstation.
                    * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearGceInstance() { - if (gceInstanceBuilder_ == null) { - if (configCase_ == 1) { - configCase_ = 0; - config_ = null; - onChanged(); - } - } else { - if (configCase_ == 1) { - configCase_ = 0; - config_ = null; - } - gceInstanceBuilder_.clear(); - } - return this; + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder + getBoostConfigsOrBuilder(int index) { + return boostConfigs_.get(index); } + public static final int DISABLE_SSH_FIELD_NUMBER = 13; + private boolean disableSsh_ = false; + /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. Whether to disable SSH access to the VM.
                    * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; - * + * bool disable_ssh = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The disableSsh. */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Builder - getGceInstanceBuilder() { - return internalGetGceInstanceFieldBuilder().getBuilder(); + @java.lang.Override + public boolean getDisableSsh() { + return disableSsh_; + } + + public static final int VM_TAGS_FIELD_NUMBER = 14; + + private static final class VmTagsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_VmTagsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField vmTags_; + + private com.google.protobuf.MapField internalGetVmTags() { + if (vmTags_ == null) { + return com.google.protobuf.MapField.emptyMapField(VmTagsDefaultEntryHolder.defaultEntry); + } + return vmTags_; + } + + public int getVmTagsCount() { + return internalGetVmTags().getMap().size(); } /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
                    * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstanceOrBuilder - getGceInstanceOrBuilder() { - if ((configCase_ == 1) && (gceInstanceBuilder_ != null)) { - return gceInstanceBuilder_.getMessageOrBuilder(); - } else { - if (configCase_ == 1) { - return (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) - config_; - } - return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .getDefaultInstance(); + public boolean containsVmTags(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } + return internalGetVmTags().getMap().containsKey(key); + } + + /** Use {@link #getVmTagsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getVmTags() { + return getVmTagsMap(); } /** * * *
            -       * Specifies a Compute Engine instance as the host.
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
                    * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstanceOrBuilder> - internalGetGceInstanceFieldBuilder() { - if (gceInstanceBuilder_ == null) { - if (!(configCase_ == 1)) { - config_ = - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance - .getDefaultInstance(); - } - gceInstanceBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstanceOrBuilder>( - (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) config_, - getParentForChildren(), - isClean()); - config_ = null; + @java.lang.Override + public java.util.Map getVmTagsMap() { + return internalGetVmTags().getMap(); + } + + /** + * + * + *
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
            +       * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getVmTagsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); } - configCase_ = 1; - onChanged(); - return gceInstanceBuilder_; + java.util.Map map = internalGetVmTags().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; } - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.Host) - } + /** + * + * + *
            +       * Optional. Resource manager tags to be bound to this instance.
            +       * Tag keys and values have the same definition as [resource manager
            +       * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +       * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +       * values are in the format `tagValues/456`.
            +       * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getVmTagsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetVmTags().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.Host) - private static final com.google.cloud.workstations.v1beta.WorkstationConfig.Host - DEFAULT_INSTANCE; + public static final int RESERVATION_AFFINITY_FIELD_NUMBER = 15; + private com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + reservationAffinity_; - static { - DEFAULT_INSTANCE = new com.google.cloud.workstations.v1beta.WorkstationConfig.Host(); - } + /** + * + * + *
            +       * Optional.
            +       * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +       * specifies a reservation that can be consumed to create VM
            +       * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +       * will only create VMs in the zone where the reservation is located.
            +       * This would affect availability since the service will no longer be
            +       * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +       * reservations in both zones that the config creates VMs in will ensure
            +       * higher availability.
            +       * **Important Considerations for Reservation Affinity:**
            +       *
            +       * *   This feature is intended for advanced users and requires
            +       * familiarity with Google Compute Engine reservations.
            +       * *   Using reservations incurs charges, regardless of utilization.
            +       * *   The resources in the pool will consume the specified
            +       * reservation. Take this into account when setting the
            +       * pool size.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the reservationAffinity field is set. + */ + @java.lang.Override + public boolean hasReservationAffinity() { + return ((bitField0_ & 0x00000004) != 0); + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host getDefaultInstance() { - return DEFAULT_INSTANCE; - } + /** + * + * + *
            +       * Optional.
            +       * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +       * specifies a reservation that can be consumed to create VM
            +       * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +       * will only create VMs in the zone where the reservation is located.
            +       * This would affect availability since the service will no longer be
            +       * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +       * reservations in both zones that the config creates VMs in will ensure
            +       * higher availability.
            +       * **Important Considerations for Reservation Affinity:**
            +       *
            +       * *   This feature is intended for advanced users and requires
            +       * familiarity with Google Compute Engine reservations.
            +       * *   Using reservations incurs charges, regardless of utilization.
            +       * *   The resources in the pool will consume the specified
            +       * reservation. Take this into account when setting the
            +       * pool size.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The reservationAffinity. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + getReservationAffinity() { + return reservationAffinity_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.getDefaultInstance() + : reservationAffinity_; + } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public Host parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); - } - }; + /** + * + * + *
            +       * Optional.
            +       * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +       * specifies a reservation that can be consumed to create VM
            +       * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +       * will only create VMs in the zone where the reservation is located.
            +       * This would affect availability since the service will no longer be
            +       * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +       * reservations in both zones that the config creates VMs in will ensure
            +       * higher availability.
            +       * **Important Considerations for Reservation Affinity:**
            +       *
            +       * *   This feature is intended for advanced users and requires
            +       * familiarity with Google Compute Engine reservations.
            +       * *   Using reservations incurs charges, regardless of utilization.
            +       * *   The resources in the pool will consume the specified
            +       * reservation. Take this into account when setting the
            +       * pool size.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinityOrBuilder + getReservationAffinityOrBuilder() { + return reservationAffinity_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.getDefaultInstance() + : reservationAffinity_; + } - public static com.google.protobuf.Parser parser() { - return PARSER; - } + public static final int STARTUP_SCRIPT_URI_FIELD_NUMBER = 26; - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + @SuppressWarnings("serial") + private volatile java.lang.Object startupScriptUri_ = ""; - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + /** + * + * + *
            +       * Optional. Link to the startup script stored in Cloud Storage. This
            +       * script will be run on the host workstation VM when the VM is created.
            +       * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +       * specifying a startup script, the service account must have [Permission
            +       * to access the bucket and script file in Cloud
            +       * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +       * Otherwise, the script must be publicly accessible.
            +       * Note that the service regularly updates the OS version of the host VM,
            +       * and it is the responsibility of the user to ensure the script stays
            +       * compatible with the OS version.
            +       * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The startupScriptUri. + */ + @java.lang.Override + public java.lang.String getStartupScriptUri() { + java.lang.Object ref = startupScriptUri_; + 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(); + startupScriptUri_ = s; + return s; + } + } - public interface PersistentDirectoryOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) - com.google.protobuf.MessageOrBuilder { + /** + * + * + *
            +       * Optional. Link to the startup script stored in Cloud Storage. This
            +       * script will be run on the host workstation VM when the VM is created.
            +       * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +       * specifying a startup script, the service account must have [Permission
            +       * to access the bucket and script file in Cloud
            +       * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +       * Otherwise, the script must be publicly accessible.
            +       * Note that the service regularly updates the OS version of the host VM,
            +       * and it is the responsibility of the user to ensure the script stays
            +       * compatible with the OS version.
            +       * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for startupScriptUri. + */ + @java.lang.Override + public com.google.protobuf.ByteString getStartupScriptUriBytes() { + java.lang.Object ref = startupScriptUri_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + startupScriptUri_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - /** - * - * - *
            -     * A PersistentDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - * - * @return Whether the gcePd field is set. - */ - boolean hasGcePd(); + public static final int INSTANCE_METADATA_FIELD_NUMBER = 27; - /** - * - * - *
            -     * A PersistentDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - * - * @return The gcePd. - */ - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - getGcePd(); + private static final class InstanceMetadataDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_InstanceMetadataEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } - /** - * - * - *
            -     * A PersistentDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDiskOrBuilder - getGcePdOrBuilder(); + @SuppressWarnings("serial") + private com.google.protobuf.MapField instanceMetadata_; - /** - * - * - *
            -     * Optional. Location of this directory in the running workstation.
            -     * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The mountPath. - */ - java.lang.String getMountPath(); - - /** - * - * - *
            -     * Optional. Location of this directory in the running workstation.
            -     * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for mountPath. - */ - com.google.protobuf.ByteString getMountPathBytes(); - - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.DirectoryTypeCase - getDirectoryTypeCase(); - } - - /** - * - * - *
            -   * A directory to persist across workstation sessions.
            -   * 
            - * - * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory} - */ - public static final class PersistentDirectory extends com.google.protobuf.GeneratedMessage - implements - // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) - PersistentDirectoryOrBuilder { - private static final long serialVersionUID = 0L; - - static { - com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( - com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, - /* major= */ 4, - /* minor= */ 33, - /* patch= */ 2, - /* suffix= */ "", - "PersistentDirectory"); - } - - // Use PersistentDirectory.newBuilder() to construct. - private PersistentDirectory(com.google.protobuf.GeneratedMessage.Builder builder) { - super(builder); - } - - private PersistentDirectory() { - mountPath_ = ""; - } - - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder - .class); - } - - public interface GceRegionalPersistentDiskOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) - com.google.protobuf.MessageOrBuilder { - - /** - * - * - *
            -       * Optional. The GB capacity of a persistent home directory for each
            -       * workstation created with this configuration. Must be empty if
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -       * is set.
            -       *
            -       * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            -       * Defaults to `200`. If less than `200` GB, the
            -       * [disk_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            -       * must be
            -       * `"pd-balanced"` or `"pd-ssd"`.
            -       * 
            - * - * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The sizeGb. - */ - int getSizeGb(); - - /** - * - * - *
            -       * Optional. Type of file system that the disk should be formatted with.
            -       * The workstation image must support this file system type. Must be empty
            -       * if
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -       * is set. Defaults to `"ext4"`.
            -       * 
            - * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The fsType. - */ - java.lang.String getFsType(); - - /** - * - * - *
            -       * Optional. Type of file system that the disk should be formatted with.
            -       * The workstation image must support this file system type. Must be empty
            -       * if
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -       * is set. Defaults to `"ext4"`.
            -       * 
            - * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for fsType. - */ - com.google.protobuf.ByteString getFsTypeBytes(); + private com.google.protobuf.MapField + internalGetInstanceMetadata() { + if (instanceMetadata_ == null) { + return com.google.protobuf.MapField.emptyMapField( + InstanceMetadataDefaultEntryHolder.defaultEntry); + } + return instanceMetadata_; + } - /** - * - * - *
            -       * Optional. The [type of the persistent
            -       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -       * home directory. Defaults to `"pd-standard"`.
            -       * 
            - * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The diskType. - */ - java.lang.String getDiskType(); + public int getInstanceMetadataCount() { + return internalGetInstanceMetadata().getMap().size(); + } /** * * *
            -       * Optional. The [type of the persistent
            -       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -       * home directory. Defaults to `"pd-standard"`.
            +       * Optional. Custom metadata to apply to Compute Engine instances.
                    * 
            * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for diskType. + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * */ - com.google.protobuf.ByteString getDiskTypeBytes(); + @java.lang.Override + public boolean containsInstanceMetadata(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetInstanceMetadata().getMap().containsKey(key); + } - /** - * - * - *
            -       * Optional. Name of the snapshot to use as the source for the disk. If
            -       * set,
            -       * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -       * and
            -       * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -       * must be empty.
            -       * 
            - * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The sourceSnapshot. - */ - java.lang.String getSourceSnapshot(); + /** Use {@link #getInstanceMetadataMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getInstanceMetadata() { + return getInstanceMetadataMap(); + } /** * * *
            -       * Optional. Name of the snapshot to use as the source for the disk. If
            -       * set,
            -       * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -       * and
            -       * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -       * must be empty.
            +       * Optional. Custom metadata to apply to Compute Engine instances.
                    * 
            * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for sourceSnapshot. + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * */ - com.google.protobuf.ByteString getSourceSnapshotBytes(); + @java.lang.Override + public java.util.Map getInstanceMetadataMap() { + return internalGetInstanceMetadata().getMap(); + } /** * * *
            -       * Optional. Whether the persistent disk should be deleted when the
            -       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -       * Defaults to `DELETE`.
            +       * Optional. Custom metadata to apply to Compute Engine instances.
                    * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The enum numeric value on the wire for reclaimPolicy. */ - int getReclaimPolicyValue(); + @java.lang.Override + public /* nullable */ java.lang.String getInstanceMetadataOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = + internalGetInstanceMetadata().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } /** * * *
            -       * Optional. Whether the persistent disk should be deleted when the
            -       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -       * Defaults to `DELETE`.
            +       * Optional. Custom metadata to apply to Compute Engine instances.
                    * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The reclaimPolicy. */ - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy - getReclaimPolicy(); - } + @java.lang.Override + public java.lang.String getInstanceMetadataOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = + internalGetInstanceMetadata().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } - /** - * - * - *
            -     * A PersistentDirectory backed by a Compute Engine regional persistent
            -     * disk. The
            -     * [persistent_directories][google.cloud.workstations.v1beta.WorkstationConfig.persistent_directories]
            -     * field is repeated, but it may contain only one entry. It creates a
            -     * [persistent
            -     * disk](https://cloud.google.com/compute/docs/disks/persistent-disks) that
            -     * mounts to the workstation VM at `/home` when the session starts and
            -     * detaches when the session ends. If this field is empty, workstations
            -     * created with this configuration do not have a persistent home
            -     * directory.
            -     * 
            - * - * Protobuf type {@code - * google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk} - */ - public static final class GceRegionalPersistentDisk extends com.google.protobuf.GeneratedMessage - implements - // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) - GceRegionalPersistentDiskOrBuilder { - private static final long serialVersionUID = 0L; + private byte memoizedIsInitialized = -1; - static { - com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( - com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, - /* major= */ 4, - /* minor= */ 33, - /* patch= */ 2, - /* suffix= */ "", - "GceRegionalPersistentDisk"); - } - - // Use GceRegionalPersistentDisk.newBuilder() to construct. - private GceRegionalPersistentDisk(com.google.protobuf.GeneratedMessage.Builder builder) { - super(builder); - } - - private GceRegionalPersistentDisk() { - fsType_ = ""; - diskType_ = ""; - sourceSnapshot_ = ""; - reclaimPolicy_ = 0; - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor; + memoizedIsInitialized = 1; + return true; } @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.Builder.class); - } - - /** - * - * - *
            -       * Value representing what should happen to the disk after the workstation
            -       * is deleted.
            -       * 
            - * - * Protobuf enum {@code - * google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy} - */ - public enum ReclaimPolicy implements com.google.protobuf.ProtocolMessageEnum { - /** - * - * - *
            -         * Do not use.
            -         * 
            - * - * RECLAIM_POLICY_UNSPECIFIED = 0; - */ - RECLAIM_POLICY_UNSPECIFIED(0), - /** - * - * - *
            -         * Delete the persistent disk when deleting the workstation.
            -         * 
            - * - * DELETE = 1; - */ - DELETE(1), - /** - * - * - *
            -         * Keep the persistent disk when deleting the workstation.
            -         * An administrator must manually delete the disk.
            -         * 
            - * - * RETAIN = 2; - */ - RETAIN(2), - UNRECOGNIZED(-1), - ; - - static { - com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( - com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, - /* major= */ 4, - /* minor= */ 33, - /* patch= */ 2, - /* suffix= */ "", - "ReclaimPolicy"); + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(machineType_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, machineType_); } - - /** - * - * - *
            -         * Do not use.
            -         * 
            - * - * RECLAIM_POLICY_UNSPECIFIED = 0; - */ - public static final int RECLAIM_POLICY_UNSPECIFIED_VALUE = 0; - - /** - * - * - *
            -         * Delete the persistent disk when deleting the workstation.
            -         * 
            - * - * DELETE = 1; - */ - public static final int DELETE_VALUE = 1; - - /** - * - * - *
            -         * Keep the persistent disk when deleting the workstation.
            -         * An administrator must manually delete the disk.
            -         * 
            - * - * RETAIN = 2; - */ - public static final int RETAIN_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; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serviceAccount_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, serviceAccount_); } - - /** - * @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 ReclaimPolicy valueOf(int value) { - return forNumber(value); + for (int i = 0; i < serviceAccountScopes_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString( + output, 3, serviceAccountScopes_.getRaw(i)); } - - /** - * @param value The numeric wire value of the corresponding enum entry. - * @return The enum associated with the given numeric wire value. - */ - public static ReclaimPolicy forNumber(int value) { - switch (value) { - case 0: - return RECLAIM_POLICY_UNSPECIFIED; - case 1: - return DELETE; - case 2: - return RETAIN; - default: - return null; - } + for (int i = 0; i < tags_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString(output, 4, tags_.getRaw(i)); } - - public static com.google.protobuf.Internal.EnumLiteMap - internalGetValueMap() { - return internalValueMap; + if (poolSize_ != 0) { + output.writeInt32(5, poolSize_); } - - private static final com.google.protobuf.Internal.EnumLiteMap - internalValueMap = - new com.google.protobuf.Internal.EnumLiteMap() { - public ReclaimPolicy findValueByNumber(int number) { - return ReclaimPolicy.forNumber(number); - } - }; - - public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { - if (this == UNRECOGNIZED) { - throw new java.lang.IllegalStateException( - "Can't get the descriptor of an unrecognized enum value."); - } - return getDescriptor().getValues().get(ordinal()); + if (disablePublicIpAddresses_ != false) { + output.writeBool(6, disablePublicIpAddresses_); } - - public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { - return getDescriptor(); + if (enableNestedVirtualization_ != false) { + output.writeBool(7, enableNestedVirtualization_); } - - public static com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDescriptor() - .getEnumTypes() - .get(0); + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(8, getShieldedInstanceConfig()); } - - private static final ReclaimPolicy[] VALUES = values(); - - public static ReclaimPolicy valueOf( - com.google.protobuf.Descriptors.EnumValueDescriptor desc) { - if (desc.getType() != getDescriptor()) { - throw new java.lang.IllegalArgumentException( - "EnumValueDescriptor is not for this type."); - } - if (desc.getIndex() == -1) { - return UNRECOGNIZED; - } - return VALUES[desc.getIndex()]; + if (bootDiskSizeGb_ != 0) { + output.writeInt32(9, bootDiskSizeGb_); } - - private final int value; - - private ReclaimPolicy(int value) { - this.value = value; + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(10, getConfidentialInstanceConfig()); } - - // @@protoc_insertion_point(enum_scope:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy) + for (int i = 0; i < accelerators_.size(); i++) { + output.writeMessage(11, accelerators_.get(i)); + } + if (pooledInstances_ != 0) { + output.writeInt32(12, pooledInstances_); + } + if (disableSsh_ != false) { + output.writeBool(13, disableSsh_); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetVmTags(), VmTagsDefaultEntryHolder.defaultEntry, 14); + if (((bitField0_ & 0x00000004) != 0)) { + output.writeMessage(15, getReservationAffinity()); + } + for (int i = 0; i < boostConfigs_.size(); i++) { + output.writeMessage(25, boostConfigs_.get(i)); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(startupScriptUri_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 26, startupScriptUri_); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, + internalGetInstanceMetadata(), + InstanceMetadataDefaultEntryHolder.defaultEntry, + 27); + getUnknownFields().writeTo(output); } - public static final int SIZE_GB_FIELD_NUMBER = 1; - private int sizeGb_ = 0; + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - /** - * - * - *
            -       * Optional. The GB capacity of a persistent home directory for each
            -       * workstation created with this configuration. Must be empty if
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -       * is set.
            -       *
            -       * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            -       * Defaults to `200`. If less than `200` GB, the
            -       * [disk_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            -       * must be
            -       * `"pd-balanced"` or `"pd-ssd"`.
            -       * 
            - * - * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The sizeGb. - */ - @java.lang.Override - public int getSizeGb() { - return sizeGb_; + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(machineType_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, machineType_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serviceAccount_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, serviceAccount_); + } + { + int dataSize = 0; + for (int i = 0; i < serviceAccountScopes_.size(); i++) { + dataSize += computeStringSizeNoTag(serviceAccountScopes_.getRaw(i)); + } + size += dataSize; + size += 1 * getServiceAccountScopesList().size(); + } + { + int dataSize = 0; + for (int i = 0; i < tags_.size(); i++) { + dataSize += computeStringSizeNoTag(tags_.getRaw(i)); + } + size += dataSize; + size += 1 * getTagsList().size(); + } + if (poolSize_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(5, poolSize_); + } + if (disablePublicIpAddresses_ != false) { + size += + com.google.protobuf.CodedOutputStream.computeBoolSize(6, disablePublicIpAddresses_); + } + if (enableNestedVirtualization_ != false) { + size += + com.google.protobuf.CodedOutputStream.computeBoolSize(7, enableNestedVirtualization_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 8, getShieldedInstanceConfig()); + } + if (bootDiskSizeGb_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(9, bootDiskSizeGb_); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 10, getConfidentialInstanceConfig()); + } + for (int i = 0; i < accelerators_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(11, accelerators_.get(i)); + } + if (pooledInstances_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(12, pooledInstances_); + } + if (disableSsh_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(13, disableSsh_); + } + for (java.util.Map.Entry entry : + internalGetVmTags().getMap().entrySet()) { + com.google.protobuf.MapEntry vmTags__ = + VmTagsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, vmTags__); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 15, getReservationAffinity()); + } + for (int i = 0; i < boostConfigs_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(25, boostConfigs_.get(i)); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(startupScriptUri_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(26, startupScriptUri_); + } + for (java.util.Map.Entry entry : + internalGetInstanceMetadata().getMap().entrySet()) { + com.google.protobuf.MapEntry instanceMetadata__ = + InstanceMetadataDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(27, instanceMetadata__); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - public static final int FS_TYPE_FIELD_NUMBER = 2; - - @SuppressWarnings("serial") - private volatile java.lang.Object fsType_ = ""; - - /** - * - * - *
            -       * Optional. Type of file system that the disk should be formatted with.
            -       * The workstation image must support this file system type. Must be empty
            -       * if
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -       * is set. Defaults to `"ext4"`.
            -       * 
            - * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The fsType. - */ @java.lang.Override - public java.lang.String getFsType() { - java.lang.Object ref = fsType_; - 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(); - fsType_ = s; - return s; + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance other = + (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) obj; + + if (!getMachineType().equals(other.getMachineType())) return false; + if (!getServiceAccount().equals(other.getServiceAccount())) return false; + if (!getServiceAccountScopesList().equals(other.getServiceAccountScopesList())) + return false; + if (!getTagsList().equals(other.getTagsList())) return false; + if (getPoolSize() != other.getPoolSize()) return false; + if (getPooledInstances() != other.getPooledInstances()) return false; + if (getDisablePublicIpAddresses() != other.getDisablePublicIpAddresses()) return false; + if (getEnableNestedVirtualization() != other.getEnableNestedVirtualization()) return false; + if (hasShieldedInstanceConfig() != other.hasShieldedInstanceConfig()) return false; + if (hasShieldedInstanceConfig()) { + if (!getShieldedInstanceConfig().equals(other.getShieldedInstanceConfig())) return false; + } + if (hasConfidentialInstanceConfig() != other.hasConfidentialInstanceConfig()) return false; + if (hasConfidentialInstanceConfig()) { + if (!getConfidentialInstanceConfig().equals(other.getConfidentialInstanceConfig())) + return false; } + if (getBootDiskSizeGb() != other.getBootDiskSizeGb()) return false; + if (!getAcceleratorsList().equals(other.getAcceleratorsList())) return false; + if (!getBoostConfigsList().equals(other.getBoostConfigsList())) return false; + if (getDisableSsh() != other.getDisableSsh()) return false; + if (!internalGetVmTags().equals(other.internalGetVmTags())) return false; + if (hasReservationAffinity() != other.hasReservationAffinity()) return false; + if (hasReservationAffinity()) { + if (!getReservationAffinity().equals(other.getReservationAffinity())) return false; + } + if (!getStartupScriptUri().equals(other.getStartupScriptUri())) return false; + if (!internalGetInstanceMetadata().equals(other.internalGetInstanceMetadata())) + return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; } - /** - * - * - *
            -       * Optional. Type of file system that the disk should be formatted with.
            -       * The workstation image must support this file system type. Must be empty
            -       * if
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -       * is set. Defaults to `"ext4"`.
            -       * 
            - * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for fsType. - */ @java.lang.Override - public com.google.protobuf.ByteString getFsTypeBytes() { - java.lang.Object ref = fsType_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - fsType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + MACHINE_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getMachineType().hashCode(); + hash = (37 * hash) + SERVICE_ACCOUNT_FIELD_NUMBER; + hash = (53 * hash) + getServiceAccount().hashCode(); + if (getServiceAccountScopesCount() > 0) { + hash = (37 * hash) + SERVICE_ACCOUNT_SCOPES_FIELD_NUMBER; + hash = (53 * hash) + getServiceAccountScopesList().hashCode(); + } + if (getTagsCount() > 0) { + hash = (37 * hash) + TAGS_FIELD_NUMBER; + hash = (53 * hash) + getTagsList().hashCode(); + } + hash = (37 * hash) + POOL_SIZE_FIELD_NUMBER; + hash = (53 * hash) + getPoolSize(); + hash = (37 * hash) + POOLED_INSTANCES_FIELD_NUMBER; + hash = (53 * hash) + getPooledInstances(); + hash = (37 * hash) + DISABLE_PUBLIC_IP_ADDRESSES_FIELD_NUMBER; + hash = + (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDisablePublicIpAddresses()); + hash = (37 * hash) + ENABLE_NESTED_VIRTUALIZATION_FIELD_NUMBER; + hash = + (53 * hash) + com.google.protobuf.Internal.hashBoolean(getEnableNestedVirtualization()); + if (hasShieldedInstanceConfig()) { + hash = (37 * hash) + SHIELDED_INSTANCE_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getShieldedInstanceConfig().hashCode(); + } + if (hasConfidentialInstanceConfig()) { + hash = (37 * hash) + CONFIDENTIAL_INSTANCE_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getConfidentialInstanceConfig().hashCode(); + } + hash = (37 * hash) + BOOT_DISK_SIZE_GB_FIELD_NUMBER; + hash = (53 * hash) + getBootDiskSizeGb(); + if (getAcceleratorsCount() > 0) { + hash = (37 * hash) + ACCELERATORS_FIELD_NUMBER; + hash = (53 * hash) + getAcceleratorsList().hashCode(); + } + if (getBoostConfigsCount() > 0) { + hash = (37 * hash) + BOOST_CONFIGS_FIELD_NUMBER; + hash = (53 * hash) + getBoostConfigsList().hashCode(); + } + hash = (37 * hash) + DISABLE_SSH_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDisableSsh()); + if (!internalGetVmTags().getMap().isEmpty()) { + hash = (37 * hash) + VM_TAGS_FIELD_NUMBER; + hash = (53 * hash) + internalGetVmTags().hashCode(); + } + if (hasReservationAffinity()) { + hash = (37 * hash) + RESERVATION_AFFINITY_FIELD_NUMBER; + hash = (53 * hash) + getReservationAffinity().hashCode(); } + hash = (37 * hash) + STARTUP_SCRIPT_URI_FIELD_NUMBER; + hash = (53 * hash) + getStartupScriptUri().hashCode(); + if (!internalGetInstanceMetadata().getMap().isEmpty()) { + hash = (37 * hash) + INSTANCE_METADATA_FIELD_NUMBER; + hash = (53 * hash) + internalGetInstanceMetadata().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - public static final int DISK_TYPE_FIELD_NUMBER = 3; - - @SuppressWarnings("serial") - private volatile java.lang.Object diskType_ = ""; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - /** - * - * - *
            -       * Optional. The [type of the persistent
            -       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -       * home directory. Defaults to `"pd-standard"`.
            -       * 
            - * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The diskType. - */ - @java.lang.Override - public java.lang.String getDiskType() { - java.lang.Object ref = diskType_; - 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(); - diskType_ = s; - return s; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - /** - * - * - *
            -       * Optional. The [type of the persistent
            -       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -       * home directory. Defaults to `"pd-standard"`.
            -       * 
            - * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for diskType. - */ - @java.lang.Override - public com.google.protobuf.ByteString getDiskTypeBytes() { - java.lang.Object ref = diskType_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - diskType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - public static final int SOURCE_SNAPSHOT_FIELD_NUMBER = 5; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - @SuppressWarnings("serial") - private volatile java.lang.Object sourceSnapshot_ = ""; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - /** - * - * - *
            -       * Optional. Name of the snapshot to use as the source for the disk. If
            -       * set,
            -       * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -       * and
            -       * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -       * must be empty.
            -       * 
            - * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The sourceSnapshot. - */ - @java.lang.Override - public java.lang.String getSourceSnapshot() { - java.lang.Object ref = sourceSnapshot_; - 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(); - sourceSnapshot_ = s; - return s; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + 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.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + 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.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - /** - * - * - *
            -       * Optional. Name of the snapshot to use as the source for the disk. If
            -       * set,
            -       * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -       * and
            -       * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -       * must be empty.
            -       * 
            - * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for sourceSnapshot. - */ @java.lang.Override - public com.google.protobuf.ByteString getSourceSnapshotBytes() { - java.lang.Object ref = sourceSnapshot_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - sourceSnapshot_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public Builder newBuilderForType() { + return newBuilder(); } - public static final int RECLAIM_POLICY_FIELD_NUMBER = 4; - private int reclaimPolicy_ = 0; + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - /** - * - * - *
            -       * Optional. Whether the persistent disk should be deleted when the
            -       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -       * Defaults to `DELETE`.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The enum numeric value on the wire for reclaimPolicy. - */ @java.lang.Override - public int getReclaimPolicyValue() { - return reclaimPolicy_; + 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; } /** * * *
            -       * Optional. Whether the persistent disk should be deleted when the
            -       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -       * Defaults to `DELETE`.
            +       * A runtime using a Compute Engine instance.
                    * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The reclaimPolicy. + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance} */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy - getReclaimPolicy() { - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy - result = - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy.forNumber(reclaimPolicy_); - return result == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy.UNRECOGNIZED - : result; - } + public static final class Builder + extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstanceOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_descriptor; + } - private byte memoizedIsInitialized = -1; + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 14: + return internalGetVmTags(); + case 27: + return internalGetInstanceMetadata(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor + internalGetMutableMapFieldReflection(int number) { + switch (number) { + case 14: + return internalGetMutableVmTags(); + case 27: + return internalGetMutableInstanceMetadata(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } - memoizedIsInitialized = 1; - return true; - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Builder + .class); + } - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (sizeGb_ != 0) { - output.writeInt32(1, sizeGb_); + // Construct using + // com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fsType_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, fsType_); + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(diskType_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 3, diskType_); + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetShieldedInstanceConfigFieldBuilder(); + internalGetConfidentialInstanceConfigFieldBuilder(); + internalGetAcceleratorsFieldBuilder(); + internalGetBoostConfigsFieldBuilder(); + internalGetReservationAffinityFieldBuilder(); + } } - if (reclaimPolicy_ - != com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy.RECLAIM_POLICY_UNSPECIFIED - .getNumber()) { - output.writeEnum(4, reclaimPolicy_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 5, sourceSnapshot_); - } - getUnknownFields().writeTo(output); - } - - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - size = 0; - if (sizeGb_ != 0) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, sizeGb_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fsType_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(2, fsType_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(diskType_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(3, diskType_); - } - if (reclaimPolicy_ - != com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy.RECLAIM_POLICY_UNSPECIFIED - .getNumber()) { - size += com.google.protobuf.CodedOutputStream.computeEnumSize(4, reclaimPolicy_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(5, sourceSnapshot_); + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + machineType_ = ""; + serviceAccount_ = ""; + serviceAccountScopes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + tags_ = com.google.protobuf.LazyStringArrayList.emptyList(); + poolSize_ = 0; + pooledInstances_ = 0; + disablePublicIpAddresses_ = false; + enableNestedVirtualization_ = false; + shieldedInstanceConfig_ = null; + if (shieldedInstanceConfigBuilder_ != null) { + shieldedInstanceConfigBuilder_.dispose(); + shieldedInstanceConfigBuilder_ = null; + } + confidentialInstanceConfig_ = null; + if (confidentialInstanceConfigBuilder_ != null) { + confidentialInstanceConfigBuilder_.dispose(); + confidentialInstanceConfigBuilder_ = null; + } + bootDiskSizeGb_ = 0; + if (acceleratorsBuilder_ == null) { + accelerators_ = java.util.Collections.emptyList(); + } else { + accelerators_ = null; + acceleratorsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000800); + if (boostConfigsBuilder_ == null) { + boostConfigs_ = java.util.Collections.emptyList(); + } else { + boostConfigs_ = null; + boostConfigsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00001000); + disableSsh_ = false; + internalGetMutableVmTags().clear(); + reservationAffinity_ = null; + if (reservationAffinityBuilder_ != null) { + reservationAffinityBuilder_.dispose(); + reservationAffinityBuilder_ = null; + } + startupScriptUri_ = ""; + internalGetMutableInstanceMetadata().clear(); + return this; } - 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.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk)) { - return super.equals(obj); + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_descriptor; } - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - other = - (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - obj; - if (getSizeGb() != other.getSizeGb()) return false; - if (!getFsType().equals(other.getFsType())) return false; - if (!getDiskType().equals(other.getDiskType())) return false; - if (!getSourceSnapshot().equals(other.getSourceSnapshot())) return false; - if (reclaimPolicy_ != other.reclaimPolicy_) return false; - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .getDefaultInstance(); + } - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance build() { + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + SIZE_GB_FIELD_NUMBER; - hash = (53 * hash) + getSizeGb(); - hash = (37 * hash) + FS_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getFsType().hashCode(); - hash = (37 * hash) + DISK_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getDiskType().hashCode(); - hash = (37 * hash) + SOURCE_SNAPSHOT_FIELD_NUMBER; - hash = (53 * hash) + getSourceSnapshot().hashCode(); - hash = (37 * hash) + RECLAIM_POLICY_FIELD_NUMBER; - hash = (53 * hash) + reclaimPolicy_; - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance result = + new com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + private void buildPartialRepeatedFields( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance result) { + if (acceleratorsBuilder_ == null) { + if (((bitField0_ & 0x00000800) != 0)) { + accelerators_ = java.util.Collections.unmodifiableList(accelerators_); + bitField0_ = (bitField0_ & ~0x00000800); + } + result.accelerators_ = accelerators_; + } else { + result.accelerators_ = acceleratorsBuilder_.build(); + } + if (boostConfigsBuilder_ == null) { + if (((bitField0_ & 0x00001000) != 0)) { + boostConfigs_ = java.util.Collections.unmodifiableList(boostConfigs_); + bitField0_ = (bitField0_ & ~0x00001000); + } + result.boostConfigs_ = boostConfigs_; + } else { + result.boostConfigs_ = boostConfigsBuilder_.build(); + } + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom(com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.machineType_ = machineType_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.serviceAccount_ = serviceAccount_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + serviceAccountScopes_.makeImmutable(); + result.serviceAccountScopes_ = serviceAccountScopes_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + tags_.makeImmutable(); + result.tags_ = tags_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.poolSize_ = poolSize_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.pooledInstances_ = pooledInstances_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.disablePublicIpAddresses_ = disablePublicIpAddresses_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.enableNestedVirtualization_ = enableNestedVirtualization_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000100) != 0)) { + result.shieldedInstanceConfig_ = + shieldedInstanceConfigBuilder_ == null + ? shieldedInstanceConfig_ + : shieldedInstanceConfigBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.confidentialInstanceConfig_ = + confidentialInstanceConfigBuilder_ == null + ? confidentialInstanceConfig_ + : confidentialInstanceConfigBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.bootDiskSizeGb_ = bootDiskSizeGb_; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.disableSsh_ = disableSsh_; + } + if (((from_bitField0_ & 0x00004000) != 0)) { + result.vmTags_ = internalGetVmTags(); + result.vmTags_.makeImmutable(); + } + if (((from_bitField0_ & 0x00008000) != 0)) { + result.reservationAffinity_ = + reservationAffinityBuilder_ == null + ? reservationAffinity_ + : reservationAffinityBuilder_.build(); + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00010000) != 0)) { + result.startupScriptUri_ = startupScriptUri_; + } + if (((from_bitField0_ & 0x00020000) != 0)) { + result.instanceMetadata_ = internalGetInstanceMetadata(); + result.instanceMetadata_.makeImmutable(); + } + result.bitField0_ |= to_bitField0_; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - 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.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - 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.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - 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.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - 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.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - 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 PersistentDirectory backed by a Compute Engine regional persistent
            -       * disk. The
            -       * [persistent_directories][google.cloud.workstations.v1beta.WorkstationConfig.persistent_directories]
            -       * field is repeated, but it may contain only one entry. It creates a
            -       * [persistent
            -       * disk](https://cloud.google.com/compute/docs/disks/persistent-disks) that
            -       * mounts to the workstation VM at `/home` when the session starts and
            -       * detaches when the session ends. If this field is empty, workstations
            -       * created with this configuration do not have a persistent home
            -       * directory.
            -       * 
            - * - * Protobuf type {@code - * google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk} - */ - public static final class Builder - extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDiskOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.Builder.class); - } - - // Construct using - // com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.newBuilder() - private Builder() {} - - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - } - - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - sizeGb_ = 0; - fsType_ = ""; - diskType_ = ""; - sourceSnapshot_ = ""; - reclaimPolicy_ = 0; - return this; - } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor; - } - - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - getDefaultInstanceForType() { - return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance(); - } - - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - build() { - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } - - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - buildPartial() { - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - result = - new com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; - } - - private void buildPartial0( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.sizeGb_ = sizeGb_; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.fsType_ = fsType_; - } - if (((from_bitField0_ & 0x00000004) != 0)) { - result.diskType_ = diskType_; - } - if (((from_bitField0_ & 0x00000008) != 0)) { - result.sourceSnapshot_ = sourceSnapshot_; - } - if (((from_bitField0_ & 0x00000010) != 0)) { - result.reclaimPolicy_ = reclaimPolicy_; - } - } - - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other - instanceof - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) { - return mergeFrom( - (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - other); - } else { - super.mergeFrom(other); - return this; - } - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) other); + } else { + super.mergeFrom(other); + return this; + } + } public Builder mergeFrom( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - other) { + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance other) { if (other - == com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance()) return this; - if (other.getSizeGb() != 0) { - setSizeGb(other.getSizeGb()); + == com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .getDefaultInstance()) return this; + if (!other.getMachineType().isEmpty()) { + machineType_ = other.machineType_; + bitField0_ |= 0x00000001; + onChanged(); } - if (!other.getFsType().isEmpty()) { - fsType_ = other.fsType_; + if (!other.getServiceAccount().isEmpty()) { + serviceAccount_ = other.serviceAccount_; bitField0_ |= 0x00000002; onChanged(); } - if (!other.getDiskType().isEmpty()) { - diskType_ = other.diskType_; - bitField0_ |= 0x00000004; + if (!other.serviceAccountScopes_.isEmpty()) { + if (serviceAccountScopes_.isEmpty()) { + serviceAccountScopes_ = other.serviceAccountScopes_; + bitField0_ |= 0x00000004; + } else { + ensureServiceAccountScopesIsMutable(); + serviceAccountScopes_.addAll(other.serviceAccountScopes_); + } onChanged(); } - if (!other.getSourceSnapshot().isEmpty()) { - sourceSnapshot_ = other.sourceSnapshot_; - bitField0_ |= 0x00000008; + if (!other.tags_.isEmpty()) { + if (tags_.isEmpty()) { + tags_ = other.tags_; + bitField0_ |= 0x00000008; + } else { + ensureTagsIsMutable(); + tags_.addAll(other.tags_); + } onChanged(); } - if (other.reclaimPolicy_ != 0) { - setReclaimPolicyValue(other.getReclaimPolicyValue()); + if (other.getPoolSize() != 0) { + setPoolSize(other.getPoolSize()); + } + if (other.getPooledInstances() != 0) { + setPooledInstances(other.getPooledInstances()); + } + if (other.getDisablePublicIpAddresses() != false) { + setDisablePublicIpAddresses(other.getDisablePublicIpAddresses()); + } + if (other.getEnableNestedVirtualization() != false) { + setEnableNestedVirtualization(other.getEnableNestedVirtualization()); + } + if (other.hasShieldedInstanceConfig()) { + mergeShieldedInstanceConfig(other.getShieldedInstanceConfig()); + } + if (other.hasConfidentialInstanceConfig()) { + mergeConfidentialInstanceConfig(other.getConfidentialInstanceConfig()); + } + if (other.getBootDiskSizeGb() != 0) { + setBootDiskSizeGb(other.getBootDiskSizeGb()); + } + if (acceleratorsBuilder_ == null) { + if (!other.accelerators_.isEmpty()) { + if (accelerators_.isEmpty()) { + accelerators_ = other.accelerators_; + bitField0_ = (bitField0_ & ~0x00000800); + } else { + ensureAcceleratorsIsMutable(); + accelerators_.addAll(other.accelerators_); + } + onChanged(); + } + } else { + if (!other.accelerators_.isEmpty()) { + if (acceleratorsBuilder_.isEmpty()) { + acceleratorsBuilder_.dispose(); + acceleratorsBuilder_ = null; + accelerators_ = other.accelerators_; + bitField0_ = (bitField0_ & ~0x00000800); + acceleratorsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetAcceleratorsFieldBuilder() + : null; + } else { + acceleratorsBuilder_.addAllMessages(other.accelerators_); + } + } + } + if (boostConfigsBuilder_ == null) { + if (!other.boostConfigs_.isEmpty()) { + if (boostConfigs_.isEmpty()) { + boostConfigs_ = other.boostConfigs_; + bitField0_ = (bitField0_ & ~0x00001000); + } else { + ensureBoostConfigsIsMutable(); + boostConfigs_.addAll(other.boostConfigs_); + } + onChanged(); + } + } else { + if (!other.boostConfigs_.isEmpty()) { + if (boostConfigsBuilder_.isEmpty()) { + boostConfigsBuilder_.dispose(); + boostConfigsBuilder_ = null; + boostConfigs_ = other.boostConfigs_; + bitField0_ = (bitField0_ & ~0x00001000); + boostConfigsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetBoostConfigsFieldBuilder() + : null; + } else { + boostConfigsBuilder_.addAllMessages(other.boostConfigs_); + } + } + } + if (other.getDisableSsh() != false) { + setDisableSsh(other.getDisableSsh()); + } + internalGetMutableVmTags().mergeFrom(other.internalGetVmTags()); + bitField0_ |= 0x00004000; + if (other.hasReservationAffinity()) { + mergeReservationAffinity(other.getReservationAffinity()); } + if (!other.getStartupScriptUri().isEmpty()) { + startupScriptUri_ = other.startupScriptUri_; + bitField0_ |= 0x00010000; + onChanged(); + } + internalGetMutableInstanceMetadata().mergeFrom(other.internalGetInstanceMetadata()); + bitField0_ |= 0x00020000; this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -8631,36 +9750,157 @@ public Builder mergeFrom( case 0: done = true; break; - case 8: + case 10: { - sizeGb_ = input.readInt32(); + machineType_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000001; break; - } // case 8 + } // case 10 case 18: { - fsType_ = input.readStringRequireUtf8(); + serviceAccount_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000002; break; } // case 18 case 26: { - diskType_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000004; + java.lang.String s = input.readStringRequireUtf8(); + ensureServiceAccountScopesIsMutable(); + serviceAccountScopes_.add(s); break; } // case 26 - case 32: + case 34: { - reclaimPolicy_ = input.readEnum(); + java.lang.String s = input.readStringRequireUtf8(); + ensureTagsIsMutable(); + tags_.add(s); + break; + } // case 34 + case 40: + { + poolSize_ = input.readInt32(); bitField0_ |= 0x00000010; break; - } // case 32 - case 42: + } // case 40 + case 48: { - sourceSnapshot_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000008; + disablePublicIpAddresses_ = input.readBool(); + bitField0_ |= 0x00000040; break; - } // case 42 + } // case 48 + case 56: + { + enableNestedVirtualization_ = input.readBool(); + bitField0_ |= 0x00000080; + break; + } // case 56 + case 66: + { + input.readMessage( + internalGetShieldedInstanceConfigFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000100; + break; + } // case 66 + case 72: + { + bootDiskSizeGb_ = input.readInt32(); + bitField0_ |= 0x00000400; + break; + } // case 72 + case 82: + { + input.readMessage( + internalGetConfidentialInstanceConfigFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000200; + break; + } // case 82 + case 90: + { + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator + m = + input.readMessage( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host + .GceInstance.Accelerator.parser(), + extensionRegistry); + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.add(m); + } else { + acceleratorsBuilder_.addMessage(m); + } + break; + } // case 90 + case 96: + { + pooledInstances_ = input.readInt32(); + bitField0_ |= 0x00000020; + break; + } // case 96 + case 104: + { + disableSsh_ = input.readBool(); + bitField0_ |= 0x00002000; + break; + } // case 104 + case 114: + { + com.google.protobuf.MapEntry vmTags__ = + input.readMessage( + VmTagsDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableVmTags() + .getMutableMap() + .put(vmTags__.getKey(), vmTags__.getValue()); + bitField0_ |= 0x00004000; + break; + } // case 114 + case 122: + { + input.readMessage( + internalGetReservationAffinityFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00008000; + break; + } // case 122 + case 202: + { + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig + m = + input.readMessage( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host + .GceInstance.BoostConfig.parser(), + extensionRegistry); + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.add(m); + } else { + boostConfigsBuilder_.addMessage(m); + } + break; + } // case 202 + case 210: + { + startupScriptUri_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00010000; + break; + } // case 210 + case 218: + { + com.google.protobuf.MapEntry + instanceMetadata__ = + input.readMessage( + InstanceMetadataDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableInstanceMetadata() + .getMutableMap() + .put(instanceMetadata__.getKey(), instanceMetadata__.getValue()); + bitField0_ |= 0x00020000; + break; + } // case 218 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -8680,112 +9920,174 @@ public Builder mergeFrom( private int bitField0_; - private int sizeGb_; + private java.lang.Object machineType_ = ""; /** * * *
            -         * Optional. The GB capacity of a persistent home directory for each
            -         * workstation created with this configuration. Must be empty if
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set.
            -         *
            -         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            -         * Defaults to `200`. If less than `200` GB, the
            -         * [disk_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            -         * must be
            -         * `"pd-balanced"` or `"pd-ssd"`.
            +         * Optional. The type of machine to use for VM instances—for example,
            +         * `"e2-standard-4"`. For more information about machine types that
            +         * Cloud Workstations supports, see the list of
            +         * [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
                      * 
            * - * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The sizeGb. + * @return The machineType. */ - @java.lang.Override - public int getSizeGb() { - return sizeGb_; + public java.lang.String getMachineType() { + java.lang.Object ref = machineType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + machineType_ = s; + return s; + } else { + return (java.lang.String) ref; + } } /** * * *
            -         * Optional. The GB capacity of a persistent home directory for each
            -         * workstation created with this configuration. Must be empty if
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set.
            -         *
            -         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            -         * Defaults to `200`. If less than `200` GB, the
            -         * [disk_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            -         * must be
            -         * `"pd-balanced"` or `"pd-ssd"`.
            +         * Optional. The type of machine to use for VM instances—for example,
            +         * `"e2-standard-4"`. For more information about machine types that
            +         * Cloud Workstations supports, see the list of
            +         * [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
                      * 
            * - * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The sizeGb to set. - * @return This builder for chaining. + * @return The bytes for machineType. */ - public Builder setSizeGb(int value) { - - sizeGb_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; + public com.google.protobuf.ByteString getMachineTypeBytes() { + java.lang.Object ref = machineType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + machineType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } /** * * *
            -         * Optional. The GB capacity of a persistent home directory for each
            -         * workstation created with this configuration. Must be empty if
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set.
            +         * Optional. The type of machine to use for VM instances—for example,
            +         * `"e2-standard-4"`. For more information about machine types that
            +         * Cloud Workstations supports, see the list of
            +         * [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * 
            * - * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`. - * Defaults to `200`. If less than `200` GB, the - * [disk_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type] - * must be - * `"pd-balanced"` or `"pd-ssd"`. + * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The machineType to set. + * @return This builder for chaining. + */ + public Builder setMachineType(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + machineType_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. The type of machine to use for VM instances—for example,
            +         * `"e2-standard-4"`. For more information about machine types that
            +         * Cloud Workstations supports, see the list of
            +         * [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
                      * 
            * - * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; * * @return This builder for chaining. */ - public Builder clearSizeGb() { + public Builder clearMachineType() { + machineType_ = getDefaultInstance().getMachineType(); bitField0_ = (bitField0_ & ~0x00000001); - sizeGb_ = 0; onChanged(); return this; } - private java.lang.Object fsType_ = ""; + /** + * + * + *
            +         * Optional. The type of machine to use for VM instances—for example,
            +         * `"e2-standard-4"`. For more information about machine types that
            +         * Cloud Workstations supports, see the list of
            +         * [available machine
            +         * types](https://cloud.google.com/workstations/docs/available-machine-types).
            +         * 
            + * + * string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for machineType to set. + * @return This builder for chaining. + */ + public Builder setMachineTypeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + machineType_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object serviceAccount_ = ""; /** * * *
            -         * Optional. Type of file system that the disk should be formatted with.
            -         * The workstation image must support this file system type. Must be empty
            -         * if
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set. Defaults to `"ext4"`.
            +         * Optional. The email address of the service account for Cloud
            +         * Workstations VMs created with this configuration. When specified, be
            +         * sure that the service account has `logging.logEntries.create` and
            +         * `monitoring.timeSeries.create` permissions on the project so it can
            +         * write logs out to Cloud Logging. If using a custom container image, the
            +         * service account must have [Artifact Registry
            +         * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +         * permission to pull the specified image.
            +         *
            +         * If you as the administrator want to be able to `ssh` into the
            +         * underlying VM, you need to set this value to a service account
            +         * for which you have the `iam.serviceAccounts.actAs` permission.
            +         * Conversely, if you don't want anyone to be able to `ssh` into the
            +         * underlying VM, use a service account where no one has that
            +         * permission.
            +         *
            +         * If not set, VMs run with a service account provided by the
            +         * Cloud Workstations service, and the image must be publicly
            +         * accessible.
                      * 
            * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The fsType. + * @return The serviceAccount. */ - public java.lang.String getFsType() { - java.lang.Object ref = fsType_; + public java.lang.String getServiceAccount() { + java.lang.Object ref = serviceAccount_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); - fsType_ = s; + serviceAccount_ = s; return s; } else { return (java.lang.String) ref; @@ -8796,23 +10098,37 @@ public java.lang.String getFsType() { * * *
            -         * Optional. Type of file system that the disk should be formatted with.
            -         * The workstation image must support this file system type. Must be empty
            -         * if
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set. Defaults to `"ext4"`.
            +         * Optional. The email address of the service account for Cloud
            +         * Workstations VMs created with this configuration. When specified, be
            +         * sure that the service account has `logging.logEntries.create` and
            +         * `monitoring.timeSeries.create` permissions on the project so it can
            +         * write logs out to Cloud Logging. If using a custom container image, the
            +         * service account must have [Artifact Registry
            +         * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +         * permission to pull the specified image.
            +         *
            +         * If you as the administrator want to be able to `ssh` into the
            +         * underlying VM, you need to set this value to a service account
            +         * for which you have the `iam.serviceAccounts.actAs` permission.
            +         * Conversely, if you don't want anyone to be able to `ssh` into the
            +         * underlying VM, use a service account where no one has that
            +         * permission.
            +         *
            +         * If not set, VMs run with a service account provided by the
            +         * Cloud Workstations service, and the image must be publicly
            +         * accessible.
                      * 
            * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The bytes for fsType. + * @return The bytes for serviceAccount. */ - public com.google.protobuf.ByteString getFsTypeBytes() { - java.lang.Object ref = fsType_; + public com.google.protobuf.ByteString getServiceAccountBytes() { + java.lang.Object ref = serviceAccount_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - fsType_ = b; + serviceAccount_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; @@ -8823,23 +10139,37 @@ public com.google.protobuf.ByteString getFsTypeBytes() { * * *
            -         * Optional. Type of file system that the disk should be formatted with.
            -         * The workstation image must support this file system type. Must be empty
            -         * if
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set. Defaults to `"ext4"`.
            +         * Optional. The email address of the service account for Cloud
            +         * Workstations VMs created with this configuration. When specified, be
            +         * sure that the service account has `logging.logEntries.create` and
            +         * `monitoring.timeSeries.create` permissions on the project so it can
            +         * write logs out to Cloud Logging. If using a custom container image, the
            +         * service account must have [Artifact Registry
            +         * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +         * permission to pull the specified image.
            +         *
            +         * If you as the administrator want to be able to `ssh` into the
            +         * underlying VM, you need to set this value to a service account
            +         * for which you have the `iam.serviceAccounts.actAs` permission.
            +         * Conversely, if you don't want anyone to be able to `ssh` into the
            +         * underlying VM, use a service account where no one has that
            +         * permission.
            +         *
            +         * If not set, VMs run with a service account provided by the
            +         * Cloud Workstations service, and the image must be publicly
            +         * accessible.
                      * 
            * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The fsType to set. + * @param value The serviceAccount to set. * @return This builder for chaining. */ - public Builder setFsType(java.lang.String value) { + public Builder setServiceAccount(java.lang.String value) { if (value == null) { throw new NullPointerException(); } - fsType_ = value; + serviceAccount_ = value; bitField0_ |= 0x00000002; onChanged(); return this; @@ -8849,19 +10179,33 @@ public Builder setFsType(java.lang.String value) { * * *
            -         * Optional. Type of file system that the disk should be formatted with.
            -         * The workstation image must support this file system type. Must be empty
            -         * if
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set. Defaults to `"ext4"`.
            +         * Optional. The email address of the service account for Cloud
            +         * Workstations VMs created with this configuration. When specified, be
            +         * sure that the service account has `logging.logEntries.create` and
            +         * `monitoring.timeSeries.create` permissions on the project so it can
            +         * write logs out to Cloud Logging. If using a custom container image, the
            +         * service account must have [Artifact Registry
            +         * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +         * permission to pull the specified image.
            +         *
            +         * If you as the administrator want to be able to `ssh` into the
            +         * underlying VM, you need to set this value to a service account
            +         * for which you have the `iam.serviceAccounts.actAs` permission.
            +         * Conversely, if you don't want anyone to be able to `ssh` into the
            +         * underlying VM, use a service account where no one has that
            +         * permission.
            +         *
            +         * If not set, VMs run with a service account provided by the
            +         * Cloud Workstations service, and the image must be publicly
            +         * accessible.
                      * 
            * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; * * @return This builder for chaining. */ - public Builder clearFsType() { - fsType_ = getDefaultInstance().getFsType(); + public Builder clearServiceAccount() { + serviceAccount_ = getDefaultInstance().getServiceAccount(); bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; @@ -8871,231 +10215,215 @@ public Builder clearFsType() { * * *
            -         * Optional. Type of file system that the disk should be formatted with.
            -         * The workstation image must support this file system type. Must be empty
            -         * if
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            -         * is set. Defaults to `"ext4"`.
            +         * Optional. The email address of the service account for Cloud
            +         * Workstations VMs created with this configuration. When specified, be
            +         * sure that the service account has `logging.logEntries.create` and
            +         * `monitoring.timeSeries.create` permissions on the project so it can
            +         * write logs out to Cloud Logging. If using a custom container image, the
            +         * service account must have [Artifact Registry
            +         * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +         * permission to pull the specified image.
            +         *
            +         * If you as the administrator want to be able to `ssh` into the
            +         * underlying VM, you need to set this value to a service account
            +         * for which you have the `iam.serviceAccounts.actAs` permission.
            +         * Conversely, if you don't want anyone to be able to `ssh` into the
            +         * underlying VM, use a service account where no one has that
            +         * permission.
            +         *
            +         * If not set, VMs run with a service account provided by the
            +         * Cloud Workstations service, and the image must be publicly
            +         * accessible.
                      * 
            * - * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * string service_account = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The bytes for fsType to set. + * @param value The bytes for serviceAccount to set. * @return This builder for chaining. */ - public Builder setFsTypeBytes(com.google.protobuf.ByteString value) { + public Builder setServiceAccountBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); - fsType_ = value; + serviceAccount_ = value; bitField0_ |= 0x00000002; onChanged(); return this; } - private java.lang.Object diskType_ = ""; + private com.google.protobuf.LazyStringArrayList serviceAccountScopes_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureServiceAccountScopesIsMutable() { + if (!serviceAccountScopes_.isModifiable()) { + serviceAccountScopes_ = + new com.google.protobuf.LazyStringArrayList(serviceAccountScopes_); + } + bitField0_ |= 0x00000004; + } /** * * *
            -         * Optional. The [type of the persistent
            -         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -         * home directory. Defaults to `"pd-standard"`.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The diskType. + * @return A list containing the serviceAccountScopes. */ - public java.lang.String getDiskType() { - java.lang.Object ref = diskType_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - diskType_ = s; - return s; - } else { - return (java.lang.String) ref; - } + public com.google.protobuf.ProtocolStringList getServiceAccountScopesList() { + serviceAccountScopes_.makeImmutable(); + return serviceAccountScopes_; } /** * * *
            -         * Optional. The [type of the persistent
            -         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -         * home directory. Defaults to `"pd-standard"`.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The bytes for diskType. + * @return The count of serviceAccountScopes. */ - public com.google.protobuf.ByteString getDiskTypeBytes() { - java.lang.Object ref = diskType_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - diskType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public int getServiceAccountScopesCount() { + return serviceAccountScopes_.size(); } /** * * *
            -         * Optional. The [type of the persistent
            -         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -         * home directory. Defaults to `"pd-standard"`.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param value The diskType to set. - * @return This builder for chaining. + * @param index The index of the element to return. + * @return The serviceAccountScopes at the given index. */ - public Builder setDiskType(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - diskType_ = value; - bitField0_ |= 0x00000004; - onChanged(); - return this; + public java.lang.String getServiceAccountScopes(int index) { + return serviceAccountScopes_.get(index); } /** * * *
            -         * Optional. The [type of the persistent
            -         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -         * home directory. Defaults to `"pd-standard"`.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return This builder for chaining. + * @param index The index of the value to return. + * @return The bytes of the serviceAccountScopes at the given index. */ - public Builder clearDiskType() { - diskType_ = getDefaultInstance().getDiskType(); - bitField0_ = (bitField0_ & ~0x00000004); - onChanged(); - return this; + public com.google.protobuf.ByteString getServiceAccountScopesBytes(int index) { + return serviceAccountScopes_.getByteString(index); } /** * * *
            -         * Optional. The [type of the persistent
            -         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            -         * home directory. Defaults to `"pd-standard"`.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * - * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param value The bytes for diskType to set. + * @param index The index to set the value at. + * @param value The serviceAccountScopes to set. * @return This builder for chaining. */ - public Builder setDiskTypeBytes(com.google.protobuf.ByteString value) { + public Builder setServiceAccountScopes(int index, java.lang.String value) { if (value == null) { throw new NullPointerException(); } - checkByteStringIsUtf8(value); - diskType_ = value; + ensureServiceAccountScopesIsMutable(); + serviceAccountScopes_.set(index, value); bitField0_ |= 0x00000004; onChanged(); return this; } - private java.lang.Object sourceSnapshot_ = ""; - - /** - * - * - *
            -         * Optional. Name of the snapshot to use as the source for the disk. If
            -         * set,
            -         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -         * and
            -         * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -         * must be empty.
            -         * 
            - * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The sourceSnapshot. - */ - public java.lang.String getSourceSnapshot() { - java.lang.Object ref = sourceSnapshot_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - sourceSnapshot_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** * * *
            -         * Optional. Name of the snapshot to use as the source for the disk. If
            -         * set,
            -         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -         * and
            -         * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -         * must be empty.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The bytes for sourceSnapshot. + * @param value The serviceAccountScopes to add. + * @return This builder for chaining. */ - public com.google.protobuf.ByteString getSourceSnapshotBytes() { - java.lang.Object ref = sourceSnapshot_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - sourceSnapshot_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + public Builder addServiceAccountScopes(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } + ensureServiceAccountScopesIsMutable(); + serviceAccountScopes_.add(value); + bitField0_ |= 0x00000004; + onChanged(); + return this; } /** * * *
            -         * Optional. Name of the snapshot to use as the source for the disk. If
            -         * set,
            -         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -         * and
            -         * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -         * must be empty.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param value The sourceSnapshot to set. + * @param values The serviceAccountScopes to add. * @return This builder for chaining. */ - public Builder setSourceSnapshot(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - sourceSnapshot_ = value; - bitField0_ |= 0x00000008; + public Builder addAllServiceAccountScopes(java.lang.Iterable values) { + ensureServiceAccountScopesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, serviceAccountScopes_); + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -9104,21 +10432,22 @@ public Builder setSourceSnapshot(java.lang.String value) { * * *
            -         * Optional. Name of the snapshot to use as the source for the disk. If
            -         * set,
            -         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -         * and
            -         * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -         * must be empty.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * * @return This builder for chaining. */ - public Builder clearSourceSnapshot() { - sourceSnapshot_ = getDefaultInstance().getSourceSnapshot(); - bitField0_ = (bitField0_ & ~0x00000008); + public Builder clearServiceAccountScopes() { + serviceAccountScopes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + ; onChanged(); return this; } @@ -9127,130 +10456,154 @@ public Builder clearSourceSnapshot() { * * *
            -         * Optional. Name of the snapshot to use as the source for the disk. If
            -         * set,
            -         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            -         * and
            -         * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            -         * must be empty.
            +         * Optional. Scopes to grant to the
            +         * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
            +         * When specified, users of workstations under this configuration must
            +         * have `iam.serviceAccounts.actAs` on the service account.
                      * 
            * - * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param value The bytes for sourceSnapshot to set. + * @param value The bytes of the serviceAccountScopes to add. * @return This builder for chaining. */ - public Builder setSourceSnapshotBytes(com.google.protobuf.ByteString value) { + public Builder addServiceAccountScopesBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); - sourceSnapshot_ = value; - bitField0_ |= 0x00000008; + ensureServiceAccountScopesIsMutable(); + serviceAccountScopes_.add(value); + bitField0_ |= 0x00000004; onChanged(); return this; } - private int reclaimPolicy_ = 0; + private com.google.protobuf.LazyStringArrayList tags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureTagsIsMutable() { + if (!tags_.isModifiable()) { + tags_ = new com.google.protobuf.LazyStringArrayList(tags_); + } + bitField0_ |= 0x00000008; + } /** * * *
            -         * Optional. Whether the persistent disk should be deleted when the
            -         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -         * Defaults to `DELETE`.
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
                      * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; - * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The enum numeric value on the wire for reclaimPolicy. + * @return A list containing the tags. */ - @java.lang.Override - public int getReclaimPolicyValue() { - return reclaimPolicy_; + public com.google.protobuf.ProtocolStringList getTagsList() { + tags_.makeImmutable(); + return tags_; } /** * * *
            -         * Optional. Whether the persistent disk should be deleted when the
            -         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -         * Defaults to `DELETE`.
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
                      * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; - * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The enum numeric value on the wire for reclaimPolicy to set. - * @return This builder for chaining. + * @return The count of tags. */ - public Builder setReclaimPolicyValue(int value) { - reclaimPolicy_ = value; - bitField0_ |= 0x00000010; - onChanged(); - return this; + public int getTagsCount() { + return tags_.size(); } /** * * *
            -         * Optional. Whether the persistent disk should be deleted when the
            -         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -         * Defaults to `DELETE`.
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
                      * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; - * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The reclaimPolicy. + * @param index The index of the element to return. + * @return The tags at the given index. */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy - getReclaimPolicy() { - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy - result = - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy.forNumber(reclaimPolicy_); - return result == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy.UNRECOGNIZED - : result; + public java.lang.String getTags(int index) { + return tags_.get(index); } /** * * *
            -         * Optional. Whether the persistent disk should be deleted when the
            -         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -         * Defaults to `DELETE`.
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
                      * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; - * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The reclaimPolicy to set. + * @param index The index of the value to return. + * @return The bytes of the tags at the given index. + */ + public com.google.protobuf.ByteString getTagsBytes(int index) { + return tags_.getByteString(index); + } + + /** + * + * + *
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index to set the value at. + * @param value The tags to set. * @return This builder for chaining. */ - public Builder setReclaimPolicy( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.ReclaimPolicy - value) { + public Builder setTags(int index, java.lang.String value) { if (value == null) { throw new NullPointerException(); } - bitField0_ |= 0x00000010; - reclaimPolicy_ = value.getNumber(); + ensureTagsIsMutable(); + tags_.set(index, value); + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -9259,3211 +10612,4556 @@ public Builder setReclaimPolicy( * * *
            -         * Optional. Whether the persistent disk should be deleted when the
            -         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            -         * Defaults to `DELETE`.
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
                      * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; - * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; * + * @param value The tags to add. * @return This builder for chaining. */ - public Builder clearReclaimPolicy() { - bitField0_ = (bitField0_ & ~0x00000010); - reclaimPolicy_ = 0; + public Builder addTags(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureTagsIsMutable(); + tags_.add(value); + bitField0_ |= 0x00000008; onChanged(); return this; } - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) - } + /** + * + * + *
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param values The tags to add. + * @return This builder for chaining. + */ + public Builder addAllTags(java.lang.Iterable values) { + ensureTagsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, tags_); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) - private static final com.google.cloud.workstations.v1beta.WorkstationConfig - .PersistentDirectory.GceRegionalPersistentDisk - DEFAULT_INSTANCE; + /** + * + * + *
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearTags() { + tags_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + ; + onChanged(); + return this; + } - static { - DEFAULT_INSTANCE = - new com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk(); - } + /** + * + * + *
            +         * Optional. Network tags to add to the Compute Engine VMs backing the
            +         * workstations. This option applies
            +         * [network
            +         * tags](https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs
            +         * created with this configuration. These network tags enable the creation
            +         * of [firewall
            +         * rules](https://cloud.google.com/workstations/docs/configure-firewall-rules).
            +         * 
            + * + * repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes of the tags to add. + * @return This builder for chaining. + */ + public Builder addTagsBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureTagsIsMutable(); + tags_.add(value); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - getDefaultInstance() { - return DEFAULT_INSTANCE; - } + private int poolSize_; - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public GceRegionalPersistentDisk parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); - } - }; + /** + * + * + *
            +         * Optional. The number of VMs that the system should keep idle so that
            +         * new workstations can be started quickly for new users. Defaults to `0`
            +         * in the API.
            +         * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The poolSize. + */ + @java.lang.Override + public int getPoolSize() { + return poolSize_; + } - public static com.google.protobuf.Parser parser() { - return PARSER; - } + /** + * + * + *
            +         * Optional. The number of VMs that the system should keep idle so that
            +         * new workstations can be started quickly for new users. Defaults to `0`
            +         * in the API.
            +         * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The poolSize to set. + * @return This builder for chaining. + */ + public Builder setPoolSize(int value) { - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + poolSize_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } - - private int directoryTypeCase_ = 0; - - @SuppressWarnings("serial") - private java.lang.Object directoryType_; + /** + * + * + *
            +         * Optional. The number of VMs that the system should keep idle so that
            +         * new workstations can be started quickly for new users. Defaults to `0`
            +         * in the API.
            +         * 
            + * + * int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearPoolSize() { + bitField0_ = (bitField0_ & ~0x00000010); + poolSize_ = 0; + onChanged(); + return this; + } - public enum DirectoryTypeCase - implements - com.google.protobuf.Internal.EnumLite, - com.google.protobuf.AbstractMessage.InternalOneOfEnum { - GCE_PD(2), - DIRECTORYTYPE_NOT_SET(0); - private final int value; + private int pooledInstances_; - private DirectoryTypeCase(int value) { - this.value = value; - } + /** + * + * + *
            +         * Output only. Number of instances currently available in the pool for
            +         * faster workstation startup.
            +         * 
            + * + * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The pooledInstances. + */ + @java.lang.Override + public int getPooledInstances() { + return pooledInstances_; + } - /** - * @param value The number of the enum to look for. - * @return The enum associated with the given number. - * @deprecated Use {@link #forNumber(int)} instead. - */ - @java.lang.Deprecated - public static DirectoryTypeCase valueOf(int value) { - return forNumber(value); - } + /** + * + * + *
            +         * Output only. Number of instances currently available in the pool for
            +         * faster workstation startup.
            +         * 
            + * + * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The pooledInstances to set. + * @return This builder for chaining. + */ + public Builder setPooledInstances(int value) { - public static DirectoryTypeCase forNumber(int value) { - switch (value) { - case 2: - return GCE_PD; - case 0: - return DIRECTORYTYPE_NOT_SET; - default: - return null; + pooledInstances_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; } - } - public int getNumber() { - return this.value; - } - }; + /** + * + * + *
            +         * Output only. Number of instances currently available in the pool for
            +         * faster workstation startup.
            +         * 
            + * + * int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearPooledInstances() { + bitField0_ = (bitField0_ & ~0x00000020); + pooledInstances_ = 0; + onChanged(); + return this; + } - public DirectoryTypeCase getDirectoryTypeCase() { - return DirectoryTypeCase.forNumber(directoryTypeCase_); - } + private boolean disablePublicIpAddresses_; - public static final int GCE_PD_FIELD_NUMBER = 2; + /** + * + * + *
            +         * Optional. When set to true, disables public IP addresses for VMs. If
            +         * you disable public IP addresses, you must set up Private Google Access
            +         * or Cloud NAT on your network. If you use Private Google Access and you
            +         * use `private.googleapis.com` or `restricted.googleapis.com` for
            +         * Container Registry and Artifact Registry, make sure that you set
            +         * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            +         * Defaults to false (VMs have public IP addresses).
            +         * 
            + * + * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The disablePublicIpAddresses. + */ + @java.lang.Override + public boolean getDisablePublicIpAddresses() { + return disablePublicIpAddresses_; + } - /** - * - * - *
            -     * A PersistentDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - * - * @return Whether the gcePd field is set. - */ - @java.lang.Override - public boolean hasGcePd() { - return directoryTypeCase_ == 2; - } + /** + * + * + *
            +         * Optional. When set to true, disables public IP addresses for VMs. If
            +         * you disable public IP addresses, you must set up Private Google Access
            +         * or Cloud NAT on your network. If you use Private Google Access and you
            +         * use `private.googleapis.com` or `restricted.googleapis.com` for
            +         * Container Registry and Artifact Registry, make sure that you set
            +         * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            +         * Defaults to false (VMs have public IP addresses).
            +         * 
            + * + * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The disablePublicIpAddresses to set. + * @return This builder for chaining. + */ + public Builder setDisablePublicIpAddresses(boolean value) { - /** - * - * - *
            -     * A PersistentDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - * - * @return The gcePd. - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - getGcePd() { - if (directoryTypeCase_ == 2) { - return (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_; - } - return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance(); - } + disablePublicIpAddresses_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } - /** - * - * - *
            -     * A PersistentDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDiskOrBuilder - getGcePdOrBuilder() { - if (directoryTypeCase_ == 2) { - return (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_; - } - return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance(); - } + /** + * + * + *
            +         * Optional. When set to true, disables public IP addresses for VMs. If
            +         * you disable public IP addresses, you must set up Private Google Access
            +         * or Cloud NAT on your network. If you use Private Google Access and you
            +         * use `private.googleapis.com` or `restricted.googleapis.com` for
            +         * Container Registry and Artifact Registry, make sure that you set
            +         * up DNS records for domains `*.gcr.io` and `*.pkg.dev`.
            +         * Defaults to false (VMs have public IP addresses).
            +         * 
            + * + * bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearDisablePublicIpAddresses() { + bitField0_ = (bitField0_ & ~0x00000040); + disablePublicIpAddresses_ = false; + onChanged(); + return this; + } - public static final int MOUNT_PATH_FIELD_NUMBER = 1; + private boolean enableNestedVirtualization_; - @SuppressWarnings("serial") - private volatile java.lang.Object mountPath_ = ""; - - /** - * - * - *
            -     * Optional. Location of this directory in the running workstation.
            -     * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The mountPath. - */ - @java.lang.Override - public java.lang.String getMountPath() { - java.lang.Object ref = mountPath_; - 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(); - mountPath_ = s; - return s; - } - } + /** + * + * + *
            +         * Optional. Whether to enable nested virtualization on Cloud Workstations
            +         * VMs created using this workstation configuration.
            +         *
            +         * Defaults to false.
            +         *
            +         * Nested virtualization lets you run virtual machine (VM) instances
            +         * inside your workstation. Before enabling nested virtualization,
            +         * consider the following important considerations. Cloud Workstations
            +         * instances are subject to the [same restrictions as Compute Engine
            +         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +         *
            +         * * **Organization policy**: projects, folders, or
            +         * organizations may be restricted from creating nested VMs if the
            +         * **Disable VM nested virtualization** constraint is enforced in
            +         * the organization policy. For more information, see the
            +         * Compute Engine section,
            +         * [Checking whether nested virtualization is
            +         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +         * * **Performance**: nested VMs might experience a 10% or greater
            +         * decrease in performance for workloads that are CPU-bound and
            +         * possibly greater than a 10% decrease for workloads that are
            +         * input/output bound.
            +         * * **Machine Type**: nested virtualization can only be enabled on
            +         * workstation configurations that specify a
            +         * [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.machine_type]
            +         * in the N1 or N2 machine series.
            +         * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enableNestedVirtualization. + */ + @java.lang.Override + public boolean getEnableNestedVirtualization() { + return enableNestedVirtualization_; + } - /** - * - * - *
            -     * Optional. Location of this directory in the running workstation.
            -     * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for mountPath. - */ - @java.lang.Override - public com.google.protobuf.ByteString getMountPathBytes() { - java.lang.Object ref = mountPath_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - mountPath_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + /** + * + * + *
            +         * Optional. Whether to enable nested virtualization on Cloud Workstations
            +         * VMs created using this workstation configuration.
            +         *
            +         * Defaults to false.
            +         *
            +         * Nested virtualization lets you run virtual machine (VM) instances
            +         * inside your workstation. Before enabling nested virtualization,
            +         * consider the following important considerations. Cloud Workstations
            +         * instances are subject to the [same restrictions as Compute Engine
            +         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +         *
            +         * * **Organization policy**: projects, folders, or
            +         * organizations may be restricted from creating nested VMs if the
            +         * **Disable VM nested virtualization** constraint is enforced in
            +         * the organization policy. For more information, see the
            +         * Compute Engine section,
            +         * [Checking whether nested virtualization is
            +         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +         * * **Performance**: nested VMs might experience a 10% or greater
            +         * decrease in performance for workloads that are CPU-bound and
            +         * possibly greater than a 10% decrease for workloads that are
            +         * input/output bound.
            +         * * **Machine Type**: nested virtualization can only be enabled on
            +         * workstation configurations that specify a
            +         * [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.machine_type]
            +         * in the N1 or N2 machine series.
            +         * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The enableNestedVirtualization to set. + * @return This builder for chaining. + */ + public Builder setEnableNestedVirtualization(boolean value) { - private byte memoizedIsInitialized = -1; + enableNestedVirtualization_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + /** + * + * + *
            +         * Optional. Whether to enable nested virtualization on Cloud Workstations
            +         * VMs created using this workstation configuration.
            +         *
            +         * Defaults to false.
            +         *
            +         * Nested virtualization lets you run virtual machine (VM) instances
            +         * inside your workstation. Before enabling nested virtualization,
            +         * consider the following important considerations. Cloud Workstations
            +         * instances are subject to the [same restrictions as Compute Engine
            +         * instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions):
            +         *
            +         * * **Organization policy**: projects, folders, or
            +         * organizations may be restricted from creating nested VMs if the
            +         * **Disable VM nested virtualization** constraint is enforced in
            +         * the organization policy. For more information, see the
            +         * Compute Engine section,
            +         * [Checking whether nested virtualization is
            +         * allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed).
            +         * * **Performance**: nested VMs might experience a 10% or greater
            +         * decrease in performance for workloads that are CPU-bound and
            +         * possibly greater than a 10% decrease for workloads that are
            +         * input/output bound.
            +         * * **Machine Type**: nested virtualization can only be enabled on
            +         * workstation configurations that specify a
            +         * [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.machine_type]
            +         * in the N1 or N2 machine series.
            +         * 
            + * + * bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearEnableNestedVirtualization() { + bitField0_ = (bitField0_ & ~0x00000080); + enableNestedVirtualization_ = false; + onChanged(); + return this; + } - memoizedIsInitialized = 1; - return true; - } + private com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig + shieldedInstanceConfig_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfigOrBuilder> + shieldedInstanceConfigBuilder_; - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mountPath_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 1, mountPath_); - } - if (directoryTypeCase_ == 2) { - output.writeMessage( - 2, - (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_); - } - getUnknownFields().writeTo(output); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the shieldedInstanceConfig field is set. + */ + public boolean hasShieldedInstanceConfig() { + return ((bitField0_ & 0x00000100) != 0); + } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The shieldedInstanceConfig. + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig + getShieldedInstanceConfig() { + if (shieldedInstanceConfigBuilder_ == null) { + return shieldedInstanceConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.getDefaultInstance() + : shieldedInstanceConfig_; + } else { + return shieldedInstanceConfigBuilder_.getMessage(); + } + } - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mountPath_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, mountPath_); - } - if (directoryTypeCase_ == 2) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 2, - (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setShieldedInstanceConfig( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig + value) { + if (shieldedInstanceConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + shieldedInstanceConfig_ = value; + } else { + shieldedInstanceConfigBuilder_.setMessage(value); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj - instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory other = - (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) obj; + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setShieldedInstanceConfig( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.Builder + builderForValue) { + if (shieldedInstanceConfigBuilder_ == null) { + shieldedInstanceConfig_ = builderForValue.build(); + } else { + shieldedInstanceConfigBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } - if (!getMountPath().equals(other.getMountPath())) return false; - if (!getDirectoryTypeCase().equals(other.getDirectoryTypeCase())) return false; - switch (directoryTypeCase_) { - case 2: - if (!getGcePd().equals(other.getGcePd())) return false; - break; - case 0: - default: - } - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeShieldedInstanceConfig( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig + value) { + if (shieldedInstanceConfigBuilder_ == null) { + if (((bitField0_ & 0x00000100) != 0) + && shieldedInstanceConfig_ != null + && shieldedInstanceConfig_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.getDefaultInstance()) { + getShieldedInstanceConfigBuilder().mergeFrom(value); + } else { + shieldedInstanceConfig_ = value; + } + } else { + shieldedInstanceConfigBuilder_.mergeFrom(value); + } + if (shieldedInstanceConfig_ != null) { + bitField0_ |= 0x00000100; + onChanged(); + } + return this; + } - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; - } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + MOUNT_PATH_FIELD_NUMBER; - hash = (53 * hash) + getMountPath().hashCode(); - switch (directoryTypeCase_) { - case 2: - hash = (37 * hash) + GCE_PD_FIELD_NUMBER; - hash = (53 * hash) + getGcePd().hashCode(); - break; - case 0: - default: - } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearShieldedInstanceConfig() { + bitField0_ = (bitField0_ & ~0x00000100); + shieldedInstanceConfig_ = null; + if (shieldedInstanceConfigBuilder_ != null) { + shieldedInstanceConfigBuilder_.dispose(); + shieldedInstanceConfigBuilder_ = null; + } + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.Builder + getShieldedInstanceConfigBuilder() { + bitField0_ |= 0x00000100; + onChanged(); + return internalGetShieldedInstanceConfigFieldBuilder().getBuilder(); + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfigOrBuilder + getShieldedInstanceConfigOrBuilder() { + if (shieldedInstanceConfigBuilder_ != null) { + return shieldedInstanceConfigBuilder_.getMessageOrBuilder(); + } else { + return shieldedInstanceConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.getDefaultInstance() + : shieldedInstanceConfig_; + } + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - parseFrom(com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Shielded instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfigOrBuilder> + internalGetShieldedInstanceConfigFieldBuilder() { + if (shieldedInstanceConfigBuilder_ == null) { + shieldedInstanceConfigBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceShieldedInstanceConfigOrBuilder>( + getShieldedInstanceConfig(), getParentForChildren(), isClean()); + shieldedInstanceConfig_ = null; + } + return shieldedInstanceConfigBuilder_; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - 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.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + private com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig + confidentialInstanceConfig_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfigOrBuilder> + confidentialInstanceConfigBuilder_; - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the confidentialInstanceConfig field is set. + */ + public boolean hasConfidentialInstanceConfig() { + return ((bitField0_ & 0x00000200) != 0); + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The confidentialInstanceConfig. + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig + getConfidentialInstanceConfig() { + if (confidentialInstanceConfigBuilder_ == null) { + return confidentialInstanceConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.getDefaultInstance() + : confidentialInstanceConfig_; + } else { + return confidentialInstanceConfigBuilder_.getMessage(); + } + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setConfidentialInstanceConfig( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig + value) { + if (confidentialInstanceConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + confidentialInstanceConfig_ = value; + } else { + confidentialInstanceConfigBuilder_.setMessage(value); + } + bitField0_ |= 0x00000200; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setConfidentialInstanceConfig( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.Builder + builderForValue) { + if (confidentialInstanceConfigBuilder_ == null) { + confidentialInstanceConfig_ = builderForValue.build(); + } else { + confidentialInstanceConfigBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000200; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeConfidentialInstanceConfig( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig + value) { + if (confidentialInstanceConfigBuilder_ == null) { + if (((bitField0_ & 0x00000200) != 0) + && confidentialInstanceConfig_ != null + && confidentialInstanceConfig_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.getDefaultInstance()) { + getConfidentialInstanceConfigBuilder().mergeFrom(value); + } else { + confidentialInstanceConfig_ = value; + } + } else { + confidentialInstanceConfigBuilder_.mergeFrom(value); + } + if (confidentialInstanceConfig_ != null) { + bitField0_ |= 0x00000200; + onChanged(); + } + return this; + } - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearConfidentialInstanceConfig() { + bitField0_ = (bitField0_ & ~0x00000200); + confidentialInstanceConfig_ = null; + if (confidentialInstanceConfigBuilder_ != null) { + confidentialInstanceConfigBuilder_.dispose(); + confidentialInstanceConfigBuilder_ = null; + } + onChanged(); + return this; + } - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.Builder + getConfidentialInstanceConfigBuilder() { + bitField0_ |= 0x00000200; + onChanged(); + return internalGetConfidentialInstanceConfigFieldBuilder().getBuilder(); + } - public static Builder newBuilder( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfigOrBuilder + getConfidentialInstanceConfigOrBuilder() { + if (confidentialInstanceConfigBuilder_ != null) { + return confidentialInstanceConfigBuilder_.getMessageOrBuilder(); + } else { + return confidentialInstanceConfig_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.getDefaultInstance() + : confidentialInstanceConfig_; + } + } - @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 directory to persist across workstation sessions.
            -     * 
            - * - * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory} - */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectoryOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder - .class); - } - - // Construct using - // com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.newBuilder() - private Builder() {} + /** + * + * + *
            +         * Optional. A set of Compute Engine Confidential VM instance options.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfigOrBuilder> + internalGetConfidentialInstanceConfigFieldBuilder() { + if (confidentialInstanceConfigBuilder_ == null) { + confidentialInstanceConfigBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .GceConfidentialInstanceConfigOrBuilder>( + getConfidentialInstanceConfig(), getParentForChildren(), isClean()); + confidentialInstanceConfig_ = null; + } + return confidentialInstanceConfigBuilder_; + } - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - } + private int bootDiskSizeGb_; - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - if (gcePdBuilder_ != null) { - gcePdBuilder_.clear(); + /** + * + * + *
            +         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +         * 
            + * + * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bootDiskSizeGb. + */ + @java.lang.Override + public int getBootDiskSizeGb() { + return bootDiskSizeGb_; } - mountPath_ = ""; - directoryTypeCase_ = 0; - directoryType_ = null; - return this; - } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_descriptor; - } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - getDefaultInstanceForType() { - return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .getDefaultInstance(); - } + /** + * + * + *
            +         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +         * 
            + * + * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bootDiskSizeGb to set. + * @return This builder for chaining. + */ + public Builder setBootDiskSizeGb(int value) { - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory build() { - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory result = - buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + bootDiskSizeGb_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; } - return result; - } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - buildPartial() { - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory result = - new com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory(this); - if (bitField0_ != 0) { - buildPartial0(result); + /** + * + * + *
            +         * Optional. The size of the boot disk for the VM in gigabytes (GB).
            +         * The minimum boot disk size is `30` GB. Defaults to `50` GB.
            +         * 
            + * + * int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearBootDiskSizeGb() { + bitField0_ = (bitField0_ & ~0x00000400); + bootDiskSizeGb_ = 0; + onChanged(); + return this; } - buildPartialOneofs(result); - onBuilt(); - return result; - } - private void buildPartial0( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000002) != 0)) { - result.mountPath_ = mountPath_; + private java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator> + accelerators_ = java.util.Collections.emptyList(); + + private void ensureAcceleratorsIsMutable() { + if (!((bitField0_ & 0x00000800) != 0)) { + accelerators_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator>(accelerators_); + bitField0_ |= 0x00000800; + } } - } - private void buildPartialOneofs( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory result) { - result.directoryTypeCase_ = directoryTypeCase_; - result.directoryType_ = this.directoryType_; - if (directoryTypeCase_ == 2 && gcePdBuilder_ != null) { - result.directoryType_ = gcePdBuilder_.build(); + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + acceleratorsBuilder_; + + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator> + getAcceleratorsList() { + if (acceleratorsBuilder_ == null) { + return java.util.Collections.unmodifiableList(accelerators_); + } else { + return acceleratorsBuilder_.getMessageList(); + } } - } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other - instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) { - return mergeFrom( - (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) other); - } else { - super.mergeFrom(other); - return this; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public int getAcceleratorsCount() { + if (acceleratorsBuilder_ == null) { + return accelerators_.size(); + } else { + return acceleratorsBuilder_.getCount(); + } } - } - public Builder mergeFrom( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory other) { - if (other - == com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .getDefaultInstance()) return this; - if (!other.getMountPath().isEmpty()) { - mountPath_ = other.mountPath_; - bitField0_ |= 0x00000002; - onChanged(); + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + getAccelerators(int index) { + if (acceleratorsBuilder_ == null) { + return accelerators_.get(index); + } else { + return acceleratorsBuilder_.getMessage(index); + } } - switch (other.getDirectoryTypeCase()) { - case GCE_PD: - { - mergeGcePd(other.getGcePd()); - break; - } - case DIRECTORYTYPE_NOT_SET: - { - break; + + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setAccelerators( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + value) { + if (acceleratorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureAcceleratorsIsMutable(); + accelerators_.set(index, value); + onChanged(); + } else { + acceleratorsBuilder_.setMessage(index, value); + } + return this; } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; - } - @java.lang.Override - public final boolean isInitialized() { - return true; - } - - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setAccelerators( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + builderForValue) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.set(index, builderForValue.build()); + onChanged(); + } else { + acceleratorsBuilder_.setMessage(index, builderForValue.build()); + } + return this; } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - mountPath_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 10 - case 18: - { - input.readMessage(internalGetGcePdFieldBuilder().getBuilder(), extensionRegistry); - directoryTypeCase_ = 2; - break; - } // case 18 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; - } - private int directoryTypeCase_ = 0; - private java.lang.Object directoryType_; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + value) { + if (acceleratorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAcceleratorsIsMutable(); + accelerators_.add(value); + onChanged(); + } else { + acceleratorsBuilder_.addMessage(value); + } + return this; + } - public DirectoryTypeCase getDirectoryTypeCase() { - return DirectoryTypeCase.forNumber(directoryTypeCase_); - } + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + value) { + if (acceleratorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAcceleratorsIsMutable(); + accelerators_.add(index, value); + onChanged(); + } else { + acceleratorsBuilder_.addMessage(index, value); + } + return this; + } - public Builder clearDirectoryType() { - directoryTypeCase_ = 0; - directoryType_ = null; - onChanged(); - return this; - } + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + builderForValue) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.add(builderForValue.build()); + onChanged(); + } else { + acceleratorsBuilder_.addMessage(builderForValue.build()); + } + return this; + } - private int bitField0_; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAccelerators( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + builderForValue) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.add(index, builderForValue.build()); + onChanged(); + } else { + acceleratorsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDiskOrBuilder> - gcePdBuilder_; - - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - * - * @return Whether the gcePd field is set. - */ - @java.lang.Override - public boolean hasGcePd() { - return directoryTypeCase_ == 2; - } - - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - * - * @return The gcePd. - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - getGcePd() { - if (gcePdBuilder_ == null) { - if (directoryTypeCase_ == 2) { - return (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllAccelerators( + java.lang.Iterable< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator> + values) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, accelerators_); + onChanged(); + } else { + acceleratorsBuilder_.addAllMessages(values); } - return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance(); - } else { - if (directoryTypeCase_ == 2) { - return gcePdBuilder_.getMessage(); + return this; + } + + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearAccelerators() { + if (acceleratorsBuilder_ == null) { + accelerators_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000800); + onChanged(); + } else { + acceleratorsBuilder_.clear(); } - return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance(); + return this; } - } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - public Builder setGcePd( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - value) { - if (gcePdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeAccelerators(int index) { + if (acceleratorsBuilder_ == null) { + ensureAcceleratorsIsMutable(); + accelerators_.remove(index); + onChanged(); + } else { + acceleratorsBuilder_.remove(index); } - directoryType_ = value; - onChanged(); - } else { - gcePdBuilder_.setMessage(value); + return this; } - directoryTypeCase_ = 2; - return this; - } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - public Builder setGcePd( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.Builder - builderForValue) { - if (gcePdBuilder_ == null) { - directoryType_ = builderForValue.build(); - onChanged(); - } else { - gcePdBuilder_.setMessage(builderForValue.build()); + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + getAcceleratorsBuilder(int index) { + return internalGetAcceleratorsFieldBuilder().getBuilder(index); } - directoryTypeCase_ = 2; - return this; - } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - public Builder mergeGcePd( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk - value) { - if (gcePdBuilder_ == null) { - if (directoryTypeCase_ == 2 - && directoryType_ - != com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance()) { - directoryType_ = - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.newBuilder( - (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_) - .mergeFrom(value) - .buildPartial(); - } else { - directoryType_ = value; - } - onChanged(); - } else { - if (directoryTypeCase_ == 2) { - gcePdBuilder_.mergeFrom(value); + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder + getAcceleratorsOrBuilder(int index) { + if (acceleratorsBuilder_ == null) { + return accelerators_.get(index); } else { - gcePdBuilder_.setMessage(value); + return acceleratorsBuilder_.getMessageOrBuilder(index); } } - directoryTypeCase_ = 2; - return this; - } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - public Builder clearGcePd() { - if (gcePdBuilder_ == null) { - if (directoryTypeCase_ == 2) { - directoryTypeCase_ = 0; - directoryType_ = null; - onChanged(); - } - } else { - if (directoryTypeCase_ == 2) { - directoryTypeCase_ = 0; - directoryType_ = null; + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + getAcceleratorsOrBuilderList() { + if (acceleratorsBuilder_ != null) { + return acceleratorsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(accelerators_); } - gcePdBuilder_.clear(); } - return this; - } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.Builder - getGcePdBuilder() { - return internalGetGcePdFieldBuilder().getBuilder(); - } + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + addAcceleratorsBuilder() { + return internalGetAcceleratorsFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator.getDefaultInstance()); + } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDiskOrBuilder - getGcePdOrBuilder() { - if ((directoryTypeCase_ == 2) && (gcePdBuilder_ != null)) { - return gcePdBuilder_.getMessageOrBuilder(); - } else { - if (directoryTypeCase_ == 2) { - return (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_; - } - return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance(); + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder + addAcceleratorsBuilder(int index) { + return internalGetAcceleratorsFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator.getDefaultInstance()); } - } - /** - * - * - *
            -       * A PersistentDirectory backed by a Compute Engine persistent disk.
            -       * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; - * - */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDiskOrBuilder> - internalGetGcePdFieldBuilder() { - if (gcePdBuilder_ == null) { - if (!(directoryTypeCase_ == 2)) { - directoryType_ = - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.getDefaultInstance(); + /** + * + * + *
            +         * Optional. A list of the type and count of accelerator cards attached to
            +         * the instance.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder> + getAcceleratorsBuilderList() { + return internalGetAcceleratorsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator + .Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder> + internalGetAcceleratorsFieldBuilder() { + if (acceleratorsBuilder_ == null) { + acceleratorsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .Accelerator.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .AcceleratorOrBuilder>( + accelerators_, + ((bitField0_ & 0x00000800) != 0), + getParentForChildren(), + isClean()); + accelerators_ = null; } - gcePdBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDiskOrBuilder>( - (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .GceRegionalPersistentDisk) - directoryType_, - getParentForChildren(), - isClean()); - directoryType_ = null; + return acceleratorsBuilder_; } - directoryTypeCase_ = 2; - onChanged(); - return gcePdBuilder_; - } - private java.lang.Object mountPath_ = ""; + private java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig> + boostConfigs_ = java.util.Collections.emptyList(); - /** - * - * - *
            -       * Optional. Location of this directory in the running workstation.
            -       * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The mountPath. - */ - public java.lang.String getMountPath() { - java.lang.Object ref = mountPath_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - mountPath_ = s; - return s; - } else { - return (java.lang.String) ref; + private void ensureBoostConfigsIsMutable() { + if (!((bitField0_ & 0x00001000) != 0)) { + boostConfigs_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig>(boostConfigs_); + bitField0_ |= 0x00001000; + } } - } - /** - * - * - *
            -       * Optional. Location of this directory in the running workstation.
            -       * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for mountPath. - */ - public com.google.protobuf.ByteString getMountPathBytes() { - java.lang.Object ref = mountPath_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - mountPath_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder> + boostConfigsBuilder_; - /** - * - * - *
            -       * Optional. Location of this directory in the running workstation.
            -       * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The mountPath to set. - * @return This builder for chaining. - */ - public Builder setMountPath(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig> + getBoostConfigsList() { + if (boostConfigsBuilder_ == null) { + return java.util.Collections.unmodifiableList(boostConfigs_); + } else { + return boostConfigsBuilder_.getMessageList(); + } } - mountPath_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - - /** - * - * - *
            -       * Optional. Location of this directory in the running workstation.
            -       * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearMountPath() { - mountPath_ = getDefaultInstance().getMountPath(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - return this; - } - /** - * - * - *
            -       * Optional. Location of this directory in the running workstation.
            -       * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for mountPath to set. - * @return This builder for chaining. - */ - public Builder setMountPathBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public int getBoostConfigsCount() { + if (boostConfigsBuilder_ == null) { + return boostConfigs_.size(); + } else { + return boostConfigsBuilder_.getCount(); + } } - checkByteStringIsUtf8(value); - mountPath_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) - } + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + getBoostConfigs(int index) { + if (boostConfigsBuilder_ == null) { + return boostConfigs_.get(index); + } else { + return boostConfigsBuilder_.getMessage(index); + } + } - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) - private static final com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - DEFAULT_INSTANCE; + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setBoostConfigs( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + value) { + if (boostConfigsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureBoostConfigsIsMutable(); + boostConfigs_.set(index, value); + onChanged(); + } else { + boostConfigsBuilder_.setMessage(index, value); + } + return this; + } - static { - DEFAULT_INSTANCE = - new com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory(); - } + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setBoostConfigs( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder + builderForValue) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.set(index, builderForValue.build()); + onChanged(); + } else { + boostConfigsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - getDefaultInstance() { - return DEFAULT_INSTANCE; - } + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addBoostConfigs( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + value) { + if (boostConfigsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureBoostConfigsIsMutable(); + boostConfigs_.add(value); + onChanged(); + } else { + boostConfigsBuilder_.addMessage(value); + } + return this; + } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public PersistentDirectory parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addBoostConfigs( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + value) { + if (boostConfigsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } - return builder.buildPartial(); + ensureBoostConfigsIsMutable(); + boostConfigs_.add(index, value); + onChanged(); + } else { + boostConfigsBuilder_.addMessage(index, value); } - }; + return this; + } - public static com.google.protobuf.Parser parser() { - return PARSER; - } + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addBoostConfigs( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder + builderForValue) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.add(builderForValue.build()); + onChanged(); + } else { + boostConfigsBuilder_.addMessage(builderForValue.build()); + } + return this; + } - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addBoostConfigs( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder + builderForValue) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.add(index, builderForValue.build()); + onChanged(); + } else { + boostConfigsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllBoostConfigs( + java.lang.Iterable< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig> + values) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, boostConfigs_); + onChanged(); + } else { + boostConfigsBuilder_.addAllMessages(values); + } + return this; + } - public interface EphemeralDirectoryOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) - com.google.protobuf.MessageOrBuilder { - - /** - * - * - *
            -     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; - * - * - * @return Whether the gcePd field is set. - */ - boolean hasGcePd(); + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearBoostConfigs() { + if (boostConfigsBuilder_ == null) { + boostConfigs_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00001000); + onChanged(); + } else { + boostConfigsBuilder_.clear(); + } + return this; + } - /** - * - * - *
            -     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; - * - * - * @return The gcePd. - */ - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk - getGcePd(); + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeBoostConfigs(int index) { + if (boostConfigsBuilder_ == null) { + ensureBoostConfigsIsMutable(); + boostConfigs_.remove(index); + onChanged(); + } else { + boostConfigsBuilder_.remove(index); + } + return this; + } - /** - * - * - *
            -     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            -     * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; - * - */ - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDiskOrBuilder - getGcePdOrBuilder(); + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder + getBoostConfigsBuilder(int index) { + return internalGetBoostConfigsFieldBuilder().getBuilder(index); + } - /** - * - * - *
            -     * Required. Location of this directory in the running workstation.
            -     * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; - * - * @return The mountPath. - */ - java.lang.String getMountPath(); + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder + getBoostConfigsOrBuilder(int index) { + if (boostConfigsBuilder_ == null) { + return boostConfigs_.get(index); + } else { + return boostConfigsBuilder_.getMessageOrBuilder(index); + } + } - /** - * - * - *
            -     * Required. Location of this directory in the running workstation.
            -     * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; - * - * @return The bytes for mountPath. - */ - com.google.protobuf.ByteString getMountPathBytes(); + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder> + getBoostConfigsOrBuilderList() { + if (boostConfigsBuilder_ != null) { + return boostConfigsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(boostConfigs_); + } + } - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.DirectoryTypeCase - getDirectoryTypeCase(); - } + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder + addBoostConfigsBuilder() { + return internalGetBoostConfigsFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig.getDefaultInstance()); + } - /** - * - * - *
            -   * An ephemeral directory which won't persist across workstation sessions. It
            -   * is freshly created on every workstation start operation.
            -   * 
            - * - * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory} - */ - public static final class EphemeralDirectory extends com.google.protobuf.GeneratedMessage - implements - // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) - EphemeralDirectoryOrBuilder { - private static final long serialVersionUID = 0L; + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder + addBoostConfigsBuilder(int index) { + return internalGetBoostConfigsFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig.getDefaultInstance()); + } - static { - com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( - com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, - /* major= */ 4, - /* minor= */ 33, - /* patch= */ 2, - /* suffix= */ "", - "EphemeralDirectory"); - } + /** + * + * + *
            +         * Optional. A list of the boost configurations that workstations created
            +         * using this workstation configuration are allowed to use. If specified,
            +         * users will have the option to choose from the list of boost configs
            +         * when starting a workstation.
            +         * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig boost_configs = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder> + getBoostConfigsBuilderList() { + return internalGetBoostConfigsFieldBuilder().getBuilderList(); + } - // Use EphemeralDirectory.newBuilder() to construct. - private EphemeralDirectory(com.google.protobuf.GeneratedMessage.Builder builder) { - super(builder); - } + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig + .Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder> + internalGetBoostConfigsFieldBuilder() { + if (boostConfigsBuilder_ == null) { + boostConfigsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfig.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .BoostConfigOrBuilder>( + boostConfigs_, + ((bitField0_ & 0x00001000) != 0), + getParentForChildren(), + isClean()); + boostConfigs_ = null; + } + return boostConfigsBuilder_; + } - private EphemeralDirectory() { - mountPath_ = ""; - } + private boolean disableSsh_; - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_descriptor; - } + /** + * + * + *
            +         * Optional. Whether to disable SSH access to the VM.
            +         * 
            + * + * bool disable_ssh = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The disableSsh. + */ + @java.lang.Override + public boolean getDisableSsh() { + return disableSsh_; + } - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder - .class); - } + /** + * + * + *
            +         * Optional. Whether to disable SSH access to the VM.
            +         * 
            + * + * bool disable_ssh = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The disableSsh to set. + * @return This builder for chaining. + */ + public Builder setDisableSsh(boolean value) { - public interface GcePersistentDiskOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) - com.google.protobuf.MessageOrBuilder { - - /** - * - * - *
            -       * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            -       * 
            - * - * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The diskType. - */ - java.lang.String getDiskType(); - - /** - * - * - *
            -       * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            -       * 
            - * - * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for diskType. - */ - com.google.protobuf.ByteString getDiskTypeBytes(); + disableSsh_ = value; + bitField0_ |= 0x00002000; + onChanged(); + return this; + } - /** - * - * - *
            -       * Optional. Name of the snapshot to use as the source for the disk. Must
            -       * be empty if
            -       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -       * is set. Updating
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -       * will update content in the ephemeral directory after the workstation is
            -       * restarted. This field is mutable.
            -       * 
            - * - * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The sourceSnapshot. - */ - java.lang.String getSourceSnapshot(); + /** + * + * + *
            +         * Optional. Whether to disable SSH access to the VM.
            +         * 
            + * + * bool disable_ssh = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearDisableSsh() { + bitField0_ = (bitField0_ & ~0x00002000); + disableSsh_ = false; + onChanged(); + return this; + } - /** - * - * - *
            -       * Optional. Name of the snapshot to use as the source for the disk. Must
            -       * be empty if
            -       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -       * is set. Updating
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -       * will update content in the ephemeral directory after the workstation is
            -       * restarted. This field is mutable.
            -       * 
            - * - * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for sourceSnapshot. - */ - com.google.protobuf.ByteString getSourceSnapshotBytes(); + private com.google.protobuf.MapField vmTags_; - /** - * - * - *
            -       * Optional. Name of the disk image to use as the source for the disk.
            -       * Must be empty if
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -       * is set. Updating
            -       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -       * will update content in the ephemeral directory after the workstation is
            -       * restarted. This field is mutable.
            -       * 
            - * - * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The sourceImage. - */ - java.lang.String getSourceImage(); + private com.google.protobuf.MapField + internalGetVmTags() { + if (vmTags_ == null) { + return com.google.protobuf.MapField.emptyMapField( + VmTagsDefaultEntryHolder.defaultEntry); + } + return vmTags_; + } - /** - * - * - *
            -       * Optional. Name of the disk image to use as the source for the disk.
            -       * Must be empty if
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -       * is set. Updating
            -       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -       * will update content in the ephemeral directory after the workstation is
            -       * restarted. This field is mutable.
            -       * 
            - * - * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for sourceImage. - */ - com.google.protobuf.ByteString getSourceImageBytes(); + private com.google.protobuf.MapField + internalGetMutableVmTags() { + if (vmTags_ == null) { + vmTags_ = + com.google.protobuf.MapField.newMapField(VmTagsDefaultEntryHolder.defaultEntry); + } + if (!vmTags_.isMutable()) { + vmTags_ = vmTags_.copy(); + } + bitField0_ |= 0x00004000; + onChanged(); + return vmTags_; + } - /** - * - * - *
            -       * Optional. Whether the disk is read only. If true, the disk may be
            -       * shared by multiple VMs and
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -       * must be set.
            -       * 
            - * - * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The readOnly. - */ - boolean getReadOnly(); - } + public int getVmTagsCount() { + return internalGetVmTags().getMap().size(); + } - /** - * - * - *
            -     * An EphemeralDirectory is backed by a Compute Engine persistent disk.
            -     * 
            - * - * Protobuf type {@code - * google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk} - */ - public static final class GcePersistentDisk extends com.google.protobuf.GeneratedMessage - implements - // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) - GcePersistentDiskOrBuilder { - private static final long serialVersionUID = 0L; + /** + * + * + *
            +         * Optional. Resource manager tags to be bound to this instance.
            +         * Tag keys and values have the same definition as [resource manager
            +         * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +         * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +         * values are in the format `tagValues/456`.
            +         * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsVmTags(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetVmTags().getMap().containsKey(key); + } - static { - com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( - com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, - /* major= */ 4, - /* minor= */ 33, - /* patch= */ 2, - /* suffix= */ "", - "GcePersistentDisk"); - } + /** Use {@link #getVmTagsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getVmTags() { + return getVmTagsMap(); + } - // Use GcePersistentDisk.newBuilder() to construct. - private GcePersistentDisk(com.google.protobuf.GeneratedMessage.Builder builder) { - super(builder); - } + /** + * + * + *
            +         * Optional. Resource manager tags to be bound to this instance.
            +         * Tag keys and values have the same definition as [resource manager
            +         * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +         * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +         * values are in the format `tagValues/456`.
            +         * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getVmTagsMap() { + return internalGetVmTags().getMap(); + } - private GcePersistentDisk() { - diskType_ = ""; - sourceSnapshot_ = ""; - sourceImage_ = ""; - } + /** + * + * + *
            +         * Optional. Resource manager tags to be bound to this instance.
            +         * Tag keys and values have the same definition as [resource manager
            +         * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +         * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +         * values are in the format `tagValues/456`.
            +         * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getVmTagsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetVmTags().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_descriptor; - } + /** + * + * + *
            +         * Optional. Resource manager tags to be bound to this instance.
            +         * Tag keys and values have the same definition as [resource manager
            +         * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +         * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +         * values are in the format `tagValues/456`.
            +         * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getVmTagsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetVmTags().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.Builder.class); - } + public Builder clearVmTags() { + bitField0_ = (bitField0_ & ~0x00004000); + internalGetMutableVmTags().getMutableMap().clear(); + return this; + } - public static final int DISK_TYPE_FIELD_NUMBER = 1; + /** + * + * + *
            +         * Optional. Resource manager tags to be bound to this instance.
            +         * Tag keys and values have the same definition as [resource manager
            +         * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +         * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +         * values are in the format `tagValues/456`.
            +         * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeVmTags(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableVmTags().getMutableMap().remove(key); + return this; + } - @SuppressWarnings("serial") - private volatile java.lang.Object diskType_ = ""; + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableVmTags() { + bitField0_ |= 0x00004000; + return internalGetMutableVmTags().getMutableMap(); + } - /** - * - * - *
            -       * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            -       * 
            - * - * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The diskType. - */ - @java.lang.Override - public java.lang.String getDiskType() { - java.lang.Object ref = diskType_; - 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(); - diskType_ = s; - return s; + /** + * + * + *
            +         * Optional. Resource manager tags to be bound to this instance.
            +         * Tag keys and values have the same definition as [resource manager
            +         * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +         * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +         * values are in the format `tagValues/456`.
            +         * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putVmTags(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableVmTags().getMutableMap().put(key, value); + bitField0_ |= 0x00004000; + return this; } - } - /** - * - * - *
            -       * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            -       * 
            - * - * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for diskType. - */ - @java.lang.Override - public com.google.protobuf.ByteString getDiskTypeBytes() { - java.lang.Object ref = diskType_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - diskType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
            +         * Optional. Resource manager tags to be bound to this instance.
            +         * Tag keys and values have the same definition as [resource manager
            +         * tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview).
            +         * Keys must be in the format `tagKeys/{tag_key_id}`, and
            +         * values are in the format `tagValues/456`.
            +         * 
            + * + * map<string, string> vm_tags = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAllVmTags(java.util.Map values) { + internalGetMutableVmTags().getMutableMap().putAll(values); + bitField0_ |= 0x00004000; + return this; } - } - public static final int SOURCE_SNAPSHOT_FIELD_NUMBER = 2; + private com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + reservationAffinity_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinityOrBuilder> + reservationAffinityBuilder_; - @SuppressWarnings("serial") - private volatile java.lang.Object sourceSnapshot_ = ""; + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the reservationAffinity field is set. + */ + public boolean hasReservationAffinity() { + return ((bitField0_ & 0x00008000) != 0); + } - /** - * - * - *
            -       * Optional. Name of the snapshot to use as the source for the disk. Must
            -       * be empty if
            -       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -       * is set. Updating
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -       * will update content in the ephemeral directory after the workstation is
            -       * restarted. This field is mutable.
            -       * 
            - * - * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The sourceSnapshot. - */ - @java.lang.Override - public java.lang.String getSourceSnapshot() { - java.lang.Object ref = sourceSnapshot_; - 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(); - sourceSnapshot_ = s; - return s; + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The reservationAffinity. + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + getReservationAffinity() { + if (reservationAffinityBuilder_ == null) { + return reservationAffinity_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.getDefaultInstance() + : reservationAffinity_; + } else { + return reservationAffinityBuilder_.getMessage(); + } } - } - /** - * - * - *
            -       * Optional. Name of the snapshot to use as the source for the disk. Must
            -       * be empty if
            -       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -       * is set. Updating
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -       * will update content in the ephemeral directory after the workstation is
            -       * restarted. This field is mutable.
            -       * 
            - * - * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for sourceSnapshot. - */ - @java.lang.Override - public com.google.protobuf.ByteString getSourceSnapshotBytes() { - java.lang.Object ref = sourceSnapshot_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - sourceSnapshot_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setReservationAffinity( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + value) { + if (reservationAffinityBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + reservationAffinity_ = value; + } else { + reservationAffinityBuilder_.setMessage(value); + } + bitField0_ |= 0x00008000; + onChanged(); + return this; } - } - public static final int SOURCE_IMAGE_FIELD_NUMBER = 3; + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setReservationAffinity( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Builder + builderForValue) { + if (reservationAffinityBuilder_ == null) { + reservationAffinity_ = builderForValue.build(); + } else { + reservationAffinityBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00008000; + onChanged(); + return this; + } - @SuppressWarnings("serial") - private volatile java.lang.Object sourceImage_ = ""; + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeReservationAffinity( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity + value) { + if (reservationAffinityBuilder_ == null) { + if (((bitField0_ & 0x00008000) != 0) + && reservationAffinity_ != null + && reservationAffinity_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.getDefaultInstance()) { + getReservationAffinityBuilder().mergeFrom(value); + } else { + reservationAffinity_ = value; + } + } else { + reservationAffinityBuilder_.mergeFrom(value); + } + if (reservationAffinity_ != null) { + bitField0_ |= 0x00008000; + onChanged(); + } + return this; + } - /** - * - * - *
            -       * Optional. Name of the disk image to use as the source for the disk.
            -       * Must be empty if
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -       * is set. Updating
            -       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -       * will update content in the ephemeral directory after the workstation is
            -       * restarted. This field is mutable.
            -       * 
            - * - * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The sourceImage. - */ - @java.lang.Override - public java.lang.String getSourceImage() { - java.lang.Object ref = sourceImage_; - 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(); - sourceImage_ = s; - return s; + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearReservationAffinity() { + bitField0_ = (bitField0_ & ~0x00008000); + reservationAffinity_ = null; + if (reservationAffinityBuilder_ != null) { + reservationAffinityBuilder_.dispose(); + reservationAffinityBuilder_ = null; + } + onChanged(); + return this; } - } - /** - * - * - *
            -       * Optional. Name of the disk image to use as the source for the disk.
            -       * Must be empty if
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -       * is set. Updating
            -       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -       * will update content in the ephemeral directory after the workstation is
            -       * restarted. This field is mutable.
            -       * 
            - * - * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for sourceImage. - */ - @java.lang.Override - public com.google.protobuf.ByteString getSourceImageBytes() { - java.lang.Object ref = sourceImage_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - sourceImage_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Builder + getReservationAffinityBuilder() { + bitField0_ |= 0x00008000; + onChanged(); + return internalGetReservationAffinityFieldBuilder().getBuilder(); } - } - - public static final int READ_ONLY_FIELD_NUMBER = 4; - private boolean readOnly_ = false; - /** - * - * - *
            -       * Optional. Whether the disk is read only. If true, the disk may be
            -       * shared by multiple VMs and
            -       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -       * must be set.
            -       * 
            - * - * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The readOnly. - */ - @java.lang.Override - public boolean getReadOnly() { - return readOnly_; - } + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinityOrBuilder + getReservationAffinityOrBuilder() { + if (reservationAffinityBuilder_ != null) { + return reservationAffinityBuilder_.getMessageOrBuilder(); + } else { + return reservationAffinity_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.getDefaultInstance() + : reservationAffinity_; + } + } - private byte memoizedIsInitialized = -1; + /** + * + * + *
            +         * Optional.
            +         * [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
            +         * specifies a reservation that can be consumed to create VM
            +         * instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations
            +         * will only create VMs in the zone where the reservation is located.
            +         * This would affect availability since the service will no longer be
            +         * resilient to zonal outages. If ANY_RESERVATION is specified, creating
            +         * reservations in both zones that the config creates VMs in will ensure
            +         * higher availability.
            +         * **Important Considerations for Reservation Affinity:**
            +         *
            +         * *   This feature is intended for advanced users and requires
            +         * familiarity with Google Compute Engine reservations.
            +         * *   Using reservations incurs charges, regardless of utilization.
            +         * *   The resources in the pool will consume the specified
            +         * reservation. Take this into account when setting the
            +         * pool size.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.ReservationAffinity reservation_affinity = 15 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinityOrBuilder> + internalGetReservationAffinityFieldBuilder() { + if (reservationAffinityBuilder_ == null) { + reservationAffinityBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinity.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .ReservationAffinityOrBuilder>( + getReservationAffinity(), getParentForChildren(), isClean()); + reservationAffinity_ = null; + } + return reservationAffinityBuilder_; + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + private java.lang.Object startupScriptUri_ = ""; - memoizedIsInitialized = 1; - return true; - } + /** + * + * + *
            +         * Optional. Link to the startup script stored in Cloud Storage. This
            +         * script will be run on the host workstation VM when the VM is created.
            +         * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +         * specifying a startup script, the service account must have [Permission
            +         * to access the bucket and script file in Cloud
            +         * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +         * Otherwise, the script must be publicly accessible.
            +         * Note that the service regularly updates the OS version of the host VM,
            +         * and it is the responsibility of the user to ensure the script stays
            +         * compatible with the OS version.
            +         * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The startupScriptUri. + */ + public java.lang.String getStartupScriptUri() { + java.lang.Object ref = startupScriptUri_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + startupScriptUri_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(diskType_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 1, diskType_); + /** + * + * + *
            +         * Optional. Link to the startup script stored in Cloud Storage. This
            +         * script will be run on the host workstation VM when the VM is created.
            +         * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +         * specifying a startup script, the service account must have [Permission
            +         * to access the bucket and script file in Cloud
            +         * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +         * Otherwise, the script must be publicly accessible.
            +         * Note that the service regularly updates the OS version of the host VM,
            +         * and it is the responsibility of the user to ensure the script stays
            +         * compatible with the OS version.
            +         * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for startupScriptUri. + */ + public com.google.protobuf.ByteString getStartupScriptUriBytes() { + java.lang.Object ref = startupScriptUri_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + startupScriptUri_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, sourceSnapshot_); + + /** + * + * + *
            +         * Optional. Link to the startup script stored in Cloud Storage. This
            +         * script will be run on the host workstation VM when the VM is created.
            +         * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +         * specifying a startup script, the service account must have [Permission
            +         * to access the bucket and script file in Cloud
            +         * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +         * Otherwise, the script must be publicly accessible.
            +         * Note that the service regularly updates the OS version of the host VM,
            +         * and it is the responsibility of the user to ensure the script stays
            +         * compatible with the OS version.
            +         * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The startupScriptUri to set. + * @return This builder for chaining. + */ + public Builder setStartupScriptUri(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + startupScriptUri_ = value; + bitField0_ |= 0x00010000; + onChanged(); + return this; } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceImage_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 3, sourceImage_); + + /** + * + * + *
            +         * Optional. Link to the startup script stored in Cloud Storage. This
            +         * script will be run on the host workstation VM when the VM is created.
            +         * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +         * specifying a startup script, the service account must have [Permission
            +         * to access the bucket and script file in Cloud
            +         * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +         * Otherwise, the script must be publicly accessible.
            +         * Note that the service regularly updates the OS version of the host VM,
            +         * and it is the responsibility of the user to ensure the script stays
            +         * compatible with the OS version.
            +         * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearStartupScriptUri() { + startupScriptUri_ = getDefaultInstance().getStartupScriptUri(); + bitField0_ = (bitField0_ & ~0x00010000); + onChanged(); + return this; } - if (readOnly_ != false) { - output.writeBool(4, readOnly_); + + /** + * + * + *
            +         * Optional. Link to the startup script stored in Cloud Storage. This
            +         * script will be run on the host workstation VM when the VM is created.
            +         * The URI must be of the form gs://{bucket-name}/{object-name}. If
            +         * specifying a startup script, the service account must have [Permission
            +         * to access the bucket and script file in Cloud
            +         * Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions).
            +         * Otherwise, the script must be publicly accessible.
            +         * Note that the service regularly updates the OS version of the host VM,
            +         * and it is the responsibility of the user to ensure the script stays
            +         * compatible with the OS version.
            +         * 
            + * + * string startup_script_uri = 26 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for startupScriptUri to set. + * @return This builder for chaining. + */ + public Builder setStartupScriptUriBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + startupScriptUri_ = value; + bitField0_ |= 0x00010000; + onChanged(); + return this; } - getUnknownFields().writeTo(output); - } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + private com.google.protobuf.MapField instanceMetadata_; - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(diskType_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, diskType_); + private com.google.protobuf.MapField + internalGetInstanceMetadata() { + if (instanceMetadata_ == null) { + return com.google.protobuf.MapField.emptyMapField( + InstanceMetadataDefaultEntryHolder.defaultEntry); + } + return instanceMetadata_; } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(2, sourceSnapshot_); + + private com.google.protobuf.MapField + internalGetMutableInstanceMetadata() { + if (instanceMetadata_ == null) { + instanceMetadata_ = + com.google.protobuf.MapField.newMapField( + InstanceMetadataDefaultEntryHolder.defaultEntry); + } + if (!instanceMetadata_.isMutable()) { + instanceMetadata_ = instanceMetadata_.copy(); + } + bitField0_ |= 0x00020000; + onChanged(); + return instanceMetadata_; } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceImage_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(3, sourceImage_); + + public int getInstanceMetadataCount() { + return internalGetInstanceMetadata().getMap().size(); } - if (readOnly_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, readOnly_); + + /** + * + * + *
            +         * Optional. Custom metadata to apply to Compute Engine instances.
            +         * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsInstanceMetadata(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetInstanceMetadata().getMap().containsKey(key); } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; + /** Use {@link #getInstanceMetadataMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getInstanceMetadata() { + return getInstanceMetadataMap(); } - if (!(obj - instanceof - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk)) { - return super.equals(obj); + + /** + * + * + *
            +         * Optional. Custom metadata to apply to Compute Engine instances.
            +         * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getInstanceMetadataMap() { + return internalGetInstanceMetadata().getMap(); } - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk - other = - (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk) - obj; - if (!getDiskType().equals(other.getDiskType())) return false; - if (!getSourceSnapshot().equals(other.getSourceSnapshot())) return false; - if (!getSourceImage().equals(other.getSourceImage())) return false; - if (getReadOnly() != other.getReadOnly()) return false; - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + /** + * + * + *
            +         * Optional. Custom metadata to apply to Compute Engine instances.
            +         * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getInstanceMetadataOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = + internalGetInstanceMetadata().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; + /** + * + * + *
            +         * Optional. Custom metadata to apply to Compute Engine instances.
            +         * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getInstanceMetadataOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = + internalGetInstanceMetadata().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + DISK_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getDiskType().hashCode(); - hash = (37 * hash) + SOURCE_SNAPSHOT_FIELD_NUMBER; - hash = (53 * hash) + getSourceSnapshot().hashCode(); - hash = (37 * hash) + SOURCE_IMAGE_FIELD_NUMBER; - hash = (53 * hash) + getSourceImage().hashCode(); - hash = (37 * hash) + READ_ONLY_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReadOnly()); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + public Builder clearInstanceMetadata() { + bitField0_ = (bitField0_ & ~0x00020000); + internalGetMutableInstanceMetadata().getMutableMap().clear(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +         * Optional. Custom metadata to apply to Compute Engine instances.
            +         * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeInstanceMetadata(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableInstanceMetadata().getMutableMap().remove(key); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - parseFrom(com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableInstanceMetadata() { + bitField0_ |= 0x00020000; + return internalGetMutableInstanceMetadata().getMutableMap(); + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +         * Optional. Custom metadata to apply to Compute Engine instances.
            +         * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putInstanceMetadata(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableInstanceMetadata().getMutableMap().put(key, value); + bitField0_ |= 0x00020000; + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +         * Optional. Custom metadata to apply to Compute Engine instances.
            +         * 
            + * + * + * map<string, string> instance_metadata = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAllInstanceMetadata( + java.util.Map values) { + internalGetMutableInstanceMetadata().getMutableMap().putAll(values); + bitField0_ |= 0x00020000; + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) + private static final com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + DEFAULT_INSTANCE; - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - parseFrom( - java.io.InputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance(); } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + getDefaultInstance() { + return DEFAULT_INSTANCE; } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - parseDelimitedFrom( - java.io.InputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GceInstance parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + public static com.google.protobuf.Parser parser() { + return PARSER; } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - 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 com.google.protobuf.Parser getParserForType() { + return PARSER; } @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } + } - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + private int configCase_ = 0; - public static Builder newBuilder( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + @SuppressWarnings("serial") + private java.lang.Object config_; - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + public enum ConfigCase + implements + com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + GCE_INSTANCE(1), + CONFIG_NOT_SET(0); + private final int value; - @java.lang.Override - protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessage.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; + private ConfigCase(int value) { + this.value = value; } /** - * - * - *
            -       * An EphemeralDirectory is backed by a Compute Engine persistent disk.
            -       * 
            - * - * Protobuf type {@code - * google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk} + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. */ - public static final class Builder - extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDiskOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_descriptor; + @java.lang.Deprecated + public static ConfigCase valueOf(int value) { + return forNumber(value); + } + + public static ConfigCase forNumber(int value) { + switch (value) { + case 1: + return GCE_INSTANCE; + case 0: + return CONFIG_NOT_SET; + default: + return null; } + } - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.Builder.class); - } + public int getNumber() { + return this.value; + } + }; - // Construct using - // com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.newBuilder() - private Builder() {} + public ConfigCase getConfigCase() { + return ConfigCase.forNumber(configCase_); + } - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - } + public static final int GCE_INSTANCE_FIELD_NUMBER = 1; - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - diskType_ = ""; - sourceSnapshot_ = ""; - sourceImage_ = ""; - readOnly_ = false; - return this; - } + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + * + * @return Whether the gceInstance field is set. + */ + @java.lang.Override + public boolean hasGceInstance() { + return configCase_ == 1; + } - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_descriptor; - } + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + * + * @return The gceInstance. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + getGceInstance() { + if (configCase_ == 1) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) config_; + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .getDefaultInstance(); + } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - getDefaultInstanceForType() { - return com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.getDefaultInstance(); - } + /** + * + * + *
            +     * Specifies a Compute Engine instance as the host.
            +     * 
            + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstanceOrBuilder + getGceInstanceOrBuilder() { + if (configCase_ == 1) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) config_; + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .getDefaultInstance(); + } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - build() { - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } + private byte memoizedIsInitialized = -1; - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - buildPartial() { - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - result = - new com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - private void buildPartial0( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.diskType_ = diskType_; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.sourceSnapshot_ = sourceSnapshot_; - } - if (((from_bitField0_ & 0x00000004) != 0)) { - result.sourceImage_ = sourceImage_; - } - if (((from_bitField0_ & 0x00000008) != 0)) { - result.readOnly_ = readOnly_; - } - } + memoizedIsInitialized = 1; + return true; + } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other - instanceof - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk) { - return mergeFrom( - (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk) - other); - } else { - super.mergeFrom(other); - return this; - } - } + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (configCase_ == 1) { + output.writeMessage( + 1, (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) config_); + } + getUnknownFields().writeTo(output); + } - public Builder mergeFrom( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - other) { - if (other - == com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.getDefaultInstance()) return this; - if (!other.getDiskType().isEmpty()) { - diskType_ = other.diskType_; - bitField0_ |= 0x00000001; - onChanged(); - } - if (!other.getSourceSnapshot().isEmpty()) { - sourceSnapshot_ = other.sourceSnapshot_; - bitField0_ |= 0x00000002; - onChanged(); - } - if (!other.getSourceImage().isEmpty()) { - sourceImage_ = other.sourceImage_; - bitField0_ |= 0x00000004; - onChanged(); - } - if (other.getReadOnly() != false) { - setReadOnly(other.getReadOnly()); - } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - @java.lang.Override - public final boolean isInitialized() { - return true; - } + size = 0; + if (configCase_ == 1) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 1, + (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) config_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - diskType_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - sourceSnapshot_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 18 - case 26: - { - sourceImage_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000004; - break; - } // case 26 - case 32: - { - readOnly_ = input.readBool(); - bitField0_ |= 0x00000008; - break; - } // case 32 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; - } + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.Host)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationConfig.Host other = + (com.google.cloud.workstations.v1beta.WorkstationConfig.Host) obj; - private int bitField0_; + if (!getConfigCase().equals(other.getConfigCase())) return false; + switch (configCase_) { + case 1: + if (!getGceInstance().equals(other.getGceInstance())) return false; + break; + case 0: + default: + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - private java.lang.Object diskType_ = ""; + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + switch (configCase_) { + case 1: + hash = (37 * hash) + GCE_INSTANCE_FIELD_NUMBER; + hash = (53 * hash) + getGceInstance().hashCode(); + break; + case 0: + default: + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - /** - * - * - *
            -         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            -         * 
            - * - * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The diskType. - */ - public java.lang.String getDiskType() { - java.lang.Object ref = diskType_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - diskType_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - /** - * - * - *
            -         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            -         * 
            - * - * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for diskType. - */ - public com.google.protobuf.ByteString getDiskTypeBytes() { - java.lang.Object ref = diskType_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - diskType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - /** - * - * - *
            -         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            -         * 
            - * - * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The diskType to set. - * @return This builder for chaining. - */ - public Builder setDiskType(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - diskType_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - /** - * - * - *
            -         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            -         * 
            - * - * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearDiskType() { - diskType_ = getDefaultInstance().getDiskType(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - /** - * - * - *
            -         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            -         * 
            - * - * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for diskType to set. - * @return This builder for chaining. - */ - public Builder setDiskTypeBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - diskType_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - private java.lang.Object sourceSnapshot_ = ""; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - /** - * - * - *
            -         * Optional. Name of the snapshot to use as the source for the disk. Must
            -         * be empty if
            -         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -         * is set. Updating
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -         * will update content in the ephemeral directory after the workstation is
            -         * restarted. This field is mutable.
            -         * 
            - * - * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The sourceSnapshot. - */ - public java.lang.String getSourceSnapshot() { - java.lang.Object ref = sourceSnapshot_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - sourceSnapshot_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - /** - * - * - *
            -         * Optional. Name of the snapshot to use as the source for the disk. Must
            -         * be empty if
            -         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -         * is set. Updating
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -         * will update content in the ephemeral directory after the workstation is
            -         * restarted. This field is mutable.
            -         * 
            - * - * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for sourceSnapshot. - */ - public com.google.protobuf.ByteString getSourceSnapshotBytes() { - java.lang.Object ref = sourceSnapshot_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - sourceSnapshot_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host 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.cloud.workstations.v1beta.WorkstationConfig.Host parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host 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.cloud.workstations.v1beta.WorkstationConfig.Host parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host 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.cloud.workstations.v1beta.WorkstationConfig.Host 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; + } + + /** + * + * + *
            +     * Runtime host for a workstation.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.Host} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.Host) + com.google.cloud.workstations.v1beta.WorkstationConfig.HostOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.Builder.class); + } + + // Construct using com.google.cloud.workstations.v1beta.WorkstationConfig.Host.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (gceInstanceBuilder_ != null) { + gceInstanceBuilder_.clear(); } + configCase_ = 0; + config_ = null; + return this; + } - /** - * - * - *
            -         * Optional. Name of the snapshot to use as the source for the disk. Must
            -         * be empty if
            -         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -         * is set. Updating
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -         * will update content in the ephemeral directory after the workstation is
            -         * restarted. This field is mutable.
            -         * 
            - * - * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The sourceSnapshot to set. - * @return This builder for chaining. - */ - public Builder setSourceSnapshot(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - sourceSnapshot_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host build() { + com.google.cloud.workstations.v1beta.WorkstationConfig.Host result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } + return result; + } - /** - * - * - *
            -         * Optional. Name of the snapshot to use as the source for the disk. Must
            -         * be empty if
            -         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -         * is set. Updating
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -         * will update content in the ephemeral directory after the workstation is
            -         * restarted. This field is mutable.
            -         * 
            - * - * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearSourceSnapshot() { - sourceSnapshot_ = getDefaultInstance().getSourceSnapshot(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationConfig.Host result = + new com.google.cloud.workstations.v1beta.WorkstationConfig.Host(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + buildPartialOneofs(result); + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host result) { + int from_bitField0_ = bitField0_; + } + + private void buildPartialOneofs( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host result) { + result.configCase_ = configCase_; + result.config_ = this.config_; + if (configCase_ == 1 && gceInstanceBuilder_ != null) { + result.config_ = gceInstanceBuilder_.build(); + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.Host) { + return mergeFrom((com.google.cloud.workstations.v1beta.WorkstationConfig.Host) other); + } else { + super.mergeFrom(other); return this; } + } - /** - * - * - *
            -         * Optional. Name of the snapshot to use as the source for the disk. Must
            -         * be empty if
            -         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -         * is set. Updating
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -         * will update content in the ephemeral directory after the workstation is
            -         * restarted. This field is mutable.
            -         * 
            - * - * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for sourceSnapshot to set. - * @return This builder for chaining. - */ - public Builder setSourceSnapshotBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - sourceSnapshot_ = value; - bitField0_ |= 0x00000002; - onChanged(); + public Builder mergeFrom(com.google.cloud.workstations.v1beta.WorkstationConfig.Host other) { + if (other + == com.google.cloud.workstations.v1beta.WorkstationConfig.Host.getDefaultInstance()) return this; + switch (other.getConfigCase()) { + case GCE_INSTANCE: + { + mergeGceInstance(other.getGceInstance()); + break; + } + case CONFIG_NOT_SET: + { + break; + } } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - private java.lang.Object sourceImage_ = ""; + @java.lang.Override + public final boolean isInitialized() { + return true; + } - /** - * - * - *
            -         * Optional. Name of the disk image to use as the source for the disk.
            -         * Must be empty if
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -         * is set. Updating
            -         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -         * will update content in the ephemeral directory after the workstation is
            -         * restarted. This field is mutable.
            -         * 
            - * - * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The sourceImage. - */ - public java.lang.String getSourceImage() { - java.lang.Object ref = sourceImage_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - sourceImage_ = s; - return s; - } else { - return (java.lang.String) ref; - } + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + input.readMessage( + internalGetGceInstanceFieldBuilder().getBuilder(), extensionRegistry); + configCase_ = 1; + break; + } // case 10 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } - /** - * - * - *
            -         * Optional. Name of the disk image to use as the source for the disk.
            -         * Must be empty if
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -         * is set. Updating
            -         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -         * will update content in the ephemeral directory after the workstation is
            -         * restarted. This field is mutable.
            -         * 
            - * - * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for sourceImage. - */ - public com.google.protobuf.ByteString getSourceImageBytes() { - java.lang.Object ref = sourceImage_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - sourceImage_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + private int configCase_ = 0; + private java.lang.Object config_; + + public ConfigCase getConfigCase() { + return ConfigCase.forNumber(configCase_); + } + + public Builder clearConfig() { + configCase_ = 0; + config_ = null; + onChanged(); + return this; + } + + private int bitField0_; + + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstanceOrBuilder> + gceInstanceBuilder_; + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + * + * @return Whether the gceInstance field is set. + */ + @java.lang.Override + public boolean hasGceInstance() { + return configCase_ == 1; + } + + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + * + * @return The gceInstance. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + getGceInstance() { + if (gceInstanceBuilder_ == null) { + if (configCase_ == 1) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) + config_; + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .getDefaultInstance(); + } else { + if (configCase_ == 1) { + return gceInstanceBuilder_.getMessage(); } + return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .getDefaultInstance(); } + } - /** - * - * - *
            -         * Optional. Name of the disk image to use as the source for the disk.
            -         * Must be empty if
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -         * is set. Updating
            -         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -         * will update content in the ephemeral directory after the workstation is
            -         * restarted. This field is mutable.
            -         * 
            - * - * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The sourceImage to set. - * @return This builder for chaining. - */ - public Builder setSourceImage(java.lang.String value) { + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + */ + public Builder setGceInstance( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance value) { + if (gceInstanceBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - sourceImage_ = value; - bitField0_ |= 0x00000004; + config_ = value; onChanged(); - return this; + } else { + gceInstanceBuilder_.setMessage(value); } + configCase_ = 1; + return this; + } - /** - * - * - *
            -         * Optional. Name of the disk image to use as the source for the disk.
            -         * Must be empty if
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -         * is set. Updating
            -         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -         * will update content in the ephemeral directory after the workstation is
            -         * restarted. This field is mutable.
            -         * 
            - * - * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearSourceImage() { - sourceImage_ = getDefaultInstance().getSourceImage(); - bitField0_ = (bitField0_ & ~0x00000004); + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + */ + public Builder setGceInstance( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Builder + builderForValue) { + if (gceInstanceBuilder_ == null) { + config_ = builderForValue.build(); onChanged(); - return this; + } else { + gceInstanceBuilder_.setMessage(builderForValue.build()); } + configCase_ = 1; + return this; + } - /** - * - * - *
            -         * Optional. Name of the disk image to use as the source for the disk.
            -         * Must be empty if
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -         * is set. Updating
            -         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            -         * will update content in the ephemeral directory after the workstation is
            -         * restarted. This field is mutable.
            -         * 
            - * - * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for sourceImage to set. - * @return This builder for chaining. - */ - public Builder setSourceImageBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - sourceImage_ = value; - bitField0_ |= 0x00000004; - onChanged(); - return this; - } - - private boolean readOnly_; - - /** - * - * - *
            -         * Optional. Whether the disk is read only. If true, the disk may be
            -         * shared by multiple VMs and
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -         * must be set.
            -         * 
            - * - * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The readOnly. - */ - @java.lang.Override - public boolean getReadOnly() { - return readOnly_; - } - - /** - * - * - *
            -         * Optional. Whether the disk is read only. If true, the disk may be
            -         * shared by multiple VMs and
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -         * must be set.
            -         * 
            - * - * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The readOnly to set. - * @return This builder for chaining. - */ - public Builder setReadOnly(boolean value) { - - readOnly_ = value; - bitField0_ |= 0x00000008; - onChanged(); - return this; - } - - /** - * - * - *
            -         * Optional. Whether the disk is read only. If true, the disk may be
            -         * shared by multiple VMs and
            -         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            -         * must be set.
            -         * 
            - * - * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearReadOnly() { - bitField0_ = (bitField0_ & ~0x00000008); - readOnly_ = false; + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + */ + public Builder mergeGceInstance( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance value) { + if (gceInstanceBuilder_ == null) { + if (configCase_ == 1 + && config_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .getDefaultInstance()) { + config_ = + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.newBuilder( + (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) + config_) + .mergeFrom(value) + .buildPartial(); + } else { + config_ = value; + } onChanged(); - return this; + } else { + if (configCase_ == 1) { + gceInstanceBuilder_.mergeFrom(value); + } else { + gceInstanceBuilder_.setMessage(value); + } } - - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) - } - - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) - private static final com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - DEFAULT_INSTANCE; - - static { - DEFAULT_INSTANCE = - new com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk(); + configCase_ = 1; + return this; } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - getDefaultInstance() { - return DEFAULT_INSTANCE; + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + */ + public Builder clearGceInstance() { + if (gceInstanceBuilder_ == null) { + if (configCase_ == 1) { + configCase_ = 0; + config_ = null; + onChanged(); + } + } else { + if (configCase_ == 1) { + configCase_ = 0; + config_ = null; + } + gceInstanceBuilder_.clear(); + } + return this; } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public GcePersistentDisk parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); - } - }; - - public static com.google.protobuf.Parser parser() { - return PARSER; + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Builder + getGceInstanceBuilder() { + return internalGetGceInstanceFieldBuilder().getBuilder(); } + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + */ @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstanceOrBuilder + getGceInstanceOrBuilder() { + if ((configCase_ == 1) && (gceInstanceBuilder_ != null)) { + return gceInstanceBuilder_.getMessageOrBuilder(); + } else { + if (configCase_ == 1) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) + config_; + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .getDefaultInstance(); + } } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; + /** + * + * + *
            +       * Specifies a Compute Engine instance as the host.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance gce_instance = 1; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstanceOrBuilder> + internalGetGceInstanceFieldBuilder() { + if (gceInstanceBuilder_ == null) { + if (!(configCase_ == 1)) { + config_ = + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance + .getDefaultInstance(); + } + gceInstanceBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstanceOrBuilder>( + (com.google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance) config_, + getParentForChildren(), + isClean()); + config_ = null; + } + configCase_ = 1; + onChanged(); + return gceInstanceBuilder_; } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.Host) } - private int directoryTypeCase_ = 0; + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.Host) + private static final com.google.cloud.workstations.v1beta.WorkstationConfig.Host + DEFAULT_INSTANCE; - @SuppressWarnings("serial") - private java.lang.Object directoryType_; - - public enum DirectoryTypeCase - implements - com.google.protobuf.Internal.EnumLite, - com.google.protobuf.AbstractMessage.InternalOneOfEnum { - GCE_PD(3), - DIRECTORYTYPE_NOT_SET(0); - private final int value; + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1beta.WorkstationConfig.Host(); + } - private DirectoryTypeCase(int value) { - this.value = value; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Host getDefaultInstance() { + return DEFAULT_INSTANCE; + } - /** - * @param value The number of the enum to look for. - * @return The enum associated with the given number. - * @deprecated Use {@link #forNumber(int)} instead. - */ - @java.lang.Deprecated - public static DirectoryTypeCase valueOf(int value) { - return forNumber(value); - } + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Host parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; - public static DirectoryTypeCase forNumber(int value) { - switch (value) { - case 3: - return GCE_PD; - case 0: - return DIRECTORYTYPE_NOT_SET; - default: - return null; - } - } + public static com.google.protobuf.Parser parser() { + return PARSER; + } - public int getNumber() { - return this.value; - } - }; + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } - public DirectoryTypeCase getDirectoryTypeCase() { - return DirectoryTypeCase.forNumber(directoryTypeCase_); + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } + } - public static final int GCE_PD_FIELD_NUMBER = 3; + public interface PersistentDirectoryOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) + com.google.protobuf.MessageOrBuilder { /** * * *
            -     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * A PersistentDirectory backed by a Compute Engine persistent disk.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; * * * @return Whether the gcePd field is set. */ - @java.lang.Override - public boolean hasGcePd() { - return directoryTypeCase_ == 3; - } + boolean hasGcePd(); /** * * *
            -     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * A PersistentDirectory backed by a Compute Engine persistent disk.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; * * * @return The gcePd. */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - getGcePd() { - if (directoryTypeCase_ == 3) { - return (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk) - directoryType_; - } - return com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.getDefaultInstance(); - } + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + getGcePd(); /** * * *
            -     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * A PersistentDirectory backed by a Compute Engine persistent disk.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; * */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDiskOrBuilder - getGcePdOrBuilder() { - if (directoryTypeCase_ == 3) { - return (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk) - directoryType_; - } - return com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.getDefaultInstance(); - } + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDiskOrBuilder + getGcePdOrBuilder(); - public static final int MOUNT_PATH_FIELD_NUMBER = 1; + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +     * availability disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + * + * @return Whether the gceHd field is set. + */ + boolean hasGceHd(); - @SuppressWarnings("serial") - private volatile java.lang.Object mountPath_ = ""; + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +     * availability disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + * + * @return The gceHd. + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + getGceHd(); /** * * *
            -     * Required. Location of this directory in the running workstation.
            +     * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +     * availability disk.
                  * 
            * - * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailabilityOrBuilder + getGceHdOrBuilder(); + + /** + * + * + *
            +     * Optional. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; * * @return The mountPath. */ - @java.lang.Override - public java.lang.String getMountPath() { - java.lang.Object ref = mountPath_; - 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(); - mountPath_ = s; - return s; - } - } + java.lang.String getMountPath(); /** * * *
            -     * Required. Location of this directory in the running workstation.
            +     * Optional. Location of this directory in the running workstation.
                  * 
            * - * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; * * @return The bytes for mountPath. */ - @java.lang.Override - public com.google.protobuf.ByteString getMountPathBytes() { - java.lang.Object ref = mountPath_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - mountPath_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + com.google.protobuf.ByteString getMountPathBytes(); - private byte memoizedIsInitialized = -1; + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.DirectoryTypeCase + getDirectoryTypeCase(); + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + /** + * + * + *
            +   * A directory to persist across workstation sessions. Updates to this field
            +   * will not update existing workstations and will only take effect on new
            +   * workstations.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory} + */ + public static final class PersistentDirectory extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) + PersistentDirectoryOrBuilder { + private static final long serialVersionUID = 0L; - memoizedIsInitialized = 1; - return true; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "PersistentDirectory"); } - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mountPath_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 1, mountPath_); - } - if (directoryTypeCase_ == 3) { - output.writeMessage( - 3, - (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk) - directoryType_); - } - getUnknownFields().writeTo(output); + // Use PersistentDirectory.newBuilder() to construct. + private PersistentDirectory(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + private PersistentDirectory() { + mountPath_ = ""; + } - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mountPath_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, mountPath_); - } - if (directoryTypeCase_ == 3) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 3, - (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk) - directoryType_); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_descriptor; } @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj - instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory other = - (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) obj; - - if (!getMountPath().equals(other.getMountPath())) return false; - if (!getDirectoryTypeCase().equals(other.getDirectoryTypeCase())) return false; - switch (directoryTypeCase_) { - case 3: - if (!getGcePd().equals(other.getGcePd())) return false; - break; - case 0: - default: - } - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder + .class); } - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; - } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + MOUNT_PATH_FIELD_NUMBER; - hash = (53 * hash) + getMountPath().hashCode(); - switch (directoryTypeCase_) { - case 3: - hash = (37 * hash) + GCE_PD_FIELD_NUMBER; - hash = (53 * hash) + getGcePd().hashCode(); - break; - case 0: - default: - } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } + public interface GceRegionalPersistentDiskOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) + com.google.protobuf.MessageOrBuilder { - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +       * Optional. The GB capacity of a persistent home directory for each
            +       * workstation created with this configuration. Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +       * is set.
            +       *
            +       * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +       * Defaults to `200`. If less than `200` GB, the
            +       * [disk_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            +       * must be
            +       * `"pd-balanced"` or `"pd-ssd"`.
            +       * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sizeGb. + */ + int getSizeGb(); - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +       * Optional. Maximum size in GB to which this persistent directory can be
            +       * resized. Defaults to unlimited if not set.
            +       * 
            + * + * int32 max_size_gb = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxSizeGb. + */ + int getMaxSizeGb(); - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - parseFrom(com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +       * Optional. Type of file system that the disk should be formatted with.
            +       * The workstation image must support this file system type. Must be empty
            +       * if
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +       * is set. Defaults to `"ext4"`.
            +       * 
            + * + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The fsType. + */ + java.lang.String getFsType(); - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +       * Optional. Type of file system that the disk should be formatted with.
            +       * The workstation image must support this file system type. Must be empty
            +       * if
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +       * is set. Defaults to `"ext4"`.
            +       * 
            + * + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for fsType. + */ + com.google.protobuf.ByteString getFsTypeBytes(); - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +       * Optional. The [type of the persistent
            +       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +       * home directory. Defaults to `"pd-standard"`.
            +       * 
            + * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The diskType. + */ + java.lang.String getDiskType(); - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +       * Optional. The [type of the persistent
            +       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +       * home directory. Defaults to `"pd-standard"`.
            +       * 
            + * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for diskType. + */ + com.google.protobuf.ByteString getDiskTypeBytes(); - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + /** + * + * + *
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +       * and
            +       * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
            +       * 
            + * + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceSnapshot. + */ + java.lang.String getSourceSnapshot(); - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +       * and
            +       * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
            +       * 
            + * + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceSnapshot. + */ + com.google.protobuf.ByteString getSourceSnapshotBytes(); - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } + /** + * + * + *
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for reclaimPolicy. + */ + int getReclaimPolicyValue(); - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - 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.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - 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(); - } + /** + * + * + *
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The reclaimPolicy. + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy + getReclaimPolicy(); - public static Builder newBuilder( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + /** + * + * + *
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
            +       * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the archiveTimeout field is set. + */ + boolean hasArchiveTimeout(); - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + /** + * + * + *
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
            +       * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The archiveTimeout. + */ + com.google.protobuf.Duration getArchiveTimeout(); - @java.lang.Override - protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; + /** + * + * + *
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
            +       * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.protobuf.DurationOrBuilder getArchiveTimeoutOrBuilder(); } /** * * *
            -     * An ephemeral directory which won't persist across workstation sessions. It
            -     * is freshly created on every workstation start operation.
            +     * A Persistent Directory backed by a Compute Engine regional persistent
            +     * disk. The
            +     * [persistent_directories][google.cloud.workstations.v1beta.WorkstationConfig.persistent_directories]
            +     * field is repeated, but it may contain only one entry. It creates a
            +     * [persistent
            +     * disk](https://cloud.google.com/compute/docs/disks/persistent-disks) that
            +     * mounts to the workstation VM at `/home` when the session starts and
            +     * detaches when the session ends. If this field is empty, workstations
            +     * created with this configuration do not have a persistent home
            +     * directory.
                  * 
            * - * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory} + * Protobuf type {@code + * google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk} */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + public static final class GceRegionalPersistentDisk extends com.google.protobuf.GeneratedMessage implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_descriptor; - } + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) + GceRegionalPersistentDiskOrBuilder { + private static final long serialVersionUID = 0L; - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder - .class); + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "GceRegionalPersistentDisk"); } - // Construct using - // com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.newBuilder() - private Builder() {} - - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); + // Use GceRegionalPersistentDisk.newBuilder() to construct. + private GceRegionalPersistentDisk(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); } - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - if (gcePdBuilder_ != null) { - gcePdBuilder_.clear(); - } - mountPath_ = ""; - directoryTypeCase_ = 0; - directoryType_ = null; - return this; + private GceRegionalPersistentDisk() { + fsType_ = ""; + diskType_ = ""; + sourceSnapshot_ = ""; + reclaimPolicy_ = 0; } - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_descriptor; - } - - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - getDefaultInstanceForType() { - return com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .getDefaultInstance(); + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor; } @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory build() { - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory result = - buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.Builder.class); } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - buildPartial() { - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory result = - new com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - buildPartialOneofs(result); - onBuilt(); - return result; - } + /** + * + * + *
            +       * Value representing what should happen to the disk after the workstation
            +       * is deleted.
            +       * 
            + * + * Protobuf enum {@code + * google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy} + */ + public enum ReclaimPolicy implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
            +         * Do not use.
            +         * 
            + * + * RECLAIM_POLICY_UNSPECIFIED = 0; + */ + RECLAIM_POLICY_UNSPECIFIED(0), + /** + * + * + *
            +         * Delete the persistent disk when deleting the workstation.
            +         * 
            + * + * DELETE = 1; + */ + DELETE(1), + /** + * + * + *
            +         * Keep the persistent disk when deleting the workstation.
            +         * An administrator must manually delete the disk.
            +         * 
            + * + * RETAIN = 2; + */ + RETAIN(2), + UNRECOGNIZED(-1), + ; - private void buildPartial0( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000002) != 0)) { - result.mountPath_ = mountPath_; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "ReclaimPolicy"); } - } - private void buildPartialOneofs( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory result) { - result.directoryTypeCase_ = directoryTypeCase_; - result.directoryType_ = this.directoryType_; - if (directoryTypeCase_ == 3 && gcePdBuilder_ != null) { - result.directoryType_ = gcePdBuilder_.build(); + /** + * + * + *
            +         * Do not use.
            +         * 
            + * + * RECLAIM_POLICY_UNSPECIFIED = 0; + */ + public static final int RECLAIM_POLICY_UNSPECIFIED_VALUE = 0; + + /** + * + * + *
            +         * Delete the persistent disk when deleting the workstation.
            +         * 
            + * + * DELETE = 1; + */ + public static final int DELETE_VALUE = 1; + + /** + * + * + *
            +         * Keep the persistent disk when deleting the workstation.
            +         * An administrator must manually delete the disk.
            +         * 
            + * + * RETAIN = 2; + */ + public static final int RETAIN_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; } - } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other - instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) { - return mergeFrom( - (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) other); - } else { - super.mergeFrom(other); - return this; + /** + * @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 ReclaimPolicy valueOf(int value) { + return forNumber(value); } - } - public Builder mergeFrom( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory other) { - if (other - == com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .getDefaultInstance()) return this; - if (!other.getMountPath().isEmpty()) { - mountPath_ = other.mountPath_; - bitField0_ |= 0x00000002; - onChanged(); + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static ReclaimPolicy forNumber(int value) { + switch (value) { + case 0: + return RECLAIM_POLICY_UNSPECIFIED; + case 1: + return DELETE; + case 2: + return RETAIN; + default: + return null; + } } - switch (other.getDirectoryTypeCase()) { - case GCE_PD: - { - mergeGcePd(other.getGcePd()); - break; - } - case DIRECTORYTYPE_NOT_SET: - { - break; - } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; - } - @java.lang.Override - public final boolean isInitialized() { - return true; - } + private static final com.google.protobuf.Internal.EnumLiteMap + internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public ReclaimPolicy findValueByNumber(int number) { + return ReclaimPolicy.forNumber(number); + } + }; - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); + public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - mountPath_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 10 - case 26: - { - input.readMessage(internalGetGcePdFieldBuilder().getBuilder(), extensionRegistry); - directoryTypeCase_ = 3; - break; - } // case 26 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; - } - private int directoryTypeCase_ = 0; - private java.lang.Object directoryType_; + public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { + return getDescriptor(); + } - public DirectoryTypeCase getDirectoryTypeCase() { - return DirectoryTypeCase.forNumber(directoryTypeCase_); - } + public static com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDescriptor() + .getEnumTypes() + .get(0); + } - public Builder clearDirectoryType() { - directoryTypeCase_ = 0; - directoryType_ = null; - onChanged(); - return this; + private static final ReclaimPolicy[] VALUES = values(); + + public static ReclaimPolicy valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private ReclaimPolicy(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy) } private int bitField0_; - - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDiskOrBuilder> - gcePdBuilder_; + public static final int SIZE_GB_FIELD_NUMBER = 1; + private int sizeGb_ = 0; /** * * *
            -       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * Optional. The GB capacity of a persistent home directory for each
            +       * workstation created with this configuration. Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +       * is set.
            +       *
            +       * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +       * Defaults to `200`. If less than `200` GB, the
            +       * [disk_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            +       * must be
            +       * `"pd-balanced"` or `"pd-ssd"`.
                    * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; - * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; * - * @return Whether the gcePd field is set. + * @return The sizeGb. */ @java.lang.Override - public boolean hasGcePd() { - return directoryTypeCase_ == 3; + public int getSizeGb() { + return sizeGb_; } + public static final int MAX_SIZE_GB_FIELD_NUMBER = 7; + private int maxSizeGb_ = 0; + /** * * *
            -       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * Optional. Maximum size in GB to which this persistent directory can be
            +       * resized. Defaults to unlimited if not set.
                    * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; - * + * int32 max_size_gb = 7 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The gcePd. + * @return The maxSizeGb. */ @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - getGcePd() { - if (gcePdBuilder_ == null) { - if (directoryTypeCase_ == 3) { - return (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk) - directoryType_; - } - return com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.getDefaultInstance(); - } else { - if (directoryTypeCase_ == 3) { - return gcePdBuilder_.getMessage(); - } - return com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.getDefaultInstance(); + public int getMaxSizeGb() { + return maxSizeGb_; + } + + public static final int FS_TYPE_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object fsType_ = ""; + + /** + * + * + *
            +       * Optional. Type of file system that the disk should be formatted with.
            +       * The workstation image must support this file system type. Must be empty
            +       * if
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +       * is set. Defaults to `"ext4"`.
            +       * 
            + * + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The fsType. + */ + @java.lang.Override + public java.lang.String getFsType() { + java.lang.Object ref = fsType_; + 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(); + fsType_ = s; + return s; } } @@ -12471,3769 +15169,4091 @@ public boolean hasGcePd() { * * *
            -       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * Optional. Type of file system that the disk should be formatted with.
            +       * The workstation image must support this file system type. Must be empty
            +       * if
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +       * is set. Defaults to `"ext4"`.
                    * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; - * + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for fsType. */ - public Builder setGcePd( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - value) { - if (gcePdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - directoryType_ = value; - onChanged(); + @java.lang.Override + public com.google.protobuf.ByteString getFsTypeBytes() { + java.lang.Object ref = fsType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + fsType_ = b; + return b; } else { - gcePdBuilder_.setMessage(value); + return (com.google.protobuf.ByteString) ref; } - directoryTypeCase_ = 3; - return this; } + public static final int DISK_TYPE_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object diskType_ = ""; + /** * * *
            -       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * Optional. The [type of the persistent
            +       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +       * home directory. Defaults to `"pd-standard"`.
                    * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; - * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The diskType. */ - public Builder setGcePd( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.Builder - builderForValue) { - if (gcePdBuilder_ == null) { - directoryType_ = builderForValue.build(); - onChanged(); + @java.lang.Override + public java.lang.String getDiskType() { + java.lang.Object ref = diskType_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; } else { - gcePdBuilder_.setMessage(builderForValue.build()); + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + diskType_ = s; + return s; } - directoryTypeCase_ = 3; - return this; } /** * * *
            -       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * Optional. The [type of the persistent
            +       * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +       * home directory. Defaults to `"pd-standard"`.
                    * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; - * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for diskType. */ - public Builder mergeGcePd( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk - value) { - if (gcePdBuilder_ == null) { - if (directoryTypeCase_ == 3 - && directoryType_ - != com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.getDefaultInstance()) { - directoryType_ = - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.newBuilder( - (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk) - directoryType_) - .mergeFrom(value) - .buildPartial(); - } else { - directoryType_ = value; - } - onChanged(); + @java.lang.Override + public com.google.protobuf.ByteString getDiskTypeBytes() { + java.lang.Object ref = diskType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + diskType_ = b; + return b; } else { - if (directoryTypeCase_ == 3) { - gcePdBuilder_.mergeFrom(value); - } else { - gcePdBuilder_.setMessage(value); - } + return (com.google.protobuf.ByteString) ref; } - directoryTypeCase_ = 3; - return this; } + public static final int SOURCE_SNAPSHOT_FIELD_NUMBER = 5; + + @SuppressWarnings("serial") + private volatile java.lang.Object sourceSnapshot_ = ""; + /** * * *
            -       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +       * and
            +       * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
                    * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; - * + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceSnapshot. */ - public Builder clearGcePd() { - if (gcePdBuilder_ == null) { - if (directoryTypeCase_ == 3) { - directoryTypeCase_ = 0; - directoryType_ = null; - onChanged(); - } + @java.lang.Override + public java.lang.String getSourceSnapshot() { + java.lang.Object ref = sourceSnapshot_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; } else { - if (directoryTypeCase_ == 3) { - directoryTypeCase_ = 0; - directoryType_ = null; - } - gcePdBuilder_.clear(); + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceSnapshot_ = s; + return s; } - return this; } /** * * *
            -       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +       * and
            +       * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
                    * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; - * + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceSnapshot. */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.Builder - getGcePdBuilder() { - return internalGetGcePdFieldBuilder().getBuilder(); + @java.lang.Override + public com.google.protobuf.ByteString getSourceSnapshotBytes() { + java.lang.Object ref = sourceSnapshot_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceSnapshot_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } + public static final int RECLAIM_POLICY_FIELD_NUMBER = 4; + private int reclaimPolicy_ = 0; + /** * * *
            -       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
                    * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The enum numeric value on the wire for reclaimPolicy. */ @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDiskOrBuilder - getGcePdOrBuilder() { - if ((directoryTypeCase_ == 3) && (gcePdBuilder_ != null)) { - return gcePdBuilder_.getMessageOrBuilder(); - } else { - if (directoryTypeCase_ == 3) { - return (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk) - directoryType_; - } - return com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.getDefaultInstance(); - } + public int getReclaimPolicyValue() { + return reclaimPolicy_; } /** * * *
            -       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
                    * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The reclaimPolicy. */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDiskOrBuilder> - internalGetGcePdFieldBuilder() { - if (gcePdBuilder_ == null) { - if (!(directoryTypeCase_ == 3)) { - directoryType_ = - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.getDefaultInstance(); - } - gcePdBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDiskOrBuilder>( - (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .GcePersistentDisk) - directoryType_, - getParentForChildren(), - isClean()); - directoryType_ = null; - } - directoryTypeCase_ = 3; - onChanged(); - return gcePdBuilder_; + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy + getReclaimPolicy() { + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy + result = + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy.forNumber(reclaimPolicy_); + return result == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy.UNRECOGNIZED + : result; } - private java.lang.Object mountPath_ = ""; + public static final int ARCHIVE_TIMEOUT_FIELD_NUMBER = 6; + private com.google.protobuf.Duration archiveTimeout_; /** * * *
            -       * Required. Location of this directory in the running workstation.
            -       * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; - * - * @return The mountPath. - */ - public java.lang.String getMountPath() { - java.lang.Object ref = mountPath_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - mountPath_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - - /** + * Optional. Number of seconds to wait after initially creating or + * subsequently shutting down the workstation before converting its disk + * into a snapshot. This generally saves costs at the expense of greater + * startup time on next workstation start, as the service will need to + * create a disk from the archival snapshot. * - * - *
            -       * Required. Location of this directory in the running workstation.
            +       * A value of `"0s"` indicates that the disk will never be archived.
                    * 
            * - * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The bytes for mountPath. + * @return Whether the archiveTimeout field is set. */ - public com.google.protobuf.ByteString getMountPathBytes() { - java.lang.Object ref = mountPath_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - mountPath_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + @java.lang.Override + public boolean hasArchiveTimeout() { + return ((bitField0_ & 0x00000001) != 0); } /** * * *
            -       * Required. Location of this directory in the running workstation.
            -       * 
            - * - * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; - * - * @param value The mountPath to set. - * @return This builder for chaining. - */ - public Builder setMountPath(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - mountPath_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - - /** + * Optional. Number of seconds to wait after initially creating or + * subsequently shutting down the workstation before converting its disk + * into a snapshot. This generally saves costs at the expense of greater + * startup time on next workstation start, as the service will need to + * create a disk from the archival snapshot. * - * - *
            -       * Required. Location of this directory in the running workstation.
            +       * A value of `"0s"` indicates that the disk will never be archived.
                    * 
            * - * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return This builder for chaining. + * @return The archiveTimeout. */ - public Builder clearMountPath() { - mountPath_ = getDefaultInstance().getMountPath(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - return this; + @java.lang.Override + public com.google.protobuf.Duration getArchiveTimeout() { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; } /** * * *
            -       * Required. Location of this directory in the running workstation.
            -       * 
            + * Optional. Number of seconds to wait after initially creating or + * subsequently shutting down the workstation before converting its disk + * into a snapshot. This generally saves costs at the expense of greater + * startup time on next workstation start, as the service will need to + * create a disk from the archival snapshot. * - * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * A value of `"0s"` indicates that the disk will never be archived. + *
            * - * @param value The bytes for mountPath to set. - * @return This builder for chaining. + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setMountPathBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - mountPath_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; + @java.lang.Override + public com.google.protobuf.DurationOrBuilder getArchiveTimeoutOrBuilder() { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; } - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) - } + private byte memoizedIsInitialized = -1; - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) - private static final com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - DEFAULT_INSTANCE; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - static { - DEFAULT_INSTANCE = - new com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory(); - } + memoizedIsInitialized = 1; + return true; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - getDefaultInstance() { - return DEFAULT_INSTANCE; - } + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (sizeGb_ != 0) { + output.writeInt32(1, sizeGb_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fsType_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, fsType_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(diskType_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, diskType_); + } + if (reclaimPolicy_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy.RECLAIM_POLICY_UNSPECIFIED + .getNumber()) { + output.writeEnum(4, reclaimPolicy_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 5, sourceSnapshot_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(6, getArchiveTimeout()); + } + if (maxSizeGb_ != 0) { + output.writeInt32(7, maxSizeGb_); + } + getUnknownFields().writeTo(output); + } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public EphemeralDirectory parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); - } - }; + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - public static com.google.protobuf.Parser parser() { - return PARSER; - } + size = 0; + if (sizeGb_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, sizeGb_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fsType_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, fsType_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(diskType_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, diskType_); + } + if (reclaimPolicy_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy.RECLAIM_POLICY_UNSPECIFIED + .getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(4, reclaimPolicy_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(5, sourceSnapshot_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getArchiveTimeout()); + } + if (maxSizeGb_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(7, maxSizeGb_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + other = + (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + obj; - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + if (getSizeGb() != other.getSizeGb()) return false; + if (getMaxSizeGb() != other.getMaxSizeGb()) return false; + if (!getFsType().equals(other.getFsType())) return false; + if (!getDiskType().equals(other.getDiskType())) return false; + if (!getSourceSnapshot().equals(other.getSourceSnapshot())) return false; + if (reclaimPolicy_ != other.reclaimPolicy_) return false; + if (hasArchiveTimeout() != other.hasArchiveTimeout()) return false; + if (hasArchiveTimeout()) { + if (!getArchiveTimeout().equals(other.getArchiveTimeout())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - public interface ContainerOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.Container) - com.google.protobuf.MessageOrBuilder { + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + SIZE_GB_FIELD_NUMBER; + hash = (53 * hash) + getSizeGb(); + hash = (37 * hash) + MAX_SIZE_GB_FIELD_NUMBER; + hash = (53 * hash) + getMaxSizeGb(); + hash = (37 * hash) + FS_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getFsType().hashCode(); + hash = (37 * hash) + DISK_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getDiskType().hashCode(); + hash = (37 * hash) + SOURCE_SNAPSHOT_FIELD_NUMBER; + hash = (53 * hash) + getSourceSnapshot().hashCode(); + hash = (37 * hash) + RECLAIM_POLICY_FIELD_NUMBER; + hash = (53 * hash) + reclaimPolicy_; + if (hasArchiveTimeout()) { + hash = (37 * hash) + ARCHIVE_TIMEOUT_FIELD_NUMBER; + hash = (53 * hash) + getArchiveTimeout().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - /** - * - * - *
            -     * Optional. A Docker container image that defines a custom environment.
            -     *
            -     * Cloud Workstations provides a number of
            -     * [preconfigured
            -     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -     * but you can create your own
            -     * [custom container
            -     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -     * If using a private image, the `host.gceInstance.serviceAccount` field
            -     * must be specified in the workstation configuration and must have
            -     * permission to pull the specified image. Otherwise, the image must be
            -     * publicly accessible.
            -     * 
            - * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The image. - */ - java.lang.String getImage(); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - /** - * - * - *
            -     * Optional. A Docker container image that defines a custom environment.
            -     *
            -     * Cloud Workstations provides a number of
            -     * [preconfigured
            -     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -     * but you can create your own
            -     * [custom container
            -     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -     * If using a private image, the `host.gceInstance.serviceAccount` field
            -     * must be specified in the workstation configuration and must have
            -     * permission to pull the specified image. Otherwise, the image must be
            -     * publicly accessible.
            -     * 
            - * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for image. - */ - com.google.protobuf.ByteString getImageBytes(); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - /** - * - * - *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            -     * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return A list containing the command. - */ - java.util.List getCommandList(); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - /** - * - * - *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            -     * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The count of command. - */ - int getCommandCount(); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - /** - * - * - *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            -     * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the element to return. - * @return The command at the given index. - */ - java.lang.String getCommand(int index); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - /** - * - * - *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            -     * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the value to return. - * @return The bytes of the command at the given index. - */ - com.google.protobuf.ByteString getCommandBytes(int index); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return A list containing the args. - */ - java.util.List getArgsList(); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The count of args. - */ - int getArgsCount(); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the element to return. - * @return The args at the given index. - */ - java.lang.String getArgs(int index); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the value to return. - * @return The bytes of the args at the given index. - */ - com.google.protobuf.ByteString getArgsBytes(int index); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - int getEnvCount(); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - boolean containsEnv(java.lang.String key); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } - /** Use {@link #getEnvMap()} instead. */ - @java.lang.Deprecated - java.util.Map getEnv(); + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - java.util.Map getEnvMap(); + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - /* nullable */ - java.lang.String getEnvOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue); + public static Builder newBuilder( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - java.lang.String getEnvOrThrow(java.lang.String key); + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } - /** - * - * - *
            -     * Optional. If set, overrides the default DIR specified by the image.
            -     * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The workingDir. - */ - java.lang.String getWorkingDir(); + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } - /** - * - * - *
            -     * Optional. If set, overrides the default DIR specified by the image.
            -     * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for workingDir. - */ - com.google.protobuf.ByteString getWorkingDirBytes(); + /** + * + * + *
            +       * A Persistent Directory backed by a Compute Engine regional persistent
            +       * disk. The
            +       * [persistent_directories][google.cloud.workstations.v1beta.WorkstationConfig.persistent_directories]
            +       * field is repeated, but it may contain only one entry. It creates a
            +       * [persistent
            +       * disk](https://cloud.google.com/compute/docs/disks/persistent-disks) that
            +       * mounts to the workstation VM at `/home` when the session starts and
            +       * detaches when the session ends. If this field is empty, workstations
            +       * created with this configuration do not have a persistent home
            +       * directory.
            +       * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDiskOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor; + } - /** - * - * - *
            -     * Optional. If set, overrides the USER specified in the image with the
            -     * given uid.
            -     * 
            - * - * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The runAsUser. - */ - int getRunAsUser(); - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.Builder.class); + } - /** - * - * - *
            -   * A Docker container.
            -   * 
            - * - * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.Container} - */ - public static final class Container extends com.google.protobuf.GeneratedMessage - implements - // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.Container) - ContainerOrBuilder { - private static final long serialVersionUID = 0L; + // Construct using + // com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } - static { - com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( - com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, - /* major= */ 4, - /* minor= */ 33, - /* patch= */ 2, - /* suffix= */ "", - "Container"); - } + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } - // Use Container.newBuilder() to construct. - private Container(com.google.protobuf.GeneratedMessage.Builder builder) { - super(builder); - } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetArchiveTimeoutFieldBuilder(); + } + } - private Container() { - image_ = ""; - command_ = com.google.protobuf.LazyStringArrayList.emptyList(); - args_ = com.google.protobuf.LazyStringArrayList.emptyList(); - workingDir_ = ""; - } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + sizeGb_ = 0; + maxSizeGb_ = 0; + fsType_ = ""; + diskType_ = ""; + sourceSnapshot_ = ""; + reclaimPolicy_ = 0; + archiveTimeout_ = null; + if (archiveTimeoutBuilder_ != null) { + archiveTimeoutBuilder_.dispose(); + archiveTimeoutBuilder_ = null; + } + return this; + } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Container_descriptor; - } + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor; + } - @SuppressWarnings({"rawtypes"}) - @java.lang.Override - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( - int number) { - switch (number) { - case 4: - return internalGetEnv(); - default: - throw new RuntimeException("Invalid map field number: " + number); - } - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance(); + } - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Container_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.Container.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.Container.Builder.class); - } - - public static final int IMAGE_FIELD_NUMBER = 1; - - @SuppressWarnings("serial") - private volatile java.lang.Object image_ = ""; - - /** - * - * - *
            -     * Optional. A Docker container image that defines a custom environment.
            -     *
            -     * Cloud Workstations provides a number of
            -     * [preconfigured
            -     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -     * but you can create your own
            -     * [custom container
            -     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -     * If using a private image, the `host.gceInstance.serviceAccount` field
            -     * must be specified in the workstation configuration and must have
            -     * permission to pull the specified image. Otherwise, the image must be
            -     * publicly accessible.
            -     * 
            - * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The image. - */ - @java.lang.Override - public java.lang.String getImage() { - java.lang.Object ref = image_; - 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(); - image_ = s; - return s; - } - } - - /** - * - * - *
            -     * Optional. A Docker container image that defines a custom environment.
            -     *
            -     * Cloud Workstations provides a number of
            -     * [preconfigured
            -     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -     * but you can create your own
            -     * [custom container
            -     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -     * If using a private image, the `host.gceInstance.serviceAccount` field
            -     * must be specified in the workstation configuration and must have
            -     * permission to pull the specified image. Otherwise, the image must be
            -     * publicly accessible.
            -     * 
            - * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for image. - */ - @java.lang.Override - public com.google.protobuf.ByteString getImageBytes() { - java.lang.Object ref = image_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - image_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - public static final int COMMAND_FIELD_NUMBER = 2; + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + build() { + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - @SuppressWarnings("serial") - private com.google.protobuf.LazyStringArrayList command_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + result = + new com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - /** - * - * - *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            -     * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return A list containing the command. - */ - public com.google.protobuf.ProtocolStringList getCommandList() { - return command_; - } + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.sizeGb_ = sizeGb_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.maxSizeGb_ = maxSizeGb_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.fsType_ = fsType_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.diskType_ = diskType_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.sourceSnapshot_ = sourceSnapshot_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.reclaimPolicy_ = reclaimPolicy_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000040) != 0)) { + result.archiveTimeout_ = + archiveTimeoutBuilder_ == null ? archiveTimeout_ : archiveTimeoutBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } - /** - * - * - *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            -     * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The count of command. - */ - public int getCommandCount() { - return command_.size(); - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + other); + } else { + super.mergeFrom(other); + return this; + } + } - /** - * - * - *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            -     * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the element to return. - * @return The command at the given index. - */ - public java.lang.String getCommand(int index) { - return command_.get(index); - } + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + other) { + if (other + == com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance()) return this; + if (other.getSizeGb() != 0) { + setSizeGb(other.getSizeGb()); + } + if (other.getMaxSizeGb() != 0) { + setMaxSizeGb(other.getMaxSizeGb()); + } + if (!other.getFsType().isEmpty()) { + fsType_ = other.fsType_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (!other.getDiskType().isEmpty()) { + diskType_ = other.diskType_; + bitField0_ |= 0x00000008; + onChanged(); + } + if (!other.getSourceSnapshot().isEmpty()) { + sourceSnapshot_ = other.sourceSnapshot_; + bitField0_ |= 0x00000010; + onChanged(); + } + if (other.reclaimPolicy_ != 0) { + setReclaimPolicyValue(other.getReclaimPolicyValue()); + } + if (other.hasArchiveTimeout()) { + mergeArchiveTimeout(other.getArchiveTimeout()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - /** - * - * - *
            -     * Optional. If set, overrides the default ENTRYPOINT specified by the
            -     * image.
            -     * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the value to return. - * @return The bytes of the command at the given index. - */ - public com.google.protobuf.ByteString getCommandBytes(int index) { - return command_.getByteString(index); - } + @java.lang.Override + public final boolean isInitialized() { + return true; + } - public static final int ARGS_FIELD_NUMBER = 3; + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + sizeGb_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: + { + fsType_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 18 + case 26: + { + diskType_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 26 + case 32: + { + reclaimPolicy_ = input.readEnum(); + bitField0_ |= 0x00000020; + break; + } // case 32 + case 42: + { + sourceSnapshot_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 50: + { + input.readMessage( + internalGetArchiveTimeoutFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000040; + break; + } // case 50 + case 56: + { + maxSizeGb_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 56 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } - @SuppressWarnings("serial") - private com.google.protobuf.LazyStringArrayList args_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + private int bitField0_; - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return A list containing the args. - */ - public com.google.protobuf.ProtocolStringList getArgsList() { - return args_; - } + private int sizeGb_; - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The count of args. - */ - public int getArgsCount() { - return args_.size(); - } + /** + * + * + *
            +         * Optional. The GB capacity of a persistent home directory for each
            +         * workstation created with this configuration. Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set.
            +         *
            +         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +         * Defaults to `200`. If less than `200` GB, the
            +         * [disk_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            +         * must be
            +         * `"pd-balanced"` or `"pd-ssd"`.
            +         * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sizeGb. + */ + @java.lang.Override + public int getSizeGb() { + return sizeGb_; + } - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the element to return. - * @return The args at the given index. - */ - public java.lang.String getArgs(int index) { - return args_.get(index); - } + /** + * + * + *
            +         * Optional. The GB capacity of a persistent home directory for each
            +         * workstation created with this configuration. Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set.
            +         *
            +         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +         * Defaults to `200`. If less than `200` GB, the
            +         * [disk_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            +         * must be
            +         * `"pd-balanced"` or `"pd-ssd"`.
            +         * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sizeGb to set. + * @return This builder for chaining. + */ + public Builder setSizeGb(int value) { - /** - * - * - *
            -     * Optional. Arguments passed to the entrypoint.
            -     * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index of the value to return. - * @return The bytes of the args at the given index. - */ - public com.google.protobuf.ByteString getArgsBytes(int index) { - return args_.getByteString(index); - } + sizeGb_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } - public static final int ENV_FIELD_NUMBER = 4; + /** + * + * + *
            +         * Optional. The GB capacity of a persistent home directory for each
            +         * workstation created with this configuration. Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set.
            +         *
            +         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +         * Defaults to `200`. If less than `200` GB, the
            +         * [disk_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.disk_type]
            +         * must be
            +         * `"pd-balanced"` or `"pd-ssd"`.
            +         * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSizeGb() { + bitField0_ = (bitField0_ & ~0x00000001); + sizeGb_ = 0; + onChanged(); + return this; + } - private static final class EnvDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Container_EnvEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + private int maxSizeGb_; - @SuppressWarnings("serial") - private com.google.protobuf.MapField env_; + /** + * + * + *
            +         * Optional. Maximum size in GB to which this persistent directory can be
            +         * resized. Defaults to unlimited if not set.
            +         * 
            + * + * int32 max_size_gb = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxSizeGb. + */ + @java.lang.Override + public int getMaxSizeGb() { + return maxSizeGb_; + } - private com.google.protobuf.MapField internalGetEnv() { - if (env_ == null) { - return com.google.protobuf.MapField.emptyMapField(EnvDefaultEntryHolder.defaultEntry); - } - return env_; - } + /** + * + * + *
            +         * Optional. Maximum size in GB to which this persistent directory can be
            +         * resized. Defaults to unlimited if not set.
            +         * 
            + * + * int32 max_size_gb = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The maxSizeGb to set. + * @return This builder for chaining. + */ + public Builder setMaxSizeGb(int value) { - public int getEnvCount() { - return internalGetEnv().getMap().size(); - } + maxSizeGb_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public boolean containsEnv(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - return internalGetEnv().getMap().containsKey(key); - } + /** + * + * + *
            +         * Optional. Maximum size in GB to which this persistent directory can be
            +         * resized. Defaults to unlimited if not set.
            +         * 
            + * + * int32 max_size_gb = 7 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearMaxSizeGb() { + bitField0_ = (bitField0_ & ~0x00000002); + maxSizeGb_ = 0; + onChanged(); + return this; + } - /** Use {@link #getEnvMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getEnv() { - return getEnvMap(); - } + private java.lang.Object fsType_ = ""; - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.util.Map getEnvMap() { - return internalGetEnv().getMap(); - } + /** + * + * + *
            +         * Optional. Type of file system that the disk should be formatted with.
            +         * The workstation image must support this file system type. Must be empty
            +         * if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set. Defaults to `"ext4"`.
            +         * 
            + * + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The fsType. + */ + public java.lang.String getFsType() { + java.lang.Object ref = fsType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + fsType_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public /* nullable */ java.lang.String getEnvOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetEnv().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } + /** + * + * + *
            +         * Optional. Type of file system that the disk should be formatted with.
            +         * The workstation image must support this file system type. Must be empty
            +         * if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set. Defaults to `"ext4"`.
            +         * 
            + * + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for fsType. + */ + public com.google.protobuf.ByteString getFsTypeBytes() { + java.lang.Object ref = fsType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + fsType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - /** - * - * - *
            -     * Optional. Environment variables passed to the container's entrypoint.
            -     * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.lang.String getEnvOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetEnv().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); - } - return map.get(key); - } + /** + * + * + *
            +         * Optional. Type of file system that the disk should be formatted with.
            +         * The workstation image must support this file system type. Must be empty
            +         * if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set. Defaults to `"ext4"`.
            +         * 
            + * + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The fsType to set. + * @return This builder for chaining. + */ + public Builder setFsType(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + fsType_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } - public static final int WORKING_DIR_FIELD_NUMBER = 5; + /** + * + * + *
            +         * Optional. Type of file system that the disk should be formatted with.
            +         * The workstation image must support this file system type. Must be empty
            +         * if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set. Defaults to `"ext4"`.
            +         * 
            + * + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearFsType() { + fsType_ = getDefaultInstance().getFsType(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } - @SuppressWarnings("serial") - private volatile java.lang.Object workingDir_ = ""; + /** + * + * + *
            +         * Optional. Type of file system that the disk should be formatted with.
            +         * The workstation image must support this file system type. Must be empty
            +         * if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.source_snapshot]
            +         * is set. Defaults to `"ext4"`.
            +         * 
            + * + * string fs_type = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for fsType to set. + * @return This builder for chaining. + */ + public Builder setFsTypeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + fsType_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } - /** - * - * - *
            -     * Optional. If set, overrides the default DIR specified by the image.
            -     * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The workingDir. - */ - @java.lang.Override - public java.lang.String getWorkingDir() { - java.lang.Object ref = workingDir_; - 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(); - workingDir_ = s; - return s; - } - } + private java.lang.Object diskType_ = ""; - /** - * - * - *
            -     * Optional. If set, overrides the default DIR specified by the image.
            -     * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for workingDir. - */ - @java.lang.Override - public com.google.protobuf.ByteString getWorkingDirBytes() { - java.lang.Object ref = workingDir_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - workingDir_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - public static final int RUN_AS_USER_FIELD_NUMBER = 6; - private int runAsUser_ = 0; - - /** - * - * - *
            -     * Optional. If set, overrides the USER specified in the image with the
            -     * given uid.
            -     * 
            - * - * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The runAsUser. - */ - @java.lang.Override - public int getRunAsUser() { - return runAsUser_; - } + /** + * + * + *
            +         * Optional. The [type of the persistent
            +         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +         * home directory. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The diskType. + */ + public java.lang.String getDiskType() { + java.lang.Object ref = diskType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + diskType_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } - private byte memoizedIsInitialized = -1; + /** + * + * + *
            +         * Optional. The [type of the persistent
            +         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +         * home directory. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for diskType. + */ + public com.google.protobuf.ByteString getDiskTypeBytes() { + java.lang.Object ref = diskType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + diskType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + /** + * + * + *
            +         * Optional. The [type of the persistent
            +         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +         * home directory. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The diskType to set. + * @return This builder for chaining. + */ + public Builder setDiskType(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + diskType_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } - memoizedIsInitialized = 1; - return true; - } + /** + * + * + *
            +         * Optional. The [type of the persistent
            +         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +         * home directory. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearDiskType() { + diskType_ = getDefaultInstance().getDiskType(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(image_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 1, image_); - } - for (int i = 0; i < command_.size(); i++) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, command_.getRaw(i)); - } - for (int i = 0; i < args_.size(); i++) { - com.google.protobuf.GeneratedMessage.writeString(output, 3, args_.getRaw(i)); - } - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetEnv(), EnvDefaultEntryHolder.defaultEntry, 4); - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workingDir_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 5, workingDir_); - } - if (runAsUser_ != 0) { - output.writeInt32(6, runAsUser_); - } - getUnknownFields().writeTo(output); - } + /** + * + * + *
            +         * Optional. The [type of the persistent
            +         * disk](https://cloud.google.com/compute/docs/disks#disk-types) for the
            +         * home directory. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for diskType to set. + * @return This builder for chaining. + */ + public Builder setDiskTypeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + diskType_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + private java.lang.Object sourceSnapshot_ = ""; - size = 0; - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(image_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, image_); - } - { - int dataSize = 0; - for (int i = 0; i < command_.size(); i++) { - dataSize += computeStringSizeNoTag(command_.getRaw(i)); - } - size += dataSize; - size += 1 * getCommandList().size(); - } - { - int dataSize = 0; - for (int i = 0; i < args_.size(); i++) { - dataSize += computeStringSizeNoTag(args_.getRaw(i)); + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +         * and
            +         * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceSnapshot. + */ + public java.lang.String getSourceSnapshot() { + java.lang.Object ref = sourceSnapshot_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceSnapshot_ = s; + return s; + } else { + return (java.lang.String) ref; + } } - size += dataSize; - size += 1 * getArgsList().size(); - } - for (java.util.Map.Entry entry : - internalGetEnv().getMap().entrySet()) { - com.google.protobuf.MapEntry env__ = - EnvDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, env__); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workingDir_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(5, workingDir_); - } - if (runAsUser_ != 0) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(6, runAsUser_); - } - 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.cloud.workstations.v1beta.WorkstationConfig.Container)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1beta.WorkstationConfig.Container other = - (com.google.cloud.workstations.v1beta.WorkstationConfig.Container) obj; - - if (!getImage().equals(other.getImage())) return false; - if (!getCommandList().equals(other.getCommandList())) return false; - if (!getArgsList().equals(other.getArgsList())) return false; - if (!internalGetEnv().equals(other.internalGetEnv())) return false; - if (!getWorkingDir().equals(other.getWorkingDir())) return false; - if (getRunAsUser() != other.getRunAsUser()) 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) + IMAGE_FIELD_NUMBER; - hash = (53 * hash) + getImage().hashCode(); - if (getCommandCount() > 0) { - hash = (37 * hash) + COMMAND_FIELD_NUMBER; - hash = (53 * hash) + getCommandList().hashCode(); - } - if (getArgsCount() > 0) { - hash = (37 * hash) + ARGS_FIELD_NUMBER; - hash = (53 * hash) + getArgsList().hashCode(); - } - if (!internalGetEnv().getMap().isEmpty()) { - hash = (37 * hash) + ENV_FIELD_NUMBER; - hash = (53 * hash) + internalGetEnv().hashCode(); - } - hash = (37 * hash) + WORKING_DIR_FIELD_NUMBER; - hash = (53 * hash) + getWorkingDir().hashCode(); - hash = (37 * hash) + RUN_AS_USER_FIELD_NUMBER; - hash = (53 * hash) + getRunAsUser(); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +         * and
            +         * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceSnapshot. + */ + public com.google.protobuf.ByteString getSourceSnapshotBytes() { + java.lang.Object ref = sourceSnapshot_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceSnapshot_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +         * and
            +         * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sourceSnapshot to set. + * @return This builder for chaining. + */ + public Builder setSourceSnapshot(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + sourceSnapshot_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( - byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +         * and
            +         * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSourceSnapshot() { + sourceSnapshot_ = getDefaultInstance().getSourceSnapshot(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb]
            +         * and
            +         * [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for sourceSnapshot to set. + * @return This builder for chaining. + */ + public Builder setSourceSnapshotBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + sourceSnapshot_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + private int reclaimPolicy_ = 0; - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for reclaimPolicy. + */ + @java.lang.Override + public int getReclaimPolicyValue() { + return reclaimPolicy_; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container - parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The enum numeric value on the wire for reclaimPolicy to set. + * @return This builder for chaining. + */ + public Builder setReclaimPolicyValue(int value) { + reclaimPolicy_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container - parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The reclaimPolicy. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy + getReclaimPolicy() { + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy + result = + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy.forNumber(reclaimPolicy_); + return result == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy.UNRECOGNIZED + : result; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container 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(); - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The reclaimPolicy to set. + * @return This builder for chaining. + */ + public Builder setReclaimPolicy( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.ReclaimPolicy + value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000020; + reclaimPolicy_ = value.getNumber(); + onChanged(); + return this; + } - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.ReclaimPolicy reclaim_policy = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearReclaimPolicy() { + bitField0_ = (bitField0_ & ~0x00000020); + reclaimPolicy_ = 0; + onChanged(); + return this; + } - public static Builder newBuilder( - com.google.cloud.workstations.v1beta.WorkstationConfig.Container prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + private com.google.protobuf.Duration archiveTimeout_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + archiveTimeoutBuilder_; - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the archiveTimeout field is set. + */ + public boolean hasArchiveTimeout() { + return ((bitField0_ & 0x00000040) != 0); + } - @java.lang.Override - protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The archiveTimeout. + */ + public com.google.protobuf.Duration getArchiveTimeout() { + if (archiveTimeoutBuilder_ == null) { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; + } else { + return archiveTimeoutBuilder_.getMessage(); + } + } - /** - * - * - *
            -     * A Docker container.
            -     * 
            - * - * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.Container} - */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.Container) - com.google.cloud.workstations.v1beta.WorkstationConfig.ContainerOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Container_descriptor; - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setArchiveTimeout(com.google.protobuf.Duration value) { + if (archiveTimeoutBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + archiveTimeout_ = value; + } else { + archiveTimeoutBuilder_.setMessage(value); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( - int number) { - switch (number) { - case 4: - return internalGetEnv(); - default: - throw new RuntimeException("Invalid map field number: " + number); + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setArchiveTimeout(com.google.protobuf.Duration.Builder builderForValue) { + if (archiveTimeoutBuilder_ == null) { + archiveTimeout_ = builderForValue.build(); + } else { + archiveTimeoutBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; } - } - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( - int number) { - switch (number) { - case 4: - return internalGetMutableEnv(); - default: - throw new RuntimeException("Invalid map field number: " + number); + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeArchiveTimeout(com.google.protobuf.Duration value) { + if (archiveTimeoutBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0) + && archiveTimeout_ != null + && archiveTimeout_ != com.google.protobuf.Duration.getDefaultInstance()) { + getArchiveTimeoutBuilder().mergeFrom(value); + } else { + archiveTimeout_ = value; + } + } else { + archiveTimeoutBuilder_.mergeFrom(value); + } + if (archiveTimeout_ != null) { + bitField0_ |= 0x00000040; + onChanged(); + } + return this; } - } - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Container_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.Container.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.Container.Builder.class); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearArchiveTimeout() { + bitField0_ = (bitField0_ & ~0x00000040); + archiveTimeout_ = null; + if (archiveTimeoutBuilder_ != null) { + archiveTimeoutBuilder_.dispose(); + archiveTimeoutBuilder_ = null; + } + onChanged(); + return this; + } - // Construct using - // com.google.cloud.workstations.v1beta.WorkstationConfig.Container.newBuilder() - private Builder() {} + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.protobuf.Duration.Builder getArchiveTimeoutBuilder() { + bitField0_ |= 0x00000040; + onChanged(); + return internalGetArchiveTimeoutFieldBuilder().getBuilder(); + } - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.protobuf.DurationOrBuilder getArchiveTimeoutOrBuilder() { + if (archiveTimeoutBuilder_ != null) { + return archiveTimeoutBuilder_.getMessageOrBuilder(); + } else { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; + } + } - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - image_ = ""; - command_ = com.google.protobuf.LazyStringArrayList.emptyList(); - args_ = com.google.protobuf.LazyStringArrayList.emptyList(); - internalGetMutableEnv().clear(); - workingDir_ = ""; - runAsUser_ = 0; - return this; - } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Container_descriptor; - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + internalGetArchiveTimeoutFieldBuilder() { + if (archiveTimeoutBuilder_ == null) { + archiveTimeoutBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder>( + getArchiveTimeout(), getParentForChildren(), isClean()); + archiveTimeout_ = null; + } + return archiveTimeoutBuilder_; + } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Container - getDefaultInstanceForType() { - return com.google.cloud.workstations.v1beta.WorkstationConfig.Container - .getDefaultInstance(); + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Container build() { - com.google.cloud.workstations.v1beta.WorkstationConfig.Container result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk) + private static final com.google.cloud.workstations.v1beta.WorkstationConfig + .PersistentDirectory.GceRegionalPersistentDisk + DEFAULT_INSTANCE; - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Container buildPartial() { - com.google.cloud.workstations.v1beta.WorkstationConfig.Container result = - new com.google.cloud.workstations.v1beta.WorkstationConfig.Container(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk(); } - private void buildPartial0( - com.google.cloud.workstations.v1beta.WorkstationConfig.Container result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.image_ = image_; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - command_.makeImmutable(); - result.command_ = command_; - } - if (((from_bitField0_ & 0x00000004) != 0)) { - args_.makeImmutable(); - result.args_ = args_; - } - if (((from_bitField0_ & 0x00000008) != 0)) { - result.env_ = internalGetEnv(); - result.env_.makeImmutable(); - } - if (((from_bitField0_ & 0x00000010) != 0)) { - result.workingDir_ = workingDir_; - } - if (((from_bitField0_ & 0x00000020) != 0)) { - result.runAsUser_ = runAsUser_; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + getDefaultInstance() { + return DEFAULT_INSTANCE; } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.Container) { - return mergeFrom( - (com.google.cloud.workstations.v1beta.WorkstationConfig.Container) other); - } else { - super.mergeFrom(other); - return this; - } - } + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GceRegionalPersistentDisk parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; - public Builder mergeFrom( - com.google.cloud.workstations.v1beta.WorkstationConfig.Container other) { - if (other - == com.google.cloud.workstations.v1beta.WorkstationConfig.Container - .getDefaultInstance()) return this; - if (!other.getImage().isEmpty()) { - image_ = other.image_; - bitField0_ |= 0x00000001; - onChanged(); - } - if (!other.command_.isEmpty()) { - if (command_.isEmpty()) { - command_ = other.command_; - bitField0_ |= 0x00000002; - } else { - ensureCommandIsMutable(); - command_.addAll(other.command_); - } - onChanged(); - } - if (!other.args_.isEmpty()) { - if (args_.isEmpty()) { - args_ = other.args_; - bitField0_ |= 0x00000004; - } else { - ensureArgsIsMutable(); - args_.addAll(other.args_); - } - onChanged(); - } - internalGetMutableEnv().mergeFrom(other.internalGetEnv()); - bitField0_ |= 0x00000008; - if (!other.getWorkingDir().isEmpty()) { - workingDir_ = other.workingDir_; - bitField0_ |= 0x00000010; - onChanged(); - } - if (other.getRunAsUser() != 0) { - setRunAsUser(other.getRunAsUser()); - } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; + public static com.google.protobuf.Parser parser() { + return PARSER; } @java.lang.Override - public final boolean isInitialized() { - return true; + public com.google.protobuf.Parser getParserForType() { + return PARSER; } @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - image_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureCommandIsMutable(); - command_.add(s); - break; - } // case 18 - case 26: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureArgsIsMutable(); - args_.add(s); - break; - } // case 26 - case 34: - { - com.google.protobuf.MapEntry env__ = - input.readMessage( - EnvDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableEnv().getMutableMap().put(env__.getKey(), env__.getValue()); - bitField0_ |= 0x00000008; - break; - } // case 34 - case 42: - { - workingDir_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000010; - break; - } // case 42 - case 48: - { - runAsUser_ = input.readInt32(); - bitField0_ |= 0x00000020; - break; - } // case 48 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } + } - private int bitField0_; - - private java.lang.Object image_ = ""; + public interface GceHyperdiskBalancedHighAvailabilityOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability) + com.google.protobuf.MessageOrBuilder { /** * * *
            -       * Optional. A Docker container image that defines a custom environment.
            +       * Optional. The GB capacity of a persistent home directory for each
            +       * workstation created with this configuration. Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.source_snapshot]
            +       * is set.
                    *
            -       * Cloud Workstations provides a number of
            -       * [preconfigured
            -       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -       * but you can create your own
            -       * [custom container
            -       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -       * If using a private image, the `host.gceInstance.serviceAccount` field
            -       * must be specified in the workstation configuration and must have
            -       * permission to pull the specified image. Otherwise, the image must be
            -       * publicly accessible.
            +       * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +       * Defaults to `200`.
                    * 
            * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The image. + * @return The sizeGb. */ - public java.lang.String getImage() { - java.lang.Object ref = image_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - image_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } + int getSizeGb(); /** * * *
            -       * Optional. A Docker container image that defines a custom environment.
            -       *
            -       * Cloud Workstations provides a number of
            -       * [preconfigured
            -       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -       * but you can create your own
            -       * [custom container
            -       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -       * If using a private image, the `host.gceInstance.serviceAccount` field
            -       * must be specified in the workstation configuration and must have
            -       * permission to pull the specified image. Otherwise, the image must be
            -       * publicly accessible.
            +       * Optional. Maximum size in GB to which this persistent directory can be
            +       * resized. Defaults to unlimited if not set.
                    * 
            * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * int32 max_size_gb = 5 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The bytes for image. + * @return The maxSizeGb. */ - public com.google.protobuf.ByteString getImageBytes() { - java.lang.Object ref = image_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - image_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + int getMaxSizeGb(); /** * * *
            -       * Optional. A Docker container image that defines a custom environment.
            -       *
            -       * Cloud Workstations provides a number of
            -       * [preconfigured
            -       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -       * but you can create your own
            -       * [custom container
            -       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -       * If using a private image, the `host.gceInstance.serviceAccount` field
            -       * must be specified in the workstation configuration and must have
            -       * permission to pull the specified image. Otherwise, the image must be
            -       * publicly accessible.
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
                    * 
            * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The image to set. - * @return This builder for chaining. + * @return The sourceSnapshot. */ - public Builder setImage(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - image_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } + java.lang.String getSourceSnapshot(); /** * * *
            -       * Optional. A Docker container image that defines a custom environment.
            -       *
            -       * Cloud Workstations provides a number of
            -       * [preconfigured
            -       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -       * but you can create your own
            -       * [custom container
            -       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -       * If using a private image, the `host.gceInstance.serviceAccount` field
            -       * must be specified in the workstation configuration and must have
            -       * permission to pull the specified image. Otherwise, the image must be
            -       * publicly accessible.
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
                    * 
            * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return This builder for chaining. + * @return The bytes for sourceSnapshot. */ - public Builder clearImage() { - image_ = getDefaultInstance().getImage(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; - } + com.google.protobuf.ByteString getSourceSnapshotBytes(); /** * * *
            -       * Optional. A Docker container image that defines a custom environment.
            -       *
            -       * Cloud Workstations provides a number of
            -       * [preconfigured
            -       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            -       * but you can create your own
            -       * [custom container
            -       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            -       * If using a private image, the `host.gceInstance.serviceAccount` field
            -       * must be specified in the workstation configuration and must have
            -       * permission to pull the specified image. Otherwise, the image must be
            -       * publicly accessible.
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
                    * 
            * - * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param value The bytes for image to set. - * @return This builder for chaining. + * @return The enum numeric value on the wire for reclaimPolicy. */ - public Builder setImageBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - image_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - - private com.google.protobuf.LazyStringArrayList command_ = - com.google.protobuf.LazyStringArrayList.emptyList(); - - private void ensureCommandIsMutable() { - if (!command_.isModifiable()) { - command_ = new com.google.protobuf.LazyStringArrayList(command_); - } - bitField0_ |= 0x00000002; - } + int getReclaimPolicyValue(); /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return A list containing the command. + * @return The reclaimPolicy. */ - public com.google.protobuf.ProtocolStringList getCommandList() { - command_.makeImmutable(); - return command_; - } + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy + getReclaimPolicy(); /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The count of command. + * @return Whether the archiveTimeout field is set. */ - public int getCommandCount() { - return command_.size(); - } + boolean hasArchiveTimeout(); /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param index The index of the element to return. - * @return The command at the given index. + * @return The archiveTimeout. */ - public java.lang.String getCommand(int index) { - return command_.get(index); - } + com.google.protobuf.Duration getArchiveTimeout(); /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            -       * 
            + * Optional. Number of seconds to wait after initially creating or + * subsequently shutting down the workstation before converting its disk + * into a snapshot. This generally saves costs at the expense of greater + * startup time on next workstation start, as the service will need to + * create a disk from the archival snapshot. * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * A value of `"0s"` indicates that the disk will never be archived. + *
            * - * @param index The index of the value to return. - * @return The bytes of the command at the given index. + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public com.google.protobuf.ByteString getCommandBytes(int index) { - return command_.getByteString(index); + com.google.protobuf.DurationOrBuilder getArchiveTimeoutOrBuilder(); + } + + /** + * + * + *
            +     * A Persistent Directory backed by a Compute Engine
            +     * [Hyperdisk Balanced High Availability
            +     * Disk](https://cloud.google.com/compute/docs/disks/hd-types/hyperdisk-balanced-ha).
            +     * This is a high-availability block storage solution that offers a balance
            +     * between performance and cost for most general-purpose workloads.
            +     * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability} + */ + public static final class GceHyperdiskBalancedHighAvailability + extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability) + GceHyperdiskBalancedHighAvailabilityOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "GceHyperdiskBalancedHighAvailability"); } - /** - * - * - *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            -       * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param index The index to set the value at. - * @param value The command to set. - * @return This builder for chaining. - */ - public Builder setCommand(int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureCommandIsMutable(); - command_.set(index, value); - bitField0_ |= 0x00000002; - onChanged(); - return this; + // Use GceHyperdiskBalancedHighAvailability.newBuilder() to construct. + private GceHyperdiskBalancedHighAvailability( + com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private GceHyperdiskBalancedHighAvailability() { + sourceSnapshot_ = ""; + reclaimPolicy_ = 0; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.Builder.class); } /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Value representing what should happen to the disk after the workstation
            +       * is deleted.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The command to add. - * @return This builder for chaining. + * Protobuf enum {@code + * google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy} */ - public Builder addCommand(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public enum ReclaimPolicy implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
            +         * Do not use.
            +         * 
            + * + * RECLAIM_POLICY_UNSPECIFIED = 0; + */ + RECLAIM_POLICY_UNSPECIFIED(0), + /** + * + * + *
            +         * Delete the persistent disk when deleting the workstation.
            +         * 
            + * + * DELETE = 1; + */ + DELETE(1), + /** + * + * + *
            +         * Keep the persistent disk when deleting the workstation.
            +         * An administrator must manually delete the disk.
            +         * 
            + * + * RETAIN = 2; + */ + RETAIN(2), + UNRECOGNIZED(-1), + ; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "ReclaimPolicy"); } - ensureCommandIsMutable(); - command_.add(value); - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - /** - * - * - *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            -       * 
            - * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param values The command to add. - * @return This builder for chaining. - */ - public Builder addAllCommand(java.lang.Iterable values) { - ensureCommandIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, command_); - bitField0_ |= 0x00000002; - onChanged(); - return this; + /** + * + * + *
            +         * Do not use.
            +         * 
            + * + * RECLAIM_POLICY_UNSPECIFIED = 0; + */ + public static final int RECLAIM_POLICY_UNSPECIFIED_VALUE = 0; + + /** + * + * + *
            +         * Delete the persistent disk when deleting the workstation.
            +         * 
            + * + * DELETE = 1; + */ + public static final int DELETE_VALUE = 1; + + /** + * + * + *
            +         * Keep the persistent disk when deleting the workstation.
            +         * An administrator must manually delete the disk.
            +         * 
            + * + * RETAIN = 2; + */ + public static final int RETAIN_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 ReclaimPolicy 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 ReclaimPolicy forNumber(int value) { + switch (value) { + case 0: + return RECLAIM_POLICY_UNSPECIFIED; + case 1: + return DELETE; + case 2: + return RETAIN; + default: + return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + + private static final com.google.protobuf.Internal.EnumLiteMap + internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public ReclaimPolicy findValueByNumber(int number) { + return ReclaimPolicy.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + + public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { + return getDescriptor(); + } + + public static com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDescriptor() + .getEnumTypes() + .get(0); + } + + private static final ReclaimPolicy[] VALUES = values(); + + public static ReclaimPolicy valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private ReclaimPolicy(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy) } + private int bitField0_; + public static final int SIZE_GB_FIELD_NUMBER = 1; + private int sizeGb_ = 0; + /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Optional. The GB capacity of a persistent home directory for each
            +       * workstation created with this configuration. Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.source_snapshot]
            +       * is set.
            +       *
            +       * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +       * Defaults to `200`.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; * - * @return This builder for chaining. + * @return The sizeGb. */ - public Builder clearCommand() { - command_ = com.google.protobuf.LazyStringArrayList.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); - ; - onChanged(); - return this; + @java.lang.Override + public int getSizeGb() { + return sizeGb_; } + public static final int MAX_SIZE_GB_FIELD_NUMBER = 5; + private int maxSizeGb_ = 0; + /** * * *
            -       * Optional. If set, overrides the default ENTRYPOINT specified by the
            -       * image.
            +       * Optional. Maximum size in GB to which this persistent directory can be
            +       * resized. Defaults to unlimited if not set.
                    * 
            * - * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * int32 max_size_gb = 5 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The bytes of the command to add. - * @return This builder for chaining. + * @return The maxSizeGb. */ - public Builder addCommandBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - ensureCommandIsMutable(); - command_.add(value); - bitField0_ |= 0x00000002; - onChanged(); - return this; + @java.lang.Override + public int getMaxSizeGb() { + return maxSizeGb_; } - private com.google.protobuf.LazyStringArrayList args_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + public static final int SOURCE_SNAPSHOT_FIELD_NUMBER = 2; - private void ensureArgsIsMutable() { - if (!args_.isModifiable()) { - args_ = new com.google.protobuf.LazyStringArrayList(args_); - } - bitField0_ |= 0x00000004; - } + @SuppressWarnings("serial") + private volatile java.lang.Object sourceSnapshot_ = ""; /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
                    * 
            * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return A list containing the args. + * @return The sourceSnapshot. */ - public com.google.protobuf.ProtocolStringList getArgsList() { - args_.makeImmutable(); - return args_; + @java.lang.Override + public java.lang.String getSourceSnapshot() { + java.lang.Object ref = sourceSnapshot_; + 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(); + sourceSnapshot_ = s; + return s; + } } /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            +       * Optional. Name of the snapshot to use as the source for the disk. If
            +       * set,
            +       * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +       * must be empty. Must be formatted as ext4 file system with no
            +       * partitions.
                    * 
            * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The count of args. + * @return The bytes for sourceSnapshot. */ - public int getArgsCount() { - return args_.size(); + @java.lang.Override + public com.google.protobuf.ByteString getSourceSnapshotBytes() { + java.lang.Object ref = sourceSnapshot_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceSnapshot_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } + public static final int RECLAIM_POLICY_FIELD_NUMBER = 3; + private int reclaimPolicy_ = 0; + /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
                    * 
            * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param index The index of the element to return. - * @return The args at the given index. + * @return The enum numeric value on the wire for reclaimPolicy. */ - public java.lang.String getArgs(int index) { - return args_.get(index); + @java.lang.Override + public int getReclaimPolicyValue() { + return reclaimPolicy_; } /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            +       * Optional. Whether the persistent disk should be deleted when the
            +       * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +       * Defaults to `DELETE`.
                    * 
            * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param index The index of the value to return. - * @return The bytes of the args at the given index. + * @return The reclaimPolicy. */ - public com.google.protobuf.ByteString getArgsBytes(int index) { - return args_.getByteString(index); + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy + getReclaimPolicy() { + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy + result = + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy.forNumber(reclaimPolicy_); + return result == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy.UNRECOGNIZED + : result; } + public static final int ARCHIVE_TIMEOUT_FIELD_NUMBER = 4; + private com.google.protobuf.Duration archiveTimeout_; + /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
                    * 
            * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param index The index to set the value at. - * @param value The args to set. - * @return This builder for chaining. + * @return Whether the archiveTimeout field is set. */ - public Builder setArgs(int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureArgsIsMutable(); - args_.set(index, value); - bitField0_ |= 0x00000004; - onChanged(); - return this; + @java.lang.Override + public boolean hasArchiveTimeout() { + return ((bitField0_ & 0x00000001) != 0); } /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            +       * Optional. Number of seconds to wait after initially creating or
            +       * subsequently shutting down the workstation before converting its disk
            +       * into a snapshot. This generally saves costs at the expense of greater
            +       * startup time on next workstation start, as the service will need to
            +       * create a disk from the archival snapshot.
            +       *
            +       * A value of `"0s"` indicates that the disk will never be archived.
                    * 
            * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param value The args to add. - * @return This builder for chaining. + * @return The archiveTimeout. */ - public Builder addArgs(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureArgsIsMutable(); - args_.add(value); - bitField0_ |= 0x00000004; - onChanged(); - return this; + @java.lang.Override + public com.google.protobuf.Duration getArchiveTimeout() { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; } /** * * *
            -       * Optional. Arguments passed to the entrypoint.
            -       * 
            + * Optional. Number of seconds to wait after initially creating or + * subsequently shutting down the workstation before converting its disk + * into a snapshot. This generally saves costs at the expense of greater + * startup time on next workstation start, as the service will need to + * create a disk from the archival snapshot. * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * A value of `"0s"` indicates that the disk will never be archived. + *
            * - * @param values The args to add. - * @return This builder for chaining. + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder addAllArgs(java.lang.Iterable values) { - ensureArgsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, args_); - bitField0_ |= 0x00000004; - onChanged(); - return this; + @java.lang.Override + public com.google.protobuf.DurationOrBuilder getArchiveTimeoutOrBuilder() { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; } - /** - * - * - *
            -       * Optional. Arguments passed to the entrypoint.
            -       * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearArgs() { - args_ = com.google.protobuf.LazyStringArrayList.emptyList(); - bitField0_ = (bitField0_ & ~0x00000004); - ; - onChanged(); - return this; + 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; } - /** - * - * - *
            -       * Optional. Arguments passed to the entrypoint.
            -       * 
            - * - * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes of the args to add. - * @return This builder for chaining. - */ - public Builder addArgsBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (sizeGb_ != 0) { + output.writeInt32(1, sizeGb_); } - checkByteStringIsUtf8(value); - ensureArgsIsMutable(); - args_.add(value); - bitField0_ |= 0x00000004; - onChanged(); - return this; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, sourceSnapshot_); + } + if (reclaimPolicy_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy.RECLAIM_POLICY_UNSPECIFIED + .getNumber()) { + output.writeEnum(3, reclaimPolicy_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(4, getArchiveTimeout()); + } + if (maxSizeGb_ != 0) { + output.writeInt32(5, maxSizeGb_); + } + getUnknownFields().writeTo(output); } - private com.google.protobuf.MapField env_; + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - private com.google.protobuf.MapField internalGetEnv() { - if (env_ == null) { - return com.google.protobuf.MapField.emptyMapField(EnvDefaultEntryHolder.defaultEntry); + size = 0; + if (sizeGb_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, sizeGb_); } - return env_; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, sourceSnapshot_); + } + if (reclaimPolicy_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy.RECLAIM_POLICY_UNSPECIFIED + .getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(3, reclaimPolicy_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, getArchiveTimeout()); + } + if (maxSizeGb_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(5, maxSizeGb_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - private com.google.protobuf.MapField - internalGetMutableEnv() { - if (env_ == null) { - env_ = com.google.protobuf.MapField.newMapField(EnvDefaultEntryHolder.defaultEntry); + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; } - if (!env_.isMutable()) { - env_ = env_.copy(); + if (!(obj + instanceof + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability)) { + return super.equals(obj); } - bitField0_ |= 0x00000008; - onChanged(); - return env_; - } + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + other = + (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + obj; - public int getEnvCount() { - return internalGetEnv().getMap().size(); + if (getSizeGb() != other.getSizeGb()) return false; + if (getMaxSizeGb() != other.getMaxSizeGb()) return false; + if (!getSourceSnapshot().equals(other.getSourceSnapshot())) return false; + if (reclaimPolicy_ != other.reclaimPolicy_) return false; + if (hasArchiveTimeout() != other.hasArchiveTimeout()) return false; + if (hasArchiveTimeout()) { + if (!getArchiveTimeout().equals(other.getArchiveTimeout())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; } - /** - * - * - *
            -       * Optional. Environment variables passed to the container's entrypoint.
            -       * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ @java.lang.Override - public boolean containsEnv(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - return internalGetEnv().getMap().containsKey(key); + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + SIZE_GB_FIELD_NUMBER; + hash = (53 * hash) + getSizeGb(); + hash = (37 * hash) + MAX_SIZE_GB_FIELD_NUMBER; + hash = (53 * hash) + getMaxSizeGb(); + hash = (37 * hash) + SOURCE_SNAPSHOT_FIELD_NUMBER; + hash = (53 * hash) + getSourceSnapshot().hashCode(); + hash = (37 * hash) + RECLAIM_POLICY_FIELD_NUMBER; + hash = (53 * hash) + reclaimPolicy_; + if (hasArchiveTimeout()) { + hash = (37 * hash) + ARCHIVE_TIMEOUT_FIELD_NUMBER; + hash = (53 * hash) + getArchiveTimeout().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - /** Use {@link #getEnvMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getEnv() { - return getEnvMap(); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - /** - * - * - *
            -       * Optional. Environment variables passed to the container's entrypoint.
            -       * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.util.Map getEnvMap() { - return internalGetEnv().getMap(); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - /** - * - * - *
            -       * Optional. Environment variables passed to the container's entrypoint.
            -       * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public /* nullable */ java.lang.String getEnvOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetEnv().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - /** - * - * - *
            -       * Optional. Environment variables passed to the container's entrypoint.
            -       * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.lang.String getEnvOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetEnv().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); - } - return map.get(key); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - public Builder clearEnv() { - bitField0_ = (bitField0_ & ~0x00000008); - internalGetMutableEnv().getMutableMap().clear(); - return this; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - /** - * - * - *
            -       * Optional. Environment variables passed to the container's entrypoint.
            -       * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - public Builder removeEnv(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - internalGetMutableEnv().getMutableMap().remove(key); - return this; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableEnv() { - bitField0_ |= 0x00000008; - return internalGetMutableEnv().getMutableMap(); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - /** - * - * - *
            -       * Optional. Environment variables passed to the container's entrypoint.
            -       * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - public Builder putEnv(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); - } - if (value == null) { - throw new NullPointerException("map value"); - } - internalGetMutableEnv().getMutableMap().put(key, value); - bitField0_ |= 0x00000008; - return this; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); } - /** - * - * - *
            -       * Optional. Environment variables passed to the container's entrypoint.
            -       * 
            - * - * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; - */ - public Builder putAllEnv(java.util.Map values) { - internalGetMutableEnv().getMutableMap().putAll(values); - bitField0_ |= 0x00000008; - return this; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); } - private java.lang.Object workingDir_ = ""; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -       * Optional. If set, overrides the default DIR specified by the image.
            -       * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The workingDir. - */ - public java.lang.String getWorkingDir() { - java.lang.Object ref = workingDir_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - workingDir_ = s; - return s; - } else { - return (java.lang.String) ref; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - /** - * - * - *
            -       * Optional. If set, overrides the default DIR specified by the image.
            -       * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for workingDir. - */ - public com.google.protobuf.ByteString getWorkingDirBytes() { - java.lang.Object ref = workingDir_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - workingDir_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + 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.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + 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; } /** * * *
            -       * Optional. If set, overrides the default DIR specified by the image.
            +       * A Persistent Directory backed by a Compute Engine
            +       * [Hyperdisk Balanced High Availability
            +       * Disk](https://cloud.google.com/compute/docs/disks/hd-types/hyperdisk-balanced-ha).
            +       * This is a high-availability block storage solution that offers a balance
            +       * between performance and cost for most general-purpose workloads.
                    * 
            * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The workingDir to set. - * @return This builder for chaining. + * Protobuf type {@code + * google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability} */ - public Builder setWorkingDir(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public static final class Builder + extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability) + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailabilityOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_descriptor; } - workingDir_ = value; - bitField0_ |= 0x00000010; - onChanged(); - return this; - } - - /** - * - * - *
            -       * Optional. If set, overrides the default DIR specified by the image.
            -       * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearWorkingDir() { - workingDir_ = getDefaultInstance().getWorkingDir(); - bitField0_ = (bitField0_ & ~0x00000010); - onChanged(); - return this; - } - /** - * - * - *
            -       * Optional. If set, overrides the default DIR specified by the image.
            -       * 
            - * - * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for workingDir to set. - * @return This builder for chaining. - */ - public Builder setWorkingDirBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.Builder.class); } - checkByteStringIsUtf8(value); - workingDir_ = value; - bitField0_ |= 0x00000010; - onChanged(); - return this; - } - - private int runAsUser_; - - /** - * - * - *
            -       * Optional. If set, overrides the USER specified in the image with the
            -       * given uid.
            -       * 
            - * - * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The runAsUser. - */ - @java.lang.Override - public int getRunAsUser() { - return runAsUser_; - } - - /** - * - * - *
            -       * Optional. If set, overrides the USER specified in the image with the
            -       * given uid.
            -       * 
            - * - * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The runAsUser to set. - * @return This builder for chaining. - */ - public Builder setRunAsUser(int value) { - runAsUser_ = value; - bitField0_ |= 0x00000020; - onChanged(); - return this; - } + // Construct using + // com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } - /** - * - * - *
            -       * Optional. If set, overrides the USER specified in the image with the
            -       * given uid.
            -       * 
            - * - * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearRunAsUser() { - bitField0_ = (bitField0_ & ~0x00000020); - runAsUser_ = 0; - onChanged(); - return this; - } + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.Container) - } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetArchiveTimeoutFieldBuilder(); + } + } - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.Container) - private static final com.google.cloud.workstations.v1beta.WorkstationConfig.Container - DEFAULT_INSTANCE; + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + sizeGb_ = 0; + maxSizeGb_ = 0; + sourceSnapshot_ = ""; + reclaimPolicy_ = 0; + archiveTimeout_ = null; + if (archiveTimeoutBuilder_ != null) { + archiveTimeoutBuilder_.dispose(); + archiveTimeoutBuilder_ = null; + } + return this; + } - static { - DEFAULT_INSTANCE = new com.google.cloud.workstations.v1beta.WorkstationConfig.Container(); - } + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_descriptor; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container - getDefaultInstance() { - return DEFAULT_INSTANCE; - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance(); + } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public Container parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + build() { + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } - }; + return result; + } - public static com.google.protobuf.Parser parser() { - return PARSER; - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + result = + new com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.sizeGb_ = sizeGb_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.maxSizeGb_ = maxSizeGb_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.sourceSnapshot_ = sourceSnapshot_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.reclaimPolicy_ = reclaimPolicy_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000010) != 0)) { + result.archiveTimeout_ = + archiveTimeoutBuilder_ == null ? archiveTimeout_ : archiveTimeoutBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Container - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + other); + } else { + super.mergeFrom(other); + return this; + } + } - public interface CustomerEncryptionKeyOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) - com.google.protobuf.MessageOrBuilder { + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + other) { + if (other + == com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance()) return this; + if (other.getSizeGb() != 0) { + setSizeGb(other.getSizeGb()); + } + if (other.getMaxSizeGb() != 0) { + setMaxSizeGb(other.getMaxSizeGb()); + } + if (!other.getSourceSnapshot().isEmpty()) { + sourceSnapshot_ = other.sourceSnapshot_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.reclaimPolicy_ != 0) { + setReclaimPolicyValue(other.getReclaimPolicyValue()); + } + if (other.hasArchiveTimeout()) { + mergeArchiveTimeout(other.getArchiveTimeout()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - /** - * - * - *
            -     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -     * The key must be in the same region as the workstation configuration.
            -     * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The kmsKey. - */ - java.lang.String getKmsKey(); + @java.lang.Override + public final boolean isInitialized() { + return true; + } - /** - * - * - *
            -     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -     * The key must be in the same region as the workstation configuration.
            -     * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for kmsKey. - */ - com.google.protobuf.ByteString getKmsKeyBytes(); + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + sizeGb_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: + { + sourceSnapshot_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 18 + case 24: + { + reclaimPolicy_ = input.readEnum(); + bitField0_ |= 0x00000008; + break; + } // case 24 + case 34: + { + input.readMessage( + internalGetArchiveTimeoutFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000010; + break; + } // case 34 + case 40: + { + maxSizeGb_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 40 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } - /** - * - * - *
            -     * Immutable. The service account to use with the specified
            -     * KMS key. We recommend that you use a separate service account
            -     * and follow KMS best practices. For more information, see
            -     * [Separation of
            -     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -     * `gcloud kms keys add-iam-policy-binding`
            -     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -     * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The kmsKeyServiceAccount. - */ - java.lang.String getKmsKeyServiceAccount(); + private int bitField0_; - /** - * - * - *
            -     * Immutable. The service account to use with the specified
            -     * KMS key. We recommend that you use a separate service account
            -     * and follow KMS best practices. For more information, see
            -     * [Separation of
            -     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -     * `gcloud kms keys add-iam-policy-binding`
            -     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -     * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for kmsKeyServiceAccount. - */ - com.google.protobuf.ByteString getKmsKeyServiceAccountBytes(); - } + private int sizeGb_; - /** - * - * - *
            -   * A customer-managed encryption key (CMEK) for the Compute Engine
            -   * resources of the associated workstation configuration. Specify the name of
            -   * your Cloud KMS encryption key and the default service account.
            -   * We recommend that you use a separate service account and follow
            -   * [Cloud KMS best
            -   * practices](https://cloud.google.com/kms/docs/separation-of-duties).
            -   * 
            - * - * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey} - */ - public static final class CustomerEncryptionKey extends com.google.protobuf.GeneratedMessage - implements - // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) - CustomerEncryptionKeyOrBuilder { - private static final long serialVersionUID = 0L; + /** + * + * + *
            +         * Optional. The GB capacity of a persistent home directory for each
            +         * workstation created with this configuration. Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.source_snapshot]
            +         * is set.
            +         *
            +         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +         * Defaults to `200`.
            +         * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sizeGb. + */ + @java.lang.Override + public int getSizeGb() { + return sizeGb_; + } - static { - com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( - com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, - /* major= */ 4, - /* minor= */ 33, - /* patch= */ 2, - /* suffix= */ "", - "CustomerEncryptionKey"); - } + /** + * + * + *
            +         * Optional. The GB capacity of a persistent home directory for each
            +         * workstation created with this configuration. Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.source_snapshot]
            +         * is set.
            +         *
            +         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +         * Defaults to `200`.
            +         * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sizeGb to set. + * @return This builder for chaining. + */ + public Builder setSizeGb(int value) { - // Use CustomerEncryptionKey.newBuilder() to construct. - private CustomerEncryptionKey(com.google.protobuf.GeneratedMessage.Builder builder) { - super(builder); - } + sizeGb_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } - private CustomerEncryptionKey() { - kmsKey_ = ""; - kmsKeyServiceAccount_ = ""; - } + /** + * + * + *
            +         * Optional. The GB capacity of a persistent home directory for each
            +         * workstation created with this configuration. Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.source_snapshot]
            +         * is set.
            +         *
            +         * Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`.
            +         * Defaults to `200`.
            +         * 
            + * + * int32 size_gb = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSizeGb() { + bitField0_ = (bitField0_ & ~0x00000001); + sizeGb_ = 0; + onChanged(); + return this; + } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_CustomerEncryptionKey_descriptor; - } + private int maxSizeGb_; - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_CustomerEncryptionKey_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.Builder - .class); - } - - public static final int KMS_KEY_FIELD_NUMBER = 1; - - @SuppressWarnings("serial") - private volatile java.lang.Object kmsKey_ = ""; + /** + * + * + *
            +         * Optional. Maximum size in GB to which this persistent directory can be
            +         * resized. Defaults to unlimited if not set.
            +         * 
            + * + * int32 max_size_gb = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxSizeGb. + */ + @java.lang.Override + public int getMaxSizeGb() { + return maxSizeGb_; + } - /** - * - * - *
            -     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -     * The key must be in the same region as the workstation configuration.
            -     * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The kmsKey. - */ - @java.lang.Override - public java.lang.String getKmsKey() { - java.lang.Object ref = kmsKey_; - 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(); - kmsKey_ = s; - return s; - } - } + /** + * + * + *
            +         * Optional. Maximum size in GB to which this persistent directory can be
            +         * resized. Defaults to unlimited if not set.
            +         * 
            + * + * int32 max_size_gb = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The maxSizeGb to set. + * @return This builder for chaining. + */ + public Builder setMaxSizeGb(int value) { - /** - * - * - *
            -     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -     * The key must be in the same region as the workstation configuration.
            -     * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for kmsKey. - */ - @java.lang.Override - public com.google.protobuf.ByteString getKmsKeyBytes() { - java.lang.Object ref = kmsKey_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - kmsKey_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + maxSizeGb_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - public static final int KMS_KEY_SERVICE_ACCOUNT_FIELD_NUMBER = 2; + /** + * + * + *
            +         * Optional. Maximum size in GB to which this persistent directory can be
            +         * resized. Defaults to unlimited if not set.
            +         * 
            + * + * int32 max_size_gb = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearMaxSizeGb() { + bitField0_ = (bitField0_ & ~0x00000002); + maxSizeGb_ = 0; + onChanged(); + return this; + } - @SuppressWarnings("serial") - private volatile java.lang.Object kmsKeyServiceAccount_ = ""; + private java.lang.Object sourceSnapshot_ = ""; - /** - * - * - *
            -     * Immutable. The service account to use with the specified
            -     * KMS key. We recommend that you use a separate service account
            -     * and follow KMS best practices. For more information, see
            -     * [Separation of
            -     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -     * `gcloud kms keys add-iam-policy-binding`
            -     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -     * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The kmsKeyServiceAccount. - */ - @java.lang.Override - public java.lang.String getKmsKeyServiceAccount() { - java.lang.Object ref = kmsKeyServiceAccount_; - 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(); - kmsKeyServiceAccount_ = s; - return s; - } - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceSnapshot. + */ + public java.lang.String getSourceSnapshot() { + java.lang.Object ref = sourceSnapshot_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceSnapshot_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } - /** - * - * - *
            -     * Immutable. The service account to use with the specified
            -     * KMS key. We recommend that you use a separate service account
            -     * and follow KMS best practices. For more information, see
            -     * [Separation of
            -     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -     * `gcloud kms keys add-iam-policy-binding`
            -     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -     * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for kmsKeyServiceAccount. - */ - @java.lang.Override - public com.google.protobuf.ByteString getKmsKeyServiceAccountBytes() { - java.lang.Object ref = kmsKeyServiceAccount_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - kmsKeyServiceAccount_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceSnapshot. + */ + public com.google.protobuf.ByteString getSourceSnapshotBytes() { + java.lang.Object ref = sourceSnapshot_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceSnapshot_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - private byte memoizedIsInitialized = -1; + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sourceSnapshot to set. + * @return This builder for chaining. + */ + public Builder setSourceSnapshot(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + sourceSnapshot_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSourceSnapshot() { + sourceSnapshot_ = getDefaultInstance().getSourceSnapshot(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } - 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(kmsKey_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 1, kmsKey_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kmsKeyServiceAccount_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, kmsKeyServiceAccount_); - } - 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(kmsKey_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, kmsKey_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kmsKeyServiceAccount_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(2, kmsKeyServiceAccount_); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. If
            +         * set,
            +         * [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb]
            +         * must be empty. Must be formatted as ext4 file system with no
            +         * partitions.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for sourceSnapshot to set. + * @return This builder for chaining. + */ + public Builder setSourceSnapshotBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + sourceSnapshot_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj - instanceof - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey other = - (com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) obj; + private int reclaimPolicy_ = 0; - if (!getKmsKey().equals(other.getKmsKey())) return false; - if (!getKmsKeyServiceAccount().equals(other.getKmsKeyServiceAccount())) return false; - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for reclaimPolicy. + */ + @java.lang.Override + public int getReclaimPolicyValue() { + return reclaimPolicy_; + } - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; - } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + KMS_KEY_FIELD_NUMBER; - hash = (53 * hash) + getKmsKey().hashCode(); - hash = (37 * hash) + KMS_KEY_SERVICE_ACCOUNT_FIELD_NUMBER; - hash = (53 * hash) + getKmsKeyServiceAccount().hashCode(); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The enum numeric value on the wire for reclaimPolicy to set. + * @return This builder for chaining. + */ + public Builder setReclaimPolicyValue(int value) { + reclaimPolicy_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The reclaimPolicy. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy + getReclaimPolicy() { + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy + result = + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy.forNumber(reclaimPolicy_); + return result == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy.UNRECOGNIZED + : result; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The reclaimPolicy to set. + * @return This builder for chaining. + */ + public Builder setReclaimPolicy( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.ReclaimPolicy + value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000008; + reclaimPolicy_ = value.getNumber(); + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - parseFrom(com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +         * Optional. Whether the persistent disk should be deleted when the
            +         * workstation is deleted. Valid values are `DELETE` and `RETAIN`.
            +         * Defaults to `DELETE`.
            +         * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.ReclaimPolicy reclaim_policy = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearReclaimPolicy() { + bitField0_ = (bitField0_ & ~0x00000008); + reclaimPolicy_ = 0; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + private com.google.protobuf.Duration archiveTimeout_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + archiveTimeoutBuilder_; - public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the archiveTimeout field is set. + */ + public boolean hasArchiveTimeout() { + return ((bitField0_ & 0x00000010) != 0); + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The archiveTimeout. + */ + public com.google.protobuf.Duration getArchiveTimeout() { + if (archiveTimeoutBuilder_ == null) { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; + } else { + return archiveTimeoutBuilder_.getMessage(); + } + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - 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.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setArchiveTimeout(com.google.protobuf.Duration value) { + if (archiveTimeoutBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + archiveTimeout_ = value; + } else { + archiveTimeoutBuilder_.setMessage(value); + } + bitField0_ |= 0x00000010; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setArchiveTimeout(com.google.protobuf.Duration.Builder builderForValue) { + if (archiveTimeoutBuilder_ == null) { + archiveTimeout_ = builderForValue.build(); + } else { + archiveTimeoutBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000010; + onChanged(); + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeArchiveTimeout(com.google.protobuf.Duration value) { + if (archiveTimeoutBuilder_ == null) { + if (((bitField0_ & 0x00000010) != 0) + && archiveTimeout_ != null + && archiveTimeout_ != com.google.protobuf.Duration.getDefaultInstance()) { + getArchiveTimeoutBuilder().mergeFrom(value); + } else { + archiveTimeout_ = value; + } + } else { + archiveTimeoutBuilder_.mergeFrom(value); + } + if (archiveTimeout_ != null) { + bitField0_ |= 0x00000010; + onChanged(); + } + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearArchiveTimeout() { + bitField0_ = (bitField0_ & ~0x00000010); + archiveTimeout_ = null; + if (archiveTimeoutBuilder_ != null) { + archiveTimeoutBuilder_.dispose(); + archiveTimeoutBuilder_ = null; + } + onChanged(); + return this; + } - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.protobuf.Duration.Builder getArchiveTimeoutBuilder() { + bitField0_ |= 0x00000010; + onChanged(); + return internalGetArchiveTimeoutFieldBuilder().getBuilder(); + } - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.protobuf.DurationOrBuilder getArchiveTimeoutOrBuilder() { + if (archiveTimeoutBuilder_ != null) { + return archiveTimeoutBuilder_.getMessageOrBuilder(); + } else { + return archiveTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : archiveTimeout_; + } + } - public static Builder newBuilder( - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + /** + * + * + *
            +         * Optional. Number of seconds to wait after initially creating or
            +         * subsequently shutting down the workstation before converting its disk
            +         * into a snapshot. This generally saves costs at the expense of greater
            +         * startup time on next workstation start, as the service will need to
            +         * create a disk from the archival snapshot.
            +         *
            +         * A value of `"0s"` indicates that the disk will never be archived.
            +         * 
            + * + * + * .google.protobuf.Duration archive_timeout = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + internalGetArchiveTimeoutFieldBuilder() { + if (archiveTimeoutBuilder_ == null) { + archiveTimeoutBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder>( + getArchiveTimeout(), getParentForChildren(), isClean()); + archiveTimeout_ = null; + } + return archiveTimeoutBuilder_; + } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability) + } - @java.lang.Override - protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability) + private static final com.google.cloud.workstations.v1beta.WorkstationConfig + .PersistentDirectory.GceHyperdiskBalancedHighAvailability + DEFAULT_INSTANCE; - /** - * - * - *
            -     * A customer-managed encryption key (CMEK) for the Compute Engine
            -     * resources of the associated workstation configuration. Specify the name of
            -     * your Cloud KMS encryption key and the default service account.
            -     * We recommend that you use a separate service account and follow
            -     * [Cloud KMS best
            -     * practices](https://cloud.google.com/kms/docs/separation-of-duties).
            -     * 
            - * - * Protobuf type {@code - * google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey} - */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKeyOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_CustomerEncryptionKey_descriptor; + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability(); } - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_CustomerEncryptionKey_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.Builder - .class); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + getDefaultInstance() { + return DEFAULT_INSTANCE; } - // Construct using - // com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.newBuilder() - private Builder() {} - - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - } + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GceHyperdiskBalancedHighAvailability parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - kmsKey_ = ""; - kmsKeyServiceAccount_ = ""; - return this; + public static com.google.protobuf.Parser parser() { + return PARSER; } @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_CustomerEncryptionKey_descriptor; + public com.google.protobuf.Parser getParserForType() { + return PARSER; } @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability getDefaultInstanceForType() { - return com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - .getDefaultInstance(); + return DEFAULT_INSTANCE; } + } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey build() { - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey result = - buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } + private int directoryTypeCase_ = 0; - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - buildPartial() { - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey result = - new com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; - } + @SuppressWarnings("serial") + private java.lang.Object directoryType_; - private void buildPartial0( - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.kmsKey_ = kmsKey_; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.kmsKeyServiceAccount_ = kmsKeyServiceAccount_; - } + public enum DirectoryTypeCase + implements + com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + GCE_PD(2), + GCE_HD(3), + DIRECTORYTYPE_NOT_SET(0); + private final int value; + + private DirectoryTypeCase(int value) { + this.value = value; } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other - instanceof - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) { - return mergeFrom( - (com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) other); - } else { - super.mergeFrom(other); - return this; - } + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static DirectoryTypeCase valueOf(int value) { + return forNumber(value); } - public Builder mergeFrom( - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey other) { - if (other - == com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - .getDefaultInstance()) return this; - if (!other.getKmsKey().isEmpty()) { - kmsKey_ = other.kmsKey_; - bitField0_ |= 0x00000001; - onChanged(); - } - if (!other.getKmsKeyServiceAccount().isEmpty()) { - kmsKeyServiceAccount_ = other.kmsKeyServiceAccount_; - bitField0_ |= 0x00000002; - onChanged(); + public static DirectoryTypeCase forNumber(int value) { + switch (value) { + case 2: + return GCE_PD; + case 3: + return GCE_HD; + case 0: + return DIRECTORYTYPE_NOT_SET; + default: + return null; } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; } - @java.lang.Override - public final boolean isInitialized() { - return true; + public int getNumber() { + return this.value; } + }; - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - kmsKey_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - kmsKeyServiceAccount_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 18 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; - } + public DirectoryTypeCase getDirectoryTypeCase() { + return DirectoryTypeCase.forNumber(directoryTypeCase_); + } - private int bitField0_; + public static final int GCE_PD_FIELD_NUMBER = 2; - private java.lang.Object kmsKey_ = ""; + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + * + * @return Whether the gcePd field is set. + */ + @java.lang.Override + public boolean hasGcePd() { + return directoryTypeCase_ == 2; + } - /** - * - * - *
            -       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -       * The key must be in the same region as the workstation configuration.
            -       * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The kmsKey. - */ - public java.lang.String getKmsKey() { - java.lang.Object ref = kmsKey_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - kmsKey_ = s; - return s; - } else { - return (java.lang.String) ref; - } + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + * + * @return The gcePd. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + getGcePd() { + if (directoryTypeCase_ == 2) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_; } + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance(); + } - /** - * - * - *
            -       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -       * The key must be in the same region as the workstation configuration.
            -       * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for kmsKey. - */ - public com.google.protobuf.ByteString getKmsKeyBytes() { - java.lang.Object ref = kmsKey_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - kmsKey_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDiskOrBuilder + getGcePdOrBuilder() { + if (directoryTypeCase_ == 2) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_; } + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance(); + } - /** - * - * - *
            -       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -       * The key must be in the same region as the workstation configuration.
            -       * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The kmsKey to set. - * @return This builder for chaining. - */ - public Builder setKmsKey(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - kmsKey_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } + public static final int GCE_HD_FIELD_NUMBER = 3; - /** - * - * - *
            -       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -       * The key must be in the same region as the workstation configuration.
            -       * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return This builder for chaining. - */ - public Builder clearKmsKey() { - kmsKey_ = getDefaultInstance().getKmsKey(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +     * availability disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + * + * @return Whether the gceHd field is set. + */ + @java.lang.Override + public boolean hasGceHd() { + return directoryTypeCase_ == 3; + } + + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +     * availability disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + * + * @return The gceHd. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + getGceHd() { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_; } + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance(); + } - /** - * - * - *
            -       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            -       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            -       * The key must be in the same region as the workstation configuration.
            -       * 
            - * - * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The bytes for kmsKey to set. - * @return This builder for chaining. - */ - public Builder setKmsKeyBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - kmsKey_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; + /** + * + * + *
            +     * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +     * availability disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailabilityOrBuilder + getGceHdOrBuilder() { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_; } + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance(); + } - private java.lang.Object kmsKeyServiceAccount_ = ""; + public static final int MOUNT_PATH_FIELD_NUMBER = 1; - /** - * - * - *
            -       * Immutable. The service account to use with the specified
            -       * KMS key. We recommend that you use a separate service account
            -       * and follow KMS best practices. For more information, see
            -       * [Separation of
            -       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -       * `gcloud kms keys add-iam-policy-binding`
            -       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -       * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The kmsKeyServiceAccount. - */ - public java.lang.String getKmsKeyServiceAccount() { - java.lang.Object ref = kmsKeyServiceAccount_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - kmsKeyServiceAccount_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } + @SuppressWarnings("serial") + private volatile java.lang.Object mountPath_ = ""; - /** - * - * - *
            -       * Immutable. The service account to use with the specified
            -       * KMS key. We recommend that you use a separate service account
            -       * and follow KMS best practices. For more information, see
            -       * [Separation of
            -       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -       * `gcloud kms keys add-iam-policy-binding`
            -       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -       * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return The bytes for kmsKeyServiceAccount. - */ - public com.google.protobuf.ByteString getKmsKeyServiceAccountBytes() { - java.lang.Object ref = kmsKeyServiceAccount_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - kmsKeyServiceAccount_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + /** + * + * + *
            +     * Optional. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The mountPath. + */ + @java.lang.Override + public java.lang.String getMountPath() { + java.lang.Object ref = mountPath_; + 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(); + mountPath_ = s; + return s; } + } - /** - * - * - *
            -       * Immutable. The service account to use with the specified
            -       * KMS key. We recommend that you use a separate service account
            -       * and follow KMS best practices. For more information, see
            -       * [Separation of
            -       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -       * `gcloud kms keys add-iam-policy-binding`
            -       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -       * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The kmsKeyServiceAccount to set. - * @return This builder for chaining. - */ - public Builder setKmsKeyServiceAccount(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - kmsKeyServiceAccount_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; + /** + * + * + *
            +     * Optional. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for mountPath. + */ + @java.lang.Override + public com.google.protobuf.ByteString getMountPathBytes() { + java.lang.Object ref = mountPath_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + mountPath_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } + } - /** - * - * - *
            -       * Immutable. The service account to use with the specified
            -       * KMS key. We recommend that you use a separate service account
            -       * and follow KMS best practices. For more information, see
            -       * [Separation of
            -       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -       * `gcloud kms keys add-iam-policy-binding`
            -       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -       * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @return This builder for chaining. - */ - public Builder clearKmsKeyServiceAccount() { - kmsKeyServiceAccount_ = getDefaultInstance().getKmsKeyServiceAccount(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - return this; - } + private byte memoizedIsInitialized = -1; - /** - * - * - *
            -       * Immutable. The service account to use with the specified
            -       * KMS key. We recommend that you use a separate service account
            -       * and follow KMS best practices. For more information, see
            -       * [Separation of
            -       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            -       * `gcloud kms keys add-iam-policy-binding`
            -       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            -       * 
            - * - * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; - * - * @param value The bytes for kmsKeyServiceAccount to set. - * @return This builder for chaining. - */ - public Builder setKmsKeyServiceAccountBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - kmsKeyServiceAccount_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) - } - - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) - private static final com.google.cloud.workstations.v1beta.WorkstationConfig - .CustomerEncryptionKey - DEFAULT_INSTANCE; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - static { - DEFAULT_INSTANCE = - new com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey(); + memoizedIsInitialized = 1; + return true; } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - getDefaultInstance() { - return DEFAULT_INSTANCE; + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mountPath_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, mountPath_); + } + if (directoryTypeCase_ == 2) { + output.writeMessage( + 2, + (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_); + } + if (directoryTypeCase_ == 3) { + output.writeMessage( + 3, + (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_); + } + getUnknownFields().writeTo(output); } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public CustomerEncryptionKey parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); - } - }; + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - public static com.google.protobuf.Parser parser() { - return PARSER; + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mountPath_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, mountPath_); + } + if (directoryTypeCase_ == 2) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 2, + (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_); + } + if (directoryTypeCase_ == 3) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 3, + (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory other = + (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) obj; + + if (!getMountPath().equals(other.getMountPath())) return false; + if (!getDirectoryTypeCase().equals(other.getDirectoryTypeCase())) return false; + switch (directoryTypeCase_) { + case 2: + if (!getGcePd().equals(other.getGcePd())) return false; + break; + case 3: + if (!getGceHd().equals(other.getGceHd())) return false; + break; + case 0: + default: + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; } @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + MOUNT_PATH_FIELD_NUMBER; + hash = (53 * hash) + getMountPath().hashCode(); + switch (directoryTypeCase_) { + case 2: + hash = (37 * hash) + GCE_PD_FIELD_NUMBER; + hash = (53 * hash) + getGcePd().hashCode(); + break; + case 3: + hash = (37 * hash) + GCE_HD_FIELD_NUMBER; + hash = (53 * hash) + getGceHd().hashCode(); + break; + case 0: + default: + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - } - - public interface ReadinessCheckOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) - com.google.protobuf.MessageOrBuilder { - - /** - * - * - *
            -     * Optional. Path to which the request should be sent.
            -     * 
            - * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The path. - */ - java.lang.String getPath(); - - /** - * - * - *
            -     * Optional. Path to which the request should be sent.
            -     * 
            - * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for path. - */ - com.google.protobuf.ByteString getPathBytes(); - - /** - * - * - *
            -     * Optional. Port to which the request should be sent.
            -     * 
            - * - * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The port. - */ - int getPort(); - } - - /** - * - * - *
            -   * A readiness check to be performed on a workstation.
            -   * 
            - * - * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck} - */ - public static final class ReadinessCheck extends com.google.protobuf.GeneratedMessage - implements - // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) - ReadinessCheckOrBuilder { - private static final long serialVersionUID = 0L; - static { - com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( - com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, - /* major= */ 4, - /* minor= */ 33, - /* patch= */ 2, - /* suffix= */ "", - "ReadinessCheck"); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - // Use ReadinessCheck.newBuilder() to construct. - private ReadinessCheck(com.google.protobuf.GeneratedMessage.Builder builder) { - super(builder); + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - private ReadinessCheck() { - path_ = ""; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_ReadinessCheck_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_ReadinessCheck_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder.class); - } - - public static final int PATH_FIELD_NUMBER = 1; - - @SuppressWarnings("serial") - private volatile java.lang.Object path_ = ""; - - /** - * - * - *
            -     * Optional. Path to which the request should be sent.
            -     * 
            - * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The path. - */ - @java.lang.Override - public java.lang.String getPath() { - java.lang.Object ref = path_; - 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(); - path_ = s; - return s; - } - } - - /** - * - * - *
            -     * Optional. Path to which the request should be sent.
            -     * 
            - * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for path. - */ - @java.lang.Override - public com.google.protobuf.ByteString getPathBytes() { - java.lang.Object ref = path_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - path_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - public static final int PORT_FIELD_NUMBER = 2; - private int port_ = 0; - - /** - * - * - *
            -     * Optional. Port to which the request should be sent.
            -     * 
            - * - * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The port. - */ - @java.lang.Override - public int getPort() { - return port_; - } - - 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(path_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 1, path_); - } - if (port_ != 0) { - output.writeInt32(2, port_); - } - 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(path_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(1, path_); - } - if (port_ != 0) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, port_); - } - 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.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck other = - (com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) obj; - - if (!getPath().equals(other.getPath())) return false; - if (getPort() != other.getPort()) 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) + PATH_FIELD_NUMBER; - hash = (53 * hash) + getPath().hashCode(); - hash = (37 * hash) + PORT_FIELD_NUMBER; - hash = (53 * hash) + getPort(); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + 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.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( - byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( - java.io.InputStream input) throws java.io.IOException { + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + 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.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -16241,15 +19261,16 @@ public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCh PARSER, input, extensionRegistry); } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { return com.google.protobuf.GeneratedMessage.parseWithIOException( PARSER, input, extensionRegistry); } @@ -16264,7 +19285,7 @@ public static Builder newBuilder() { } public static Builder newBuilder( - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck prototype) { + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @@ -16283,33 +19304,35 @@ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.Builder * * *
            -     * A readiness check to be performed on a workstation.
            +     * A directory to persist across workstation sessions. Updates to this field
            +     * will not update existing workstations and will only take effect on new
            +     * workstations.
                  * 
            * - * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck} + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory} */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder { + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectoryOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_ReadinessCheck_descriptor; + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_ReadinessCheck_fieldAccessorTable + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder .class); } // Construct using - // com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.newBuilder() + // com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.newBuilder() private Builder() {} private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { @@ -16320,27 +19343,34 @@ private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { public Builder clear() { super.clear(); bitField0_ = 0; - path_ = ""; - port_ = 0; + if (gcePdBuilder_ != null) { + gcePdBuilder_.clear(); + } + if (gceHdBuilder_ != null) { + gceHdBuilder_.clear(); + } + mountPath_ = ""; + directoryTypeCase_ = 0; + directoryType_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_ReadinessCheck_descriptor; + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_descriptor; } @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory getDefaultInstanceForType() { - return com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory .getDefaultInstance(); } @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck build() { - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck result = + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory build() { + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); @@ -16349,33 +19379,44 @@ public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck bui } @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck buildPartial() { - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck result = - new com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck(this); + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory result = + new com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory(this); if (bitField0_ != 0) { buildPartial0(result); } + buildPartialOneofs(result); onBuilt(); return result; } private void buildPartial0( - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck result) { + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory result) { int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.path_ = path_; + if (((from_bitField0_ & 0x00000004) != 0)) { + result.mountPath_ = mountPath_; } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.port_ = port_; + } + + private void buildPartialOneofs( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory result) { + result.directoryTypeCase_ = directoryTypeCase_; + result.directoryType_ = this.directoryType_; + if (directoryTypeCase_ == 2 && gcePdBuilder_ != null) { + result.directoryType_ = gcePdBuilder_.build(); + } + if (directoryTypeCase_ == 3 && gceHdBuilder_ != null) { + result.directoryType_ = gceHdBuilder_.build(); } } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other - instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) { + instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) { return mergeFrom( - (com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) other); + (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) other); } else { super.mergeFrom(other); return this; @@ -16383,17 +19424,30 @@ public Builder mergeFrom(com.google.protobuf.Message other) { } public Builder mergeFrom( - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck other) { + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory other) { if (other - == com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + == com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory .getDefaultInstance()) return this; - if (!other.getPath().isEmpty()) { - path_ = other.path_; - bitField0_ |= 0x00000001; + if (!other.getMountPath().isEmpty()) { + mountPath_ = other.mountPath_; + bitField0_ |= 0x00000004; onChanged(); } - if (other.getPort() != 0) { - setPort(other.getPort()); + switch (other.getDirectoryTypeCase()) { + case GCE_PD: + { + mergeGcePd(other.getGcePd()); + break; + } + case GCE_HD: + { + mergeGceHd(other.getGceHd()); + break; + } + case DIRECTORYTYPE_NOT_SET: + { + break; + } } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); @@ -16423,16 +19477,22 @@ public Builder mergeFrom( break; case 10: { - path_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; + mountPath_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; break; } // case 10 - case 16: + case 18: { - port_ = input.readInt32(); - bitField0_ |= 0x00000002; + input.readMessage(internalGetGcePdFieldBuilder().getBuilder(), extensionRegistry); + directoryTypeCase_ = 2; break; - } // case 16 + } // case 18 + case 26: + { + input.readMessage(internalGetGceHdFieldBuilder().getBuilder(), extensionRegistry); + directoryTypeCase_ = 3; + break; + } // case 26 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -16450,53 +19510,80 @@ public Builder mergeFrom( return this; } + private int directoryTypeCase_ = 0; + private java.lang.Object directoryType_; + + public DirectoryTypeCase getDirectoryTypeCase() { + return DirectoryTypeCase.forNumber(directoryTypeCase_); + } + + public Builder clearDirectoryType() { + directoryTypeCase_ = 0; + directoryType_ = null; + onChanged(); + return this; + } + private int bitField0_; - private java.lang.Object path_ = ""; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDiskOrBuilder> + gcePdBuilder_; /** * * *
            -       * Optional. Path to which the request should be sent.
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
                    * 
            * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * * - * @return The path. + * @return Whether the gcePd field is set. */ - public java.lang.String getPath() { - java.lang.Object ref = path_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - path_ = s; - return s; - } else { - return (java.lang.String) ref; - } + @java.lang.Override + public boolean hasGcePd() { + return directoryTypeCase_ == 2; } /** * * *
            -       * Optional. Path to which the request should be sent.
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
                    * 
            * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * * - * @return The bytes for path. + * @return The gcePd. */ - public com.google.protobuf.ByteString getPathBytes() { - java.lang.Object ref = path_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - path_ = b; - return b; + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + getGcePd() { + if (gcePdBuilder_ == null) { + if (directoryTypeCase_ == 2) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_; + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance(); } else { - return (com.google.protobuf.ByteString) ref; + if (directoryTypeCase_ == 2) { + return gcePdBuilder_.getMessage(); + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance(); } } @@ -16504,21 +19591,27 @@ public com.google.protobuf.ByteString getPathBytes() { * * *
            -       * Optional. Path to which the request should be sent.
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
                    * 
            * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The path to set. - * @return This builder for chaining. + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * */ - public Builder setPath(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder setGcePd( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + value) { + if (gcePdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + directoryType_ = value; + onChanged(); + } else { + gcePdBuilder_.setMessage(value); } - path_ = value; - bitField0_ |= 0x00000001; - onChanged(); + directoryTypeCase_ = 2; return this; } @@ -16526,17 +19619,24 @@ public Builder setPath(java.lang.String value) { * * *
            -       * Optional. Path to which the request should be sent.
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
                    * 
            * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * */ - public Builder clearPath() { - path_ = getDefaultInstance().getPath(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); + public Builder setGcePd( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.Builder + builderForValue) { + if (gcePdBuilder_ == null) { + directoryType_ = builderForValue.build(); + onChanged(); + } else { + gcePdBuilder_.setMessage(builderForValue.build()); + } + directoryTypeCase_ = 2; return this; } @@ -16544,2921 +19644,12596 @@ public Builder clearPath() { * * *
            -       * Optional. Path to which the request should be sent.
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
                    * 
            * - * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for path to set. - * @return This builder for chaining. + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * */ - public Builder setPathBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeGcePd( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk + value) { + if (gcePdBuilder_ == null) { + if (directoryTypeCase_ == 2 + && directoryType_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance()) { + directoryType_ = + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.newBuilder( + (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_) + .mergeFrom(value) + .buildPartial(); + } else { + directoryType_ = value; + } + onChanged(); + } else { + if (directoryTypeCase_ == 2) { + gcePdBuilder_.mergeFrom(value); + } else { + gcePdBuilder_.setMessage(value); + } } - checkByteStringIsUtf8(value); - path_ = value; - bitField0_ |= 0x00000001; - onChanged(); + directoryTypeCase_ = 2; return this; } - private int port_; - /** * * *
            -       * Optional. Port to which the request should be sent.
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
                    * 
            * - * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The port. + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * */ - @java.lang.Override - public int getPort() { - return port_; + public Builder clearGcePd() { + if (gcePdBuilder_ == null) { + if (directoryTypeCase_ == 2) { + directoryTypeCase_ = 0; + directoryType_ = null; + onChanged(); + } + } else { + if (directoryTypeCase_ == 2) { + directoryTypeCase_ = 0; + directoryType_ = null; + } + gcePdBuilder_.clear(); + } + return this; } /** * * *
            -       * Optional. Port to which the request should be sent.
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
                    * 
            * - * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.Builder + getGcePdBuilder() { + return internalGetGcePdFieldBuilder().getBuilder(); + } + + /** * - * @param value The port to set. - * @return This builder for chaining. + * + *
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * */ - public Builder setPort(int value) { + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDiskOrBuilder + getGcePdOrBuilder() { + if ((directoryTypeCase_ == 2) && (gcePdBuilder_ != null)) { + return gcePdBuilder_.getMessageOrBuilder(); + } else { + if (directoryTypeCase_ == 2) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_; + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance(); + } + } - port_ = value; - bitField0_ |= 0x00000002; + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk gce_pd = 2; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDiskOrBuilder> + internalGetGcePdFieldBuilder() { + if (gcePdBuilder_ == null) { + if (!(directoryTypeCase_ == 2)) { + directoryType_ = + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.getDefaultInstance(); + } + gcePdBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDiskOrBuilder>( + (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceRegionalPersistentDisk) + directoryType_, + getParentForChildren(), + isClean()); + directoryType_ = null; + } + directoryTypeCase_ = 2; onChanged(); - return this; + return gcePdBuilder_; } + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailabilityOrBuilder> + gceHdBuilder_; + /** * * *
            -       * Optional. Port to which the request should be sent.
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
                    * 
            * - * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * * - * @return This builder for chaining. + * @return Whether the gceHd field is set. */ - public Builder clearPort() { - bitField0_ = (bitField0_ & ~0x00000002); - port_ = 0; - onChanged(); - return this; + @java.lang.Override + public boolean hasGceHd() { + return directoryTypeCase_ == 3; } - // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) - } - - // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) - private static final com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck - DEFAULT_INSTANCE; + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + * + * @return The gceHd. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + getGceHd() { + if (gceHdBuilder_ == null) { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_; + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance(); + } else { + if (directoryTypeCase_ == 3) { + return gceHdBuilder_.getMessage(); + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance(); + } + } - static { - DEFAULT_INSTANCE = - new com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck(); - } + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + public Builder setGceHd( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + value) { + if (gceHdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + directoryType_ = value; + onChanged(); + } else { + gceHdBuilder_.setMessage(value); + } + directoryTypeCase_ = 3; + return this; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck - getDefaultInstance() { - return DEFAULT_INSTANCE; - } + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + public Builder setGceHd( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.Builder + builderForValue) { + if (gceHdBuilder_ == null) { + directoryType_ = builderForValue.build(); + onChanged(); + } else { + gceHdBuilder_.setMessage(builderForValue.build()); + } + directoryTypeCase_ = 3; + return this; + } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public ReadinessCheck parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + public Builder mergeGceHd( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability + value) { + if (gceHdBuilder_ == null) { + if (directoryTypeCase_ == 3 + && directoryType_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance()) { + directoryType_ = + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.newBuilder( + (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_) + .mergeFrom(value) + .buildPartial(); + } else { + directoryType_ = value; } - }; - - public static com.google.protobuf.Parser parser() { - return PARSER; - } + onChanged(); + } else { + if (directoryTypeCase_ == 3) { + gceHdBuilder_.mergeFrom(value); + } else { + gceHdBuilder_.setMessage(value); + } + } + directoryTypeCase_ = 3; + return this; + } - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + public Builder clearGceHd() { + if (gceHdBuilder_ == null) { + if (directoryTypeCase_ == 3) { + directoryTypeCase_ = 0; + directoryType_ = null; + onChanged(); + } + } else { + if (directoryTypeCase_ == 3) { + directoryTypeCase_ = 0; + directoryType_ = null; + } + gceHdBuilder_.clear(); + } + return this; + } - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.Builder + getGceHdBuilder() { + return internalGetGceHdFieldBuilder().getBuilder(); + } - private int bitField0_; - public static final int NAME_FIELD_NUMBER = 1; + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailabilityOrBuilder + getGceHdOrBuilder() { + if ((directoryTypeCase_ == 3) && (gceHdBuilder_ != null)) { + return gceHdBuilder_.getMessageOrBuilder(); + } else { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_; + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance(); + } + } - @SuppressWarnings("serial") - private volatile java.lang.Object name_ = ""; + /** + * + * + *
            +       * A PersistentDirectory backed by a Compute Engine hyperdisk high
            +       * availability disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability gce_hd = 3; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailabilityOrBuilder> + internalGetGceHdFieldBuilder() { + if (gceHdBuilder_ == null) { + if (!(directoryTypeCase_ == 3)) { + directoryType_ = + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.getDefaultInstance(); + } + gceHdBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailabilityOrBuilder>( + (com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .GceHyperdiskBalancedHighAvailability) + directoryType_, + getParentForChildren(), + isClean()); + directoryType_ = null; + } + directoryTypeCase_ = 3; + onChanged(); + return gceHdBuilder_; + } - /** - * - * - *
            -   * Full name of this workstation configuration.
            -   * 
            - * - * string name = 1; - * - * @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; - } - } + private java.lang.Object mountPath_ = ""; - /** - * - * - *
            -   * Full name of this workstation configuration.
            -   * 
            - * - * string name = 1; - * - * @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; - } - } + /** + * + * + *
            +       * Optional. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The mountPath. + */ + public java.lang.String getMountPath() { + java.lang.Object ref = mountPath_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + mountPath_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } - public static final int DISPLAY_NAME_FIELD_NUMBER = 2; + /** + * + * + *
            +       * Optional. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for mountPath. + */ + public com.google.protobuf.ByteString getMountPathBytes() { + java.lang.Object ref = mountPath_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + mountPath_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - @SuppressWarnings("serial") - private volatile java.lang.Object displayName_ = ""; + /** + * + * + *
            +       * Optional. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The mountPath to set. + * @return This builder for chaining. + */ + public Builder setMountPath(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + mountPath_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } - /** - * - * - *
            -   * Optional. Human-readable name for this workstation configuration.
            -   * 
            - * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The displayName. - */ - @java.lang.Override - public java.lang.String getDisplayName() { - java.lang.Object ref = displayName_; - 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(); - displayName_ = s; - return s; - } - } + /** + * + * + *
            +       * Optional. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearMountPath() { + mountPath_ = getDefaultInstance().getMountPath(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } - /** - * - * - *
            -   * Optional. Human-readable name for this workstation configuration.
            -   * 
            - * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for displayName. - */ - @java.lang.Override - public com.google.protobuf.ByteString getDisplayNameBytes() { - java.lang.Object ref = displayName_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - displayName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
            +       * Optional. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for mountPath to set. + * @return This builder for chaining. + */ + public Builder setMountPathBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + mountPath_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) } - } - public static final int UID_FIELD_NUMBER = 3; + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory) + private static final com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + DEFAULT_INSTANCE; - @SuppressWarnings("serial") - private volatile java.lang.Object uid_ = ""; + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory(); + } - /** - * - * - *
            -   * Output only. A system-assigned unique identifier for this workstation
            -   * configuration.
            -   * 
            - * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The uid. - */ - @java.lang.Override - public java.lang.String getUid() { - java.lang.Object ref = uid_; - 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(); - uid_ = s; - return s; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + getDefaultInstance() { + return DEFAULT_INSTANCE; } - } - /** - * - * - *
            -   * Output only. A system-assigned unique identifier for this workstation
            -   * configuration.
            -   * 
            - * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for uid. - */ - @java.lang.Override - public com.google.protobuf.ByteString getUidBytes() { - java.lang.Object ref = uid_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - uid_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public PersistentDirectory parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; } - } - public static final int RECONCILING_FIELD_NUMBER = 4; - private boolean reconciling_ = false; + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } - /** - * - * - *
            -   * Output only. Indicates whether this workstation configuration is currently
            -   * being updated to match its intended state.
            -   * 
            - * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The reconciling. - */ - @java.lang.Override - public boolean getReconciling() { - return reconciling_; + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } } - public static final int ANNOTATIONS_FIELD_NUMBER = 5; + public interface EphemeralDirectoryOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) + com.google.protobuf.MessageOrBuilder { - private static final class AnnotationsDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_AnnotationsEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + /** + * + * + *
            +     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + * + * @return Whether the gcePd field is set. + */ + boolean hasGcePd(); - @SuppressWarnings("serial") - private com.google.protobuf.MapField annotations_; + /** + * + * + *
            +     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + * + * @return The gcePd. + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + getGcePd(); - private com.google.protobuf.MapField - internalGetAnnotations() { - if (annotations_ == null) { - return com.google.protobuf.MapField.emptyMapField(AnnotationsDefaultEntryHolder.defaultEntry); - } - return annotations_; - } + /** + * + * + *
            +     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDiskOrBuilder + getGcePdOrBuilder(); - public int getAnnotationsCount() { - return internalGetAnnotations().getMap().size(); + /** + * + * + *
            +     * Required. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The mountPath. + */ + java.lang.String getMountPath(); + + /** + * + * + *
            +     * Required. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for mountPath. + */ + com.google.protobuf.ByteString getMountPathBytes(); + + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.DirectoryTypeCase + getDirectoryTypeCase(); } /** * * *
            -   * Optional. Client-specified annotations.
            +   * An ephemeral directory which won't persist across workstation sessions. It
            +   * is freshly created on every workstation start operation.
                * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory} */ - @java.lang.Override - public boolean containsAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - return internalGetAnnotations().getMap().containsKey(key); - } + public static final class EphemeralDirectory extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) + EphemeralDirectoryOrBuilder { + private static final long serialVersionUID = 0L; - /** Use {@link #getAnnotationsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getAnnotations() { - return getAnnotationsMap(); - } - - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.Map getAnnotationsMap() { - return internalGetAnnotations().getMap(); - } + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "EphemeralDirectory"); + } - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public /* nullable */ java.lang.String getAnnotationsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + // Use EphemeralDirectory.newBuilder() to construct. + private EphemeralDirectory(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); } - java.util.Map map = internalGetAnnotations().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } - /** - * - * - *
            -   * Optional. Client-specified annotations.
            -   * 
            - * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.lang.String getAnnotationsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + private EphemeralDirectory() { + mountPath_ = ""; } - java.util.Map map = internalGetAnnotations().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_descriptor; } - return map.get(key); - } - public static final int LABELS_FIELD_NUMBER = 18; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder + .class); + } - private static final class LabelsDefaultEntryHolder { - static final com.google.protobuf.MapEntry defaultEntry = - com.google.protobuf.MapEntry.newDefaultInstance( - com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_LabelsEntry_descriptor, - com.google.protobuf.WireFormat.FieldType.STRING, - "", - com.google.protobuf.WireFormat.FieldType.STRING, - ""); - } + public interface GcePersistentDiskOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) + com.google.protobuf.MessageOrBuilder { - @SuppressWarnings("serial") - private com.google.protobuf.MapField labels_; + /** + * + * + *
            +       * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +       * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The diskType. + */ + java.lang.String getDiskType(); - private com.google.protobuf.MapField internalGetLabels() { - if (labels_ == null) { - return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); - } - return labels_; - } + /** + * + * + *
            +       * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +       * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for diskType. + */ + com.google.protobuf.ByteString getDiskTypeBytes(); - public int getLabelsCount() { - return internalGetLabels().getMap().size(); - } + /** + * + * + *
            +       * Optional. Name of the snapshot to use as the source for the disk. Must
            +       * be empty if
            +       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * is set. Must be empty if
            +       * [read_only][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +       * is false. Updating
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, see
            +       * [the filesystems available in Container-Optimized
            +       * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceSnapshot. + */ + java.lang.String getSourceSnapshot(); - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation configuration and that are also propagated
            -   * to the underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public boolean containsLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - return internalGetLabels().getMap().containsKey(key); - } + /** + * + * + *
            +       * Optional. Name of the snapshot to use as the source for the disk. Must
            +       * be empty if
            +       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * is set. Must be empty if
            +       * [read_only][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +       * is false. Updating
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, see
            +       * [the filesystems available in Container-Optimized
            +       * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceSnapshot. + */ + com.google.protobuf.ByteString getSourceSnapshotBytes(); - /** Use {@link #getLabelsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getLabels() { - return getLabelsMap(); - } + /** + * + * + *
            +       * Optional. Name of the disk image to use as the source for the disk.
            +       * Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * is set. Updating
            +       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, please
            +       * refer to the [COS
            +       * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceImage. + */ + java.lang.String getSourceImage(); - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation configuration and that are also propagated
            -   * to the underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.util.Map getLabelsMap() { - return internalGetLabels().getMap(); - } + /** + * + * + *
            +       * Optional. Name of the disk image to use as the source for the disk.
            +       * Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * is set. Updating
            +       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, please
            +       * refer to the [COS
            +       * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceImage. + */ + com.google.protobuf.ByteString getSourceImageBytes(); - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation configuration and that are also propagated
            -   * to the underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public /* nullable */ java.lang.String getLabelsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + /** + * + * + *
            +       * Optional. Whether the disk is read only. If true, the disk may be
            +       * shared by multiple VMs and
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * must be set.
            +       * 
            + * + * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The readOnly. + */ + boolean getReadOnly(); } - java.util.Map map = internalGetLabels().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; - } - /** - * - * - *
            -   * Optional.
            -   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -   * are applied to the workstation configuration and that are also propagated
            -   * to the underlying Compute Engine resources.
            -   * 
            - * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; - */ - @java.lang.Override - public java.lang.String getLabelsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetLabels().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); - } - return map.get(key); - } + /** + * + * + *
            +     * An EphemeralDirectory is backed by a Compute Engine persistent disk.
            +     * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk} + */ + public static final class GcePersistentDisk extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) + GcePersistentDiskOrBuilder { + private static final long serialVersionUID = 0L; - public static final int CREATE_TIME_FIELD_NUMBER = 6; - private com.google.protobuf.Timestamp createTime_; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "GcePersistentDisk"); + } - /** - * - * - *
            -   * Output only. Time when this workstation configuration was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the createTime field is set. - */ - @java.lang.Override - public boolean hasCreateTime() { - return ((bitField0_ & 0x00000001) != 0); - } + // Use GcePersistentDisk.newBuilder() to construct. + private GcePersistentDisk(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } - /** - * - * - *
            -   * Output only. Time when this workstation configuration was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The createTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getCreateTime() { - return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; - } + private GcePersistentDisk() { + diskType_ = ""; + sourceSnapshot_ = ""; + sourceImage_ = ""; + } - /** - * - * - *
            -   * Output only. Time when this workstation configuration was created.
            -   * 
            - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { - return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; - } + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_descriptor; + } - public static final int UPDATE_TIME_FIELD_NUMBER = 7; - private com.google.protobuf.Timestamp updateTime_; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.Builder.class); + } - /** - * - * - *
            -   * Output only. Time when this workstation configuration was most recently
            -   * updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the updateTime field is set. - */ - @java.lang.Override - public boolean hasUpdateTime() { - return ((bitField0_ & 0x00000002) != 0); - } + public static final int DISK_TYPE_FIELD_NUMBER = 1; - /** - * - * - *
            -   * Output only. Time when this workstation configuration was most recently
            -   * updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The updateTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getUpdateTime() { - return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; - } + @SuppressWarnings("serial") + private volatile java.lang.Object diskType_ = ""; - /** - * - * - *
            -   * Output only. Time when this workstation configuration was most recently
            -   * updated.
            -   * 
            - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { - return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; - } + /** + * + * + *
            +       * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +       * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The diskType. + */ + @java.lang.Override + public java.lang.String getDiskType() { + java.lang.Object ref = diskType_; + 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(); + diskType_ = s; + return s; + } + } - public static final int DELETE_TIME_FIELD_NUMBER = 8; - private com.google.protobuf.Timestamp deleteTime_; + /** + * + * + *
            +       * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +       * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for diskType. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDiskTypeBytes() { + java.lang.Object ref = diskType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + diskType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - /** - * - * - *
            -   * Output only. Time when this workstation configuration was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return Whether the deleteTime field is set. - */ - @java.lang.Override - public boolean hasDeleteTime() { - return ((bitField0_ & 0x00000004) != 0); - } + public static final int SOURCE_SNAPSHOT_FIELD_NUMBER = 2; - /** - * - * - *
            -   * Output only. Time when this workstation configuration was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * - * @return The deleteTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getDeleteTime() { - return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; - } + @SuppressWarnings("serial") + private volatile java.lang.Object sourceSnapshot_ = ""; - /** - * - * - *
            -   * Output only. Time when this workstation configuration was soft-deleted.
            -   * 
            - * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { - return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; - } + /** + * + * + *
            +       * Optional. Name of the snapshot to use as the source for the disk. Must
            +       * be empty if
            +       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * is set. Must be empty if
            +       * [read_only][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +       * is false. Updating
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, see
            +       * [the filesystems available in Container-Optimized
            +       * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceSnapshot. + */ + @java.lang.Override + public java.lang.String getSourceSnapshot() { + java.lang.Object ref = sourceSnapshot_; + 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(); + sourceSnapshot_ = s; + return s; + } + } - public static final int ETAG_FIELD_NUMBER = 9; + /** + * + * + *
            +       * Optional. Name of the snapshot to use as the source for the disk. Must
            +       * be empty if
            +       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * is set. Must be empty if
            +       * [read_only][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +       * is false. Updating
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, see
            +       * [the filesystems available in Container-Optimized
            +       * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceSnapshot. + */ + @java.lang.Override + public com.google.protobuf.ByteString getSourceSnapshotBytes() { + java.lang.Object ref = sourceSnapshot_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceSnapshot_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - @SuppressWarnings("serial") - private volatile java.lang.Object etag_ = ""; + public static final int SOURCE_IMAGE_FIELD_NUMBER = 3; - /** - * - * - *
            -   * Optional. Checksum computed by the server. May be sent on update and delete
            -   * requests to make sure that the client has an up-to-date value before
            -   * proceeding.
            -   * 
            - * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The etag. - */ - @java.lang.Override - public java.lang.String getEtag() { - java.lang.Object ref = etag_; - 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(); - etag_ = s; - return s; - } - } + @SuppressWarnings("serial") + private volatile java.lang.Object sourceImage_ = ""; - /** - * - * - *
            -   * Optional. Checksum computed by the server. May be sent on update and delete
            -   * requests to make sure that the client has an up-to-date value before
            -   * proceeding.
            -   * 
            - * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for etag. - */ - @java.lang.Override - public com.google.protobuf.ByteString getEtagBytes() { - java.lang.Object ref = etag_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - etag_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + /** + * + * + *
            +       * Optional. Name of the disk image to use as the source for the disk.
            +       * Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * is set. Updating
            +       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, please
            +       * refer to the [COS
            +       * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceImage. + */ + @java.lang.Override + public java.lang.String getSourceImage() { + java.lang.Object ref = sourceImage_; + 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(); + sourceImage_ = s; + return s; + } + } - public static final int IDLE_TIMEOUT_FIELD_NUMBER = 10; - private com.google.protobuf.Duration idleTimeout_; + /** + * + * + *
            +       * Optional. Name of the disk image to use as the source for the disk.
            +       * Must be empty if
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * is set. Updating
            +       * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +       * will update content in the ephemeral directory after the workstation is
            +       * restarted.
            +       *
            +       * Only file systems supported by Container-Optimized OS (COS)
            +       * are explicitly supported. For a list of supported file systems, please
            +       * refer to the [COS
            +       * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +       *
            +       * This field is mutable.
            +       * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceImage. + */ + @java.lang.Override + public com.google.protobuf.ByteString getSourceImageBytes() { + java.lang.Object ref = sourceImage_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceImage_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - /** - * - * - *
            -   * Optional. Number of seconds to wait before automatically stopping a
            -   * workstation after it last received user traffic.
            -   *
            -   * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -   * configuration should never time out due to idleness.
            -   * Provide
            -   * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -   * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -   * The default is `"1200s"` (20 minutes).
            -   * 
            - * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the idleTimeout field is set. - */ - @java.lang.Override - public boolean hasIdleTimeout() { - return ((bitField0_ & 0x00000008) != 0); - } + public static final int READ_ONLY_FIELD_NUMBER = 4; + private boolean readOnly_ = false; - /** - * - * - *
            -   * Optional. Number of seconds to wait before automatically stopping a
            -   * workstation after it last received user traffic.
            -   *
            -   * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -   * configuration should never time out due to idleness.
            -   * Provide
            -   * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -   * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -   * The default is `"1200s"` (20 minutes).
            -   * 
            - * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The idleTimeout. - */ - @java.lang.Override - public com.google.protobuf.Duration getIdleTimeout() { - return idleTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : idleTimeout_; - } + /** + * + * + *
            +       * Optional. Whether the disk is read only. If true, the disk may be
            +       * shared by multiple VMs and
            +       * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +       * must be set.
            +       * 
            + * + * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The readOnly. + */ + @java.lang.Override + public boolean getReadOnly() { + return readOnly_; + } - /** - * - * - *
            -   * Optional. Number of seconds to wait before automatically stopping a
            -   * workstation after it last received user traffic.
            -   *
            -   * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -   * configuration should never time out due to idleness.
            -   * Provide
            -   * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -   * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -   * The default is `"1200s"` (20 minutes).
            -   * 
            - * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder() { - return idleTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : idleTimeout_; - } + private byte memoizedIsInitialized = -1; - public static final int RUNNING_TIMEOUT_FIELD_NUMBER = 11; - private com.google.protobuf.Duration runningTimeout_; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - /** - * - * - *
            -   * Optional. Number of seconds that a workstation can run until it is
            -   * automatically shut down. We recommend that workstations be shut down daily
            -   * to reduce costs and so that security updates can be applied upon restart.
            -   * The
            -   * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            -   * and
            -   * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -   * fields are independent of each other. Note that the
            -   * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -   * field shuts down VMs after the specified time, regardless of whether or not
            -   * the VMs are idle.
            -   *
            -   * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -   * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -   * that workstations using this configuration should never time out. If
            -   * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            -   * is set, it must be greater than `"0s"` and less than
            -   * `"86400s"` (24 hours).
            -   *
            -   * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -   * with this configuration have no maximum running time. This is strongly
            -   * discouraged because you incur costs and will not pick up security updates.
            -   * 
            - * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the runningTimeout field is set. - */ - @java.lang.Override - public boolean hasRunningTimeout() { - return ((bitField0_ & 0x00000010) != 0); - } + memoizedIsInitialized = 1; + return true; + } - /** - * - * - *
            -   * Optional. Number of seconds that a workstation can run until it is
            -   * automatically shut down. We recommend that workstations be shut down daily
            -   * to reduce costs and so that security updates can be applied upon restart.
            -   * The
            -   * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            -   * and
            -   * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -   * fields are independent of each other. Note that the
            -   * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -   * field shuts down VMs after the specified time, regardless of whether or not
            -   * the VMs are idle.
            -   *
            -   * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -   * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -   * that workstations using this configuration should never time out. If
            -   * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            -   * is set, it must be greater than `"0s"` and less than
            -   * `"86400s"` (24 hours).
            -   *
            -   * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -   * with this configuration have no maximum running time. This is strongly
            -   * discouraged because you incur costs and will not pick up security updates.
            -   * 
            - * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The runningTimeout. - */ - @java.lang.Override - public com.google.protobuf.Duration getRunningTimeout() { - return runningTimeout_ == null - ? com.google.protobuf.Duration.getDefaultInstance() - : runningTimeout_; - } + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(diskType_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, diskType_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, sourceSnapshot_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceImage_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, sourceImage_); + } + if (readOnly_ != false) { + output.writeBool(4, readOnly_); + } + getUnknownFields().writeTo(output); + } - /** - * - * - *
            -   * Optional. Number of seconds that a workstation can run until it is
            -   * automatically shut down. We recommend that workstations be shut down daily
            -   * to reduce costs and so that security updates can be applied upon restart.
            -   * The
            -   * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            -   * and
            -   * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -   * fields are independent of each other. Note that the
            -   * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -   * field shuts down VMs after the specified time, regardless of whether or not
            -   * the VMs are idle.
            -   *
            -   * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -   * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -   * that workstations using this configuration should never time out. If
            -   * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            -   * is set, it must be greater than `"0s"` and less than
            -   * `"86400s"` (24 hours).
            -   *
            -   * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -   * with this configuration have no maximum running time. This is strongly
            -   * discouraged because you incur costs and will not pick up security updates.
            -   * 
            - * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.protobuf.DurationOrBuilder getRunningTimeoutOrBuilder() { - return runningTimeout_ == null - ? com.google.protobuf.Duration.getDefaultInstance() - : runningTimeout_; - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - public static final int HOST_FIELD_NUMBER = 12; - private com.google.cloud.workstations.v1beta.WorkstationConfig.Host host_; + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(diskType_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, diskType_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceSnapshot_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, sourceSnapshot_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sourceImage_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, sourceImage_); + } + if (readOnly_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, readOnly_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - /** - * - * - *
            -   * Optional. Runtime host for the workstation.
            -   * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the host field is set. - */ - @java.lang.Override - public boolean hasHost() { - return ((bitField0_ & 0x00000020) != 0); - } + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk + other = + (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + obj; - /** - * - * - *
            -   * Optional. Runtime host for the workstation.
            -   * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The host. - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host getHost() { - return host_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.getDefaultInstance() - : host_; - } + if (!getDiskType().equals(other.getDiskType())) return false; + if (!getSourceSnapshot().equals(other.getSourceSnapshot())) return false; + if (!getSourceImage().equals(other.getSourceImage())) return false; + if (getReadOnly() != other.getReadOnly()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - /** - * - * - *
            -   * Optional. Runtime host for the workstation.
            -   * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.HostOrBuilder getHostOrBuilder() { - return host_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.getDefaultInstance() - : host_; - } + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + DISK_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getDiskType().hashCode(); + hash = (37 * hash) + SOURCE_SNAPSHOT_FIELD_NUMBER; + hash = (53 * hash) + getSourceSnapshot().hashCode(); + hash = (37 * hash) + SOURCE_IMAGE_FIELD_NUMBER; + hash = (53 * hash) + getSourceImage().hashCode(); + hash = (37 * hash) + READ_ONLY_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReadOnly()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - public static final int PERSISTENT_DIRECTORIES_FIELD_NUMBER = 13; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - @SuppressWarnings("serial") - private java.util.List - persistentDirectories_; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - /** - * - * - *
            -   * Optional. Directories to persist across workstation sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.List - getPersistentDirectoriesList() { - return persistentDirectories_; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - /** - * - * - *
            -   * Optional. Directories to persist across workstation sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.List< - ? extends - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectoryOrBuilder> - getPersistentDirectoriesOrBuilderList() { - return persistentDirectories_; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - /** - * - * - *
            -   * Optional. Directories to persist across workstation sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public int getPersistentDirectoriesCount() { - return persistentDirectories_.size(); - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - /** - * - * - *
            -   * Optional. Directories to persist across workstation sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - getPersistentDirectories(int index) { - return persistentDirectories_.get(index); - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - /** - * - * - *
            -   * Optional. Directories to persist across workstation sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectoryOrBuilder - getPersistentDirectoriesOrBuilder(int index) { - return persistentDirectories_.get(index); - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - public static final int EPHEMERAL_DIRECTORIES_FIELD_NUMBER = 22; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } - @SuppressWarnings("serial") - private java.util.List - ephemeralDirectories_; + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } - /** - * - * - *
            -   * Optional. Ephemeral directories which won't persist across workstation
            -   * sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.List - getEphemeralDirectoriesList() { - return ephemeralDirectories_; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -   * Optional. Ephemeral directories which won't persist across workstation
            -   * sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.List< - ? extends - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder> - getEphemeralDirectoriesOrBuilderList() { - return ephemeralDirectories_; - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } - /** - * - * - *
            -   * Optional. Ephemeral directories which won't persist across workstation
            -   * sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public int getEphemeralDirectoriesCount() { - return ephemeralDirectories_.size(); - } + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
            -   * Optional. Ephemeral directories which won't persist across workstation
            -   * sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - getEphemeralDirectories(int index) { - return ephemeralDirectories_.get(index); - } + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } - /** - * - * - *
            -   * Optional. Ephemeral directories which won't persist across workstation
            -   * sessions.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder - getEphemeralDirectoriesOrBuilder(int index) { - return ephemeralDirectories_.get(index); - } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } - public static final int CONTAINER_FIELD_NUMBER = 14; - private com.google.cloud.workstations.v1beta.WorkstationConfig.Container container_; + public static Builder newBuilder( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - /** - * - * - *
            -   * Optional. Container that runs upon startup for each workstation using this
            -   * workstation configuration.
            -   * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the container field is set. - */ - @java.lang.Override - public boolean hasContainer() { - return ((bitField0_ & 0x00000040) != 0); - } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } - /** - * - * - *
            -   * Optional. Container that runs upon startup for each workstation using this
            -   * workstation configuration.
            -   * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The container. - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.Container getContainer() { - return container_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Container.getDefaultInstance() - : container_; - } + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } - /** - * - * - *
            -   * Optional. Container that runs upon startup for each workstation using this
            -   * workstation configuration.
            -   * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.ContainerOrBuilder - getContainerOrBuilder() { - return container_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Container.getDefaultInstance() - : container_; - } + /** + * + * + *
            +       * An EphemeralDirectory is backed by a Compute Engine persistent disk.
            +       * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDiskOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_descriptor; + } - public static final int ENCRYPTION_KEY_FIELD_NUMBER = 17; - private com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - encryptionKey_; + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.Builder.class); + } - /** - * - * - *
            -   * Immutable. Encrypts resources of this workstation configuration using a
            -   * customer-managed encryption key (CMEK).
            -   *
            -   * If specified, the boot disk of the Compute Engine instance and the
            -   * persistent disk are encrypted using this encryption key. If
            -   * this field is not set, the disks are encrypted using a generated
            -   * key. Customer-managed encryption keys do not protect disk metadata.
            -   *
            -   * If the customer-managed encryption key is rotated, when the workstation
            -   * instance is stopped, the system attempts to recreate the
            -   * persistent disk with the new version of the key. Be sure to keep
            -   * older versions of the key until the persistent disk is recreated.
            -   * Otherwise, data on the persistent disk might be lost.
            -   *
            -   * If the encryption key is revoked, the workstation session automatically
            -   * stops within 7 hours.
            -   *
            -   * Immutable after the workstation configuration is created.
            -   * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; - * - * - * @return Whether the encryptionKey field is set. - */ - @java.lang.Override - public boolean hasEncryptionKey() { - return ((bitField0_ & 0x00000080) != 0); - } + // Construct using + // com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.newBuilder() + private Builder() {} - /** - * - * - *
            -   * Immutable. Encrypts resources of this workstation configuration using a
            -   * customer-managed encryption key (CMEK).
            -   *
            -   * If specified, the boot disk of the Compute Engine instance and the
            -   * persistent disk are encrypted using this encryption key. If
            -   * this field is not set, the disks are encrypted using a generated
            -   * key. Customer-managed encryption keys do not protect disk metadata.
            -   *
            -   * If the customer-managed encryption key is rotated, when the workstation
            -   * instance is stopped, the system attempts to recreate the
            -   * persistent disk with the new version of the key. Be sure to keep
            -   * older versions of the key until the persistent disk is recreated.
            -   * Otherwise, data on the persistent disk might be lost.
            -   *
            -   * If the encryption key is revoked, the workstation session automatically
            -   * stops within 7 hours.
            -   *
            -   * Immutable after the workstation configuration is created.
            -   * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; - * - * - * @return The encryptionKey. - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - getEncryptionKey() { - return encryptionKey_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - .getDefaultInstance() - : encryptionKey_; - } + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } - /** - * - * - *
            -   * Immutable. Encrypts resources of this workstation configuration using a
            -   * customer-managed encryption key (CMEK).
            -   *
            -   * If specified, the boot disk of the Compute Engine instance and the
            -   * persistent disk are encrypted using this encryption key. If
            -   * this field is not set, the disks are encrypted using a generated
            -   * key. Customer-managed encryption keys do not protect disk metadata.
            -   *
            -   * If the customer-managed encryption key is rotated, when the workstation
            -   * instance is stopped, the system attempts to recreate the
            -   * persistent disk with the new version of the key. Be sure to keep
            -   * older versions of the key until the persistent disk is recreated.
            -   * Otherwise, data on the persistent disk might be lost.
            -   *
            -   * If the encryption key is revoked, the workstation session automatically
            -   * stops within 7 hours.
            -   *
            -   * Immutable after the workstation configuration is created.
            -   * 
            - * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKeyOrBuilder - getEncryptionKeyOrBuilder() { - return encryptionKey_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - .getDefaultInstance() - : encryptionKey_; - } - - public static final int READINESS_CHECKS_FIELD_NUMBER = 19; + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + diskType_ = ""; + sourceSnapshot_ = ""; + sourceImage_ = ""; + readOnly_ = false; + return this; + } - @SuppressWarnings("serial") - private java.util.List - readinessChecks_; + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_GcePersistentDisk_descriptor; + } - /** - * - * - *
            -   * Optional. Readiness checks to perform when starting a workstation using
            -   * this workstation configuration. Mark a workstation as running only after
            -   * all specified readiness checks return 200 status codes.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.List - getReadinessChecksList() { - return readinessChecks_; - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance(); + } - /** - * - * - *
            -   * Optional. Readiness checks to perform when starting a workstation using
            -   * this workstation configuration. Mark a workstation as running only after
            -   * all specified readiness checks return 200 status codes.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.List< - ? extends com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder> - getReadinessChecksOrBuilderList() { - return readinessChecks_; - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + build() { + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - /** - * - * - *
            -   * Optional. Readiness checks to perform when starting a workstation using
            -   * this workstation configuration. Mark a workstation as running only after
            -   * all specified readiness checks return 200 status codes.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public int getReadinessChecksCount() { - return readinessChecks_.size(); - } + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + result = + new com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - /** - * - * - *
            -   * Optional. Readiness checks to perform when starting a workstation using
            -   * this workstation configuration. Mark a workstation as running only after
            -   * all specified readiness checks return 200 status codes.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck getReadinessChecks( - int index) { - return readinessChecks_.get(index); - } + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.diskType_ = diskType_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.sourceSnapshot_ = sourceSnapshot_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.sourceImage_ = sourceImage_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.readOnly_ = readOnly_; + } + } - /** - * - * - *
            -   * Optional. Readiness checks to perform when starting a workstation using
            -   * this workstation configuration. Mark a workstation as running only after
            -   * all specified readiness checks return 200 status codes.
            -   * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder - getReadinessChecksOrBuilder(int index) { - return readinessChecks_.get(index); - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + other); + } else { + super.mergeFrom(other); + return this; + } + } - public static final int REPLICA_ZONES_FIELD_NUMBER = 23; + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + other) { + if (other + == com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance()) return this; + if (!other.getDiskType().isEmpty()) { + diskType_ = other.diskType_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getSourceSnapshot().isEmpty()) { + sourceSnapshot_ = other.sourceSnapshot_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getSourceImage().isEmpty()) { + sourceImage_ = other.sourceImage_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getReadOnly() != false) { + setReadOnly(other.getReadOnly()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - @SuppressWarnings("serial") - private com.google.protobuf.LazyStringArrayList replicaZones_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + @java.lang.Override + public final boolean isInitialized() { + return true; + } - /** - * - * - *
            -   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -   * resources within the region. If set, exactly two zones within the
            -   * workstation cluster's region must be specified—for example,
            -   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -   * zones within the region are used.
            -   *
            -   * Immutable after the workstation configuration is created.
            -   * 
            - * - * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; - * - * - * @return A list containing the replicaZones. - */ - public com.google.protobuf.ProtocolStringList getReplicaZonesList() { - return replicaZones_; - } - - /** - * - * - *
            -   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -   * resources within the region. If set, exactly two zones within the
            -   * workstation cluster's region must be specified—for example,
            -   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -   * zones within the region are used.
            -   *
            -   * Immutable after the workstation configuration is created.
            -   * 
            - * - * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; - * - * - * @return The count of replicaZones. - */ - public int getReplicaZonesCount() { - return replicaZones_.size(); - } - - /** - * - * - *
            -   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -   * resources within the region. If set, exactly two zones within the
            -   * workstation cluster's region must be specified—for example,
            -   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -   * zones within the region are used.
            -   *
            -   * Immutable after the workstation configuration is created.
            -   * 
            - * - * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; - * - * - * @param index The index of the element to return. - * @return The replicaZones at the given index. - */ - public java.lang.String getReplicaZones(int index) { - return replicaZones_.get(index); - } + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + diskType_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + sourceSnapshot_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + sourceImage_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: + { + readOnly_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } - /** - * - * - *
            -   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -   * resources within the region. If set, exactly two zones within the
            -   * workstation cluster's region must be specified—for example,
            -   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -   * zones within the region are used.
            -   *
            -   * Immutable after the workstation configuration is created.
            -   * 
            - * - * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; - * - * - * @param index The index of the value to return. - * @return The bytes of the replicaZones at the given index. - */ - public com.google.protobuf.ByteString getReplicaZonesBytes(int index) { - return replicaZones_.getByteString(index); - } + private int bitField0_; - public static final int DEGRADED_FIELD_NUMBER = 15; - private boolean degraded_ = false; + private java.lang.Object diskType_ = ""; - /** - * - * - *
            -   * Output only. Whether this resource is degraded, in which case it may
            -   * require user action to restore full functionality. See also the
            -   * [conditions][google.cloud.workstations.v1beta.WorkstationConfig.conditions]
            -   * field.
            -   * 
            - * - * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The degraded. - */ - @java.lang.Override - public boolean getDegraded() { - return degraded_; - } + /** + * + * + *
            +         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The diskType. + */ + public java.lang.String getDiskType() { + java.lang.Object ref = diskType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + diskType_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } - public static final int CONDITIONS_FIELD_NUMBER = 16; + /** + * + * + *
            +         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for diskType. + */ + public com.google.protobuf.ByteString getDiskTypeBytes() { + java.lang.Object ref = diskType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + diskType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - @SuppressWarnings("serial") - private java.util.List conditions_; + /** + * + * + *
            +         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The diskType to set. + * @return This builder for chaining. + */ + public Builder setDiskType(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + diskType_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } - /** - * - * - *
            -   * Output only. Status conditions describing the current resource state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public java.util.List getConditionsList() { - return conditions_; - } + /** + * + * + *
            +         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearDiskType() { + diskType_ = getDefaultInstance().getDiskType(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } - /** - * - * - *
            -   * Output only. Status conditions describing the current resource state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public java.util.List getConditionsOrBuilderList() { - return conditions_; - } - - /** - * - * - *
            -   * Output only. Status conditions describing the current resource state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public int getConditionsCount() { - return conditions_.size(); - } + /** + * + * + *
            +         * Optional. Type of the disk to use. Defaults to `"pd-standard"`.
            +         * 
            + * + * string disk_type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for diskType to set. + * @return This builder for chaining. + */ + public Builder setDiskTypeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + diskType_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } - /** - * - * - *
            -   * Output only. Status conditions describing the current resource state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.rpc.Status getConditions(int index) { - return conditions_.get(index); - } + private java.lang.Object sourceSnapshot_ = ""; - /** - * - * - *
            -   * Output only. Status conditions describing the current resource state.
            -   * 
            - * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - */ - @java.lang.Override - public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { - return conditions_.get(index); - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. Must
            +         * be empty if
            +         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * is set. Must be empty if
            +         * [read_only][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +         * is false. Updating
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, see
            +         * [the filesystems available in Container-Optimized
            +         * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceSnapshot. + */ + public java.lang.String getSourceSnapshot() { + java.lang.Object ref = sourceSnapshot_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceSnapshot_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } - public static final int ENABLE_AUDIT_AGENT_FIELD_NUMBER = 20; - private boolean enableAuditAgent_ = false; + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. Must
            +         * be empty if
            +         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * is set. Must be empty if
            +         * [read_only][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +         * is false. Updating
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, see
            +         * [the filesystems available in Container-Optimized
            +         * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceSnapshot. + */ + public com.google.protobuf.ByteString getSourceSnapshotBytes() { + java.lang.Object ref = sourceSnapshot_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceSnapshot_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - /** - * - * - *
            -   * Optional. Whether to enable Linux `auditd` logging on the workstation. When
            -   * enabled, a service account must also be specified that has
            -   * `logging.buckets.write` permission on the project. Operating system audit
            -   * logging is distinct from [Cloud Audit
            -   * Logs](https://cloud.google.com/workstations/docs/audit-logging).
            -   * 
            - * - * bool enable_audit_agent = 20 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The enableAuditAgent. - */ - @java.lang.Override - public boolean getEnableAuditAgent() { - return enableAuditAgent_; - } + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. Must
            +         * be empty if
            +         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * is set. Must be empty if
            +         * [read_only][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +         * is false. Updating
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, see
            +         * [the filesystems available in Container-Optimized
            +         * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sourceSnapshot to set. + * @return This builder for chaining. + */ + public Builder setSourceSnapshot(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + sourceSnapshot_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - private byte memoizedIsInitialized = -1; + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. Must
            +         * be empty if
            +         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * is set. Must be empty if
            +         * [read_only][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +         * is false. Updating
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, see
            +         * [the filesystems available in Container-Optimized
            +         * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSourceSnapshot() { + sourceSnapshot_ = getDefaultInstance().getSourceSnapshot(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + /** + * + * + *
            +         * Optional. Name of the snapshot to use as the source for the disk. Must
            +         * be empty if
            +         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * is set. Must be empty if
            +         * [read_only][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only]
            +         * is false. Updating
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, see
            +         * [the filesystems available in Container-Optimized
            +         * OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_snapshot = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for sourceSnapshot to set. + * @return This builder for chaining. + */ + public Builder setSourceSnapshotBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + sourceSnapshot_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - memoizedIsInitialized = 1; - return true; - } + private java.lang.Object sourceImage_ = ""; - @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(displayName_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 2, displayName_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 3, uid_); - } - if (reconciling_ != false) { - output.writeBool(4, reconciling_); - } - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetAnnotations(), AnnotationsDefaultEntryHolder.defaultEntry, 5); - if (((bitField0_ & 0x00000001) != 0)) { - output.writeMessage(6, getCreateTime()); + /** + * + * + *
            +         * Optional. Name of the disk image to use as the source for the disk.
            +         * Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * is set. Updating
            +         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, please
            +         * refer to the [COS
            +         * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceImage. + */ + public java.lang.String getSourceImage() { + java.lang.Object ref = sourceImage_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceImage_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +         * Optional. Name of the disk image to use as the source for the disk.
            +         * Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * is set. Updating
            +         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, please
            +         * refer to the [COS
            +         * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceImage. + */ + public com.google.protobuf.ByteString getSourceImageBytes() { + java.lang.Object ref = sourceImage_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + sourceImage_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +         * Optional. Name of the disk image to use as the source for the disk.
            +         * Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * is set. Updating
            +         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, please
            +         * refer to the [COS
            +         * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The sourceImage to set. + * @return This builder for chaining. + */ + public Builder setSourceImage(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + sourceImage_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Name of the disk image to use as the source for the disk.
            +         * Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * is set. Updating
            +         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, please
            +         * refer to the [COS
            +         * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSourceImage() { + sourceImage_ = getDefaultInstance().getSourceImage(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Name of the disk image to use as the source for the disk.
            +         * Must be empty if
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * is set. Updating
            +         * [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image]
            +         * will update content in the ephemeral directory after the workstation is
            +         * restarted.
            +         *
            +         * Only file systems supported by Container-Optimized OS (COS)
            +         * are explicitly supported. For a list of supported file systems, please
            +         * refer to the [COS
            +         * documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems).
            +         *
            +         * This field is mutable.
            +         * 
            + * + * string source_image = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for sourceImage to set. + * @return This builder for chaining. + */ + public Builder setSourceImageBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + sourceImage_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private boolean readOnly_; + + /** + * + * + *
            +         * Optional. Whether the disk is read only. If true, the disk may be
            +         * shared by multiple VMs and
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * must be set.
            +         * 
            + * + * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The readOnly. + */ + @java.lang.Override + public boolean getReadOnly() { + return readOnly_; + } + + /** + * + * + *
            +         * Optional. Whether the disk is read only. If true, the disk may be
            +         * shared by multiple VMs and
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * must be set.
            +         * 
            + * + * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The readOnly to set. + * @return This builder for chaining. + */ + public Builder setReadOnly(boolean value) { + + readOnly_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
            +         * Optional. Whether the disk is read only. If true, the disk may be
            +         * shared by multiple VMs and
            +         * [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot]
            +         * must be set.
            +         * 
            + * + * bool read_only = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearReadOnly() { + bitField0_ = (bitField0_ & ~0x00000008); + readOnly_ = false; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk) + private static final com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk(); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GcePersistentDisk parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + private int directoryTypeCase_ = 0; + + @SuppressWarnings("serial") + private java.lang.Object directoryType_; + + public enum DirectoryTypeCase + implements + com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + GCE_PD(3), + DIRECTORYTYPE_NOT_SET(0); + private final int value; + + private DirectoryTypeCase(int value) { + this.value = value; + } + + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static DirectoryTypeCase valueOf(int value) { + return forNumber(value); + } + + public static DirectoryTypeCase forNumber(int value) { + switch (value) { + case 3: + return GCE_PD; + case 0: + return DIRECTORYTYPE_NOT_SET; + default: + return null; + } + } + + public int getNumber() { + return this.value; + } + }; + + public DirectoryTypeCase getDirectoryTypeCase() { + return DirectoryTypeCase.forNumber(directoryTypeCase_); + } + + public static final int GCE_PD_FIELD_NUMBER = 3; + + /** + * + * + *
            +     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + * + * @return Whether the gcePd field is set. + */ + @java.lang.Override + public boolean hasGcePd() { + return directoryTypeCase_ == 3; + } + + /** + * + * + *
            +     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + * + * @return The gcePd. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + getGcePd() { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_; + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance(); + } + + /** + * + * + *
            +     * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +     * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDiskOrBuilder + getGcePdOrBuilder() { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_; + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance(); + } + + public static final int MOUNT_PATH_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object mountPath_ = ""; + + /** + * + * + *
            +     * Required. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The mountPath. + */ + @java.lang.Override + public java.lang.String getMountPath() { + java.lang.Object ref = mountPath_; + 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(); + mountPath_ = s; + return s; + } + } + + /** + * + * + *
            +     * Required. Location of this directory in the running workstation.
            +     * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for mountPath. + */ + @java.lang.Override + public com.google.protobuf.ByteString getMountPathBytes() { + java.lang.Object ref = mountPath_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + mountPath_ = 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(mountPath_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, mountPath_); + } + if (directoryTypeCase_ == 3) { + output.writeMessage( + 3, + (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_); + } + 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(mountPath_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, mountPath_); + } + if (directoryTypeCase_ == 3) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 3, + (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_); + } + 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.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory other = + (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) obj; + + if (!getMountPath().equals(other.getMountPath())) return false; + if (!getDirectoryTypeCase().equals(other.getDirectoryTypeCase())) return false; + switch (directoryTypeCase_) { + case 3: + if (!getGcePd().equals(other.getGcePd())) 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(); + hash = (37 * hash) + MOUNT_PATH_FIELD_NUMBER; + hash = (53 * hash) + getMountPath().hashCode(); + switch (directoryTypeCase_) { + case 3: + hash = (37 * hash) + GCE_PD_FIELD_NUMBER; + hash = (53 * hash) + getGcePd().hashCode(); + break; + case 0: + default: + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + 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.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + 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.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + 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.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + 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.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory 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; + } + + /** + * + * + *
            +     * An ephemeral directory which won't persist across workstation sessions. It
            +     * is freshly created on every workstation start operation.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder + .class); + } + + // Construct using + // com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (gcePdBuilder_ != null) { + gcePdBuilder_.clear(); + } + mountPath_ = ""; + directoryTypeCase_ = 0; + directoryType_ = null; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory build() { + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory result = + new com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + buildPartialOneofs(result); + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.mountPath_ = mountPath_; + } + } + + private void buildPartialOneofs( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory result) { + result.directoryTypeCase_ = directoryTypeCase_; + result.directoryType_ = this.directoryType_; + if (directoryTypeCase_ == 3 && gcePdBuilder_ != null) { + result.directoryType_ = gcePdBuilder_.build(); + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory other) { + if (other + == com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .getDefaultInstance()) return this; + if (!other.getMountPath().isEmpty()) { + mountPath_ = other.mountPath_; + bitField0_ |= 0x00000002; + onChanged(); + } + switch (other.getDirectoryTypeCase()) { + case GCE_PD: + { + mergeGcePd(other.getGcePd()); + break; + } + case DIRECTORYTYPE_NOT_SET: + { + break; + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + mountPath_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 10 + case 26: + { + input.readMessage(internalGetGcePdFieldBuilder().getBuilder(), extensionRegistry); + directoryTypeCase_ = 3; + break; + } // case 26 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int directoryTypeCase_ = 0; + private java.lang.Object directoryType_; + + public DirectoryTypeCase getDirectoryTypeCase() { + return DirectoryTypeCase.forNumber(directoryTypeCase_); + } + + public Builder clearDirectoryType() { + directoryTypeCase_ = 0; + directoryType_ = null; + onChanged(); + return this; + } + + private int bitField0_; + + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDiskOrBuilder> + gcePdBuilder_; + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + * + * @return Whether the gcePd field is set. + */ + @java.lang.Override + public boolean hasGcePd() { + return directoryTypeCase_ == 3; + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + * + * @return The gcePd. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + getGcePd() { + if (gcePdBuilder_ == null) { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_; + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance(); + } else { + if (directoryTypeCase_ == 3) { + return gcePdBuilder_.getMessage(); + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance(); + } + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + public Builder setGcePd( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + value) { + if (gcePdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + directoryType_ = value; + onChanged(); + } else { + gcePdBuilder_.setMessage(value); + } + directoryTypeCase_ = 3; + return this; + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + public Builder setGcePd( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.Builder + builderForValue) { + if (gcePdBuilder_ == null) { + directoryType_ = builderForValue.build(); + onChanged(); + } else { + gcePdBuilder_.setMessage(builderForValue.build()); + } + directoryTypeCase_ = 3; + return this; + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + public Builder mergeGcePd( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk + value) { + if (gcePdBuilder_ == null) { + if (directoryTypeCase_ == 3 + && directoryType_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance()) { + directoryType_ = + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.newBuilder( + (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_) + .mergeFrom(value) + .buildPartial(); + } else { + directoryType_ = value; + } + onChanged(); + } else { + if (directoryTypeCase_ == 3) { + gcePdBuilder_.mergeFrom(value); + } else { + gcePdBuilder_.setMessage(value); + } + } + directoryTypeCase_ = 3; + return this; + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + public Builder clearGcePd() { + if (gcePdBuilder_ == null) { + if (directoryTypeCase_ == 3) { + directoryTypeCase_ = 0; + directoryType_ = null; + onChanged(); + } + } else { + if (directoryTypeCase_ == 3) { + directoryTypeCase_ = 0; + directoryType_ = null; + } + gcePdBuilder_.clear(); + } + return this; + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.Builder + getGcePdBuilder() { + return internalGetGcePdFieldBuilder().getBuilder(); + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDiskOrBuilder + getGcePdOrBuilder() { + if ((directoryTypeCase_ == 3) && (gcePdBuilder_ != null)) { + return gcePdBuilder_.getMessageOrBuilder(); + } else { + if (directoryTypeCase_ == 3) { + return (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_; + } + return com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance(); + } + } + + /** + * + * + *
            +       * An EphemeralDirectory backed by a Compute Engine persistent disk.
            +       * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk gce_pd = 3; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDiskOrBuilder> + internalGetGcePdFieldBuilder() { + if (gcePdBuilder_ == null) { + if (!(directoryTypeCase_ == 3)) { + directoryType_ = + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.getDefaultInstance(); + } + gcePdBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDiskOrBuilder>( + (com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .GcePersistentDisk) + directoryType_, + getParentForChildren(), + isClean()); + directoryType_ = null; + } + directoryTypeCase_ = 3; + onChanged(); + return gcePdBuilder_; + } + + private java.lang.Object mountPath_ = ""; + + /** + * + * + *
            +       * Required. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The mountPath. + */ + public java.lang.String getMountPath() { + java.lang.Object ref = mountPath_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + mountPath_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Required. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for mountPath. + */ + public com.google.protobuf.ByteString getMountPathBytes() { + java.lang.Object ref = mountPath_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + mountPath_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Required. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The mountPath to set. + * @return This builder for chaining. + */ + public Builder setMountPath(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + mountPath_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Required. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearMountPath() { + mountPath_ = getDefaultInstance().getMountPath(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Required. Location of this directory in the running workstation.
            +       * 
            + * + * string mount_path = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The bytes for mountPath to set. + * @return This builder for chaining. + */ + public Builder setMountPathBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + mountPath_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory) + private static final com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory(); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public EphemeralDirectory parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface ContainerOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.Container) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +     * Optional. A Docker container image that defines a custom environment.
            +     *
            +     * Cloud Workstations provides a number of
            +     * [preconfigured
            +     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +     * but you can create your own
            +     * [custom container
            +     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +     * If using a private image, the `host.gceInstance.serviceAccount` field
            +     * must be specified in the workstation configuration.
            +     * If using a custom container image, the service account must have
            +     * [Artifact Registry
            +     * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +     * permission to pull the specified image. Otherwise, the image must be
            +     * publicly accessible.
            +     * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The image. + */ + java.lang.String getImage(); + + /** + * + * + *
            +     * Optional. A Docker container image that defines a custom environment.
            +     *
            +     * Cloud Workstations provides a number of
            +     * [preconfigured
            +     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +     * but you can create your own
            +     * [custom container
            +     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +     * If using a private image, the `host.gceInstance.serviceAccount` field
            +     * must be specified in the workstation configuration.
            +     * If using a custom container image, the service account must have
            +     * [Artifact Registry
            +     * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +     * permission to pull the specified image. Otherwise, the image must be
            +     * publicly accessible.
            +     * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for image. + */ + com.google.protobuf.ByteString getImageBytes(); + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the command. + */ + java.util.List getCommandList(); + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of command. + */ + int getCommandCount(); + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The command at the given index. + */ + java.lang.String getCommand(int index); + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the command at the given index. + */ + com.google.protobuf.ByteString getCommandBytes(int index); + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the args. + */ + java.util.List getArgsList(); + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of args. + */ + int getArgsCount(); + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The args at the given index. + */ + java.lang.String getArgs(int index); + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the args at the given index. + */ + com.google.protobuf.ByteString getArgsBytes(int index); + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + int getEnvCount(); + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + boolean containsEnv(java.lang.String key); + + /** Use {@link #getEnvMap()} instead. */ + @java.lang.Deprecated + java.util.Map getEnv(); + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + java.util.Map getEnvMap(); + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + /* nullable */ + java.lang.String getEnvOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue); + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + java.lang.String getEnvOrThrow(java.lang.String key); + + /** + * + * + *
            +     * Optional. If set, overrides the default DIR specified by the image.
            +     * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The workingDir. + */ + java.lang.String getWorkingDir(); + + /** + * + * + *
            +     * Optional. If set, overrides the default DIR specified by the image.
            +     * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for workingDir. + */ + com.google.protobuf.ByteString getWorkingDirBytes(); + + /** + * + * + *
            +     * Optional. If set, overrides the USER specified in the image with the
            +     * given uid.
            +     * 
            + * + * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The runAsUser. + */ + int getRunAsUser(); + } + + /** + * + * + *
            +   * A Docker container.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.Container} + */ + public static final class Container extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.Container) + ContainerOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "Container"); + } + + // Use Container.newBuilder() to construct. + private Container(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private Container() { + image_ = ""; + command_ = com.google.protobuf.LazyStringArrayList.emptyList(); + args_ = com.google.protobuf.LazyStringArrayList.emptyList(); + workingDir_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Container_descriptor; + } + + @SuppressWarnings({"rawtypes"}) + @java.lang.Override + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 4: + return internalGetEnv(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Container_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.Container.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.Container.Builder.class); + } + + public static final int IMAGE_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object image_ = ""; + + /** + * + * + *
            +     * Optional. A Docker container image that defines a custom environment.
            +     *
            +     * Cloud Workstations provides a number of
            +     * [preconfigured
            +     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +     * but you can create your own
            +     * [custom container
            +     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +     * If using a private image, the `host.gceInstance.serviceAccount` field
            +     * must be specified in the workstation configuration.
            +     * If using a custom container image, the service account must have
            +     * [Artifact Registry
            +     * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +     * permission to pull the specified image. Otherwise, the image must be
            +     * publicly accessible.
            +     * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The image. + */ + @java.lang.Override + public java.lang.String getImage() { + java.lang.Object ref = image_; + 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(); + image_ = s; + return s; + } + } + + /** + * + * + *
            +     * Optional. A Docker container image that defines a custom environment.
            +     *
            +     * Cloud Workstations provides a number of
            +     * [preconfigured
            +     * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +     * but you can create your own
            +     * [custom container
            +     * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +     * If using a private image, the `host.gceInstance.serviceAccount` field
            +     * must be specified in the workstation configuration.
            +     * If using a custom container image, the service account must have
            +     * [Artifact Registry
            +     * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +     * permission to pull the specified image. Otherwise, the image must be
            +     * publicly accessible.
            +     * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for image. + */ + @java.lang.Override + public com.google.protobuf.ByteString getImageBytes() { + java.lang.Object ref = image_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + image_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int COMMAND_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList command_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the command. + */ + public com.google.protobuf.ProtocolStringList getCommandList() { + return command_; + } + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of command. + */ + public int getCommandCount() { + return command_.size(); + } + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The command at the given index. + */ + public java.lang.String getCommand(int index) { + return command_.get(index); + } + + /** + * + * + *
            +     * Optional. If set, overrides the default ENTRYPOINT specified by the
            +     * image.
            +     * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the command at the given index. + */ + public com.google.protobuf.ByteString getCommandBytes(int index) { + return command_.getByteString(index); + } + + public static final int ARGS_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList args_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the args. + */ + public com.google.protobuf.ProtocolStringList getArgsList() { + return args_; + } + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of args. + */ + public int getArgsCount() { + return args_.size(); + } + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The args at the given index. + */ + public java.lang.String getArgs(int index) { + return args_.get(index); + } + + /** + * + * + *
            +     * Optional. Arguments passed to the entrypoint.
            +     * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the args at the given index. + */ + public com.google.protobuf.ByteString getArgsBytes(int index) { + return args_.getByteString(index); + } + + public static final int ENV_FIELD_NUMBER = 4; + + private static final class EnvDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Container_EnvEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField env_; + + private com.google.protobuf.MapField internalGetEnv() { + if (env_ == null) { + return com.google.protobuf.MapField.emptyMapField(EnvDefaultEntryHolder.defaultEntry); + } + return env_; + } + + public int getEnvCount() { + return internalGetEnv().getMap().size(); + } + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsEnv(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetEnv().getMap().containsKey(key); + } + + /** Use {@link #getEnvMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getEnv() { + return getEnvMap(); + } + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getEnvMap() { + return internalGetEnv().getMap(); + } + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getEnvOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetEnv().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +     * Optional. Environment variables passed to the container's entrypoint.
            +     * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getEnvOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetEnv().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int WORKING_DIR_FIELD_NUMBER = 5; + + @SuppressWarnings("serial") + private volatile java.lang.Object workingDir_ = ""; + + /** + * + * + *
            +     * Optional. If set, overrides the default DIR specified by the image.
            +     * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The workingDir. + */ + @java.lang.Override + public java.lang.String getWorkingDir() { + java.lang.Object ref = workingDir_; + 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(); + workingDir_ = s; + return s; + } + } + + /** + * + * + *
            +     * Optional. If set, overrides the default DIR specified by the image.
            +     * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for workingDir. + */ + @java.lang.Override + public com.google.protobuf.ByteString getWorkingDirBytes() { + java.lang.Object ref = workingDir_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + workingDir_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int RUN_AS_USER_FIELD_NUMBER = 6; + private int runAsUser_ = 0; + + /** + * + * + *
            +     * Optional. If set, overrides the USER specified in the image with the
            +     * given uid.
            +     * 
            + * + * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The runAsUser. + */ + @java.lang.Override + public int getRunAsUser() { + return runAsUser_; + } + + 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(image_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, image_); + } + for (int i = 0; i < command_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, command_.getRaw(i)); + } + for (int i = 0; i < args_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, args_.getRaw(i)); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetEnv(), EnvDefaultEntryHolder.defaultEntry, 4); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workingDir_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 5, workingDir_); + } + if (runAsUser_ != 0) { + output.writeInt32(6, runAsUser_); + } + 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(image_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, image_); + } + { + int dataSize = 0; + for (int i = 0; i < command_.size(); i++) { + dataSize += computeStringSizeNoTag(command_.getRaw(i)); + } + size += dataSize; + size += 1 * getCommandList().size(); + } + { + int dataSize = 0; + for (int i = 0; i < args_.size(); i++) { + dataSize += computeStringSizeNoTag(args_.getRaw(i)); + } + size += dataSize; + size += 1 * getArgsList().size(); + } + for (java.util.Map.Entry entry : + internalGetEnv().getMap().entrySet()) { + com.google.protobuf.MapEntry env__ = + EnvDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, env__); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workingDir_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(5, workingDir_); + } + if (runAsUser_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(6, runAsUser_); + } + 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.cloud.workstations.v1beta.WorkstationConfig.Container)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationConfig.Container other = + (com.google.cloud.workstations.v1beta.WorkstationConfig.Container) obj; + + if (!getImage().equals(other.getImage())) return false; + if (!getCommandList().equals(other.getCommandList())) return false; + if (!getArgsList().equals(other.getArgsList())) return false; + if (!internalGetEnv().equals(other.internalGetEnv())) return false; + if (!getWorkingDir().equals(other.getWorkingDir())) return false; + if (getRunAsUser() != other.getRunAsUser()) 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) + IMAGE_FIELD_NUMBER; + hash = (53 * hash) + getImage().hashCode(); + if (getCommandCount() > 0) { + hash = (37 * hash) + COMMAND_FIELD_NUMBER; + hash = (53 * hash) + getCommandList().hashCode(); + } + if (getArgsCount() > 0) { + hash = (37 * hash) + ARGS_FIELD_NUMBER; + hash = (53 * hash) + getArgsList().hashCode(); + } + if (!internalGetEnv().getMap().isEmpty()) { + hash = (37 * hash) + ENV_FIELD_NUMBER; + hash = (53 * hash) + internalGetEnv().hashCode(); + } + hash = (37 * hash) + WORKING_DIR_FIELD_NUMBER; + hash = (53 * hash) + getWorkingDir().hashCode(); + hash = (37 * hash) + RUN_AS_USER_FIELD_NUMBER; + hash = (53 * hash) + getRunAsUser(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container 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.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container 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.cloud.workstations.v1beta.WorkstationConfig.Container + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container + 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.cloud.workstations.v1beta.WorkstationConfig.Container parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container 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.cloud.workstations.v1beta.WorkstationConfig.Container 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 Docker container.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.Container} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.Container) + com.google.cloud.workstations.v1beta.WorkstationConfig.ContainerOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Container_descriptor; + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 4: + return internalGetEnv(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( + int number) { + switch (number) { + case 4: + return internalGetMutableEnv(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Container_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.Container.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.Container.Builder.class); + } + + // Construct using + // com.google.cloud.workstations.v1beta.WorkstationConfig.Container.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + image_ = ""; + command_ = com.google.protobuf.LazyStringArrayList.emptyList(); + args_ = com.google.protobuf.LazyStringArrayList.emptyList(); + internalGetMutableEnv().clear(); + workingDir_ = ""; + runAsUser_ = 0; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Container_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Container + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.Container + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Container build() { + com.google.cloud.workstations.v1beta.WorkstationConfig.Container result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Container buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationConfig.Container result = + new com.google.cloud.workstations.v1beta.WorkstationConfig.Container(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationConfig.Container result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.image_ = image_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + command_.makeImmutable(); + result.command_ = command_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + args_.makeImmutable(); + result.args_ = args_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.env_ = internalGetEnv(); + result.env_.makeImmutable(); + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.workingDir_ = workingDir_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.runAsUser_ = runAsUser_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.Container) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.WorkstationConfig.Container) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.WorkstationConfig.Container other) { + if (other + == com.google.cloud.workstations.v1beta.WorkstationConfig.Container + .getDefaultInstance()) return this; + if (!other.getImage().isEmpty()) { + image_ = other.image_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.command_.isEmpty()) { + if (command_.isEmpty()) { + command_ = other.command_; + bitField0_ |= 0x00000002; + } else { + ensureCommandIsMutable(); + command_.addAll(other.command_); + } + onChanged(); + } + if (!other.args_.isEmpty()) { + if (args_.isEmpty()) { + args_ = other.args_; + bitField0_ |= 0x00000004; + } else { + ensureArgsIsMutable(); + args_.addAll(other.args_); + } + onChanged(); + } + internalGetMutableEnv().mergeFrom(other.internalGetEnv()); + bitField0_ |= 0x00000008; + if (!other.getWorkingDir().isEmpty()) { + workingDir_ = other.workingDir_; + bitField0_ |= 0x00000010; + onChanged(); + } + if (other.getRunAsUser() != 0) { + setRunAsUser(other.getRunAsUser()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + image_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureCommandIsMutable(); + command_.add(s); + break; + } // case 18 + case 26: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureArgsIsMutable(); + args_.add(s); + break; + } // case 26 + case 34: + { + com.google.protobuf.MapEntry env__ = + input.readMessage( + EnvDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); + internalGetMutableEnv().getMutableMap().put(env__.getKey(), env__.getValue()); + bitField0_ |= 0x00000008; + break; + } // case 34 + case 42: + { + workingDir_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 48: + { + runAsUser_ = input.readInt32(); + bitField0_ |= 0x00000020; + break; + } // case 48 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object image_ = ""; + + /** + * + * + *
            +       * Optional. A Docker container image that defines a custom environment.
            +       *
            +       * Cloud Workstations provides a number of
            +       * [preconfigured
            +       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +       * but you can create your own
            +       * [custom container
            +       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +       * If using a private image, the `host.gceInstance.serviceAccount` field
            +       * must be specified in the workstation configuration.
            +       * If using a custom container image, the service account must have
            +       * [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image. Otherwise, the image must be
            +       * publicly accessible.
            +       * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The image. + */ + public java.lang.String getImage() { + java.lang.Object ref = image_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + image_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Optional. A Docker container image that defines a custom environment.
            +       *
            +       * Cloud Workstations provides a number of
            +       * [preconfigured
            +       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +       * but you can create your own
            +       * [custom container
            +       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +       * If using a private image, the `host.gceInstance.serviceAccount` field
            +       * must be specified in the workstation configuration.
            +       * If using a custom container image, the service account must have
            +       * [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image. Otherwise, the image must be
            +       * publicly accessible.
            +       * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for image. + */ + public com.google.protobuf.ByteString getImageBytes() { + java.lang.Object ref = image_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + image_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Optional. A Docker container image that defines a custom environment.
            +       *
            +       * Cloud Workstations provides a number of
            +       * [preconfigured
            +       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +       * but you can create your own
            +       * [custom container
            +       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +       * If using a private image, the `host.gceInstance.serviceAccount` field
            +       * must be specified in the workstation configuration.
            +       * If using a custom container image, the service account must have
            +       * [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image. Otherwise, the image must be
            +       * publicly accessible.
            +       * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The image to set. + * @return This builder for chaining. + */ + public Builder setImage(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + image_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. A Docker container image that defines a custom environment.
            +       *
            +       * Cloud Workstations provides a number of
            +       * [preconfigured
            +       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +       * but you can create your own
            +       * [custom container
            +       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +       * If using a private image, the `host.gceInstance.serviceAccount` field
            +       * must be specified in the workstation configuration.
            +       * If using a custom container image, the service account must have
            +       * [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image. Otherwise, the image must be
            +       * publicly accessible.
            +       * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearImage() { + image_ = getDefaultInstance().getImage(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. A Docker container image that defines a custom environment.
            +       *
            +       * Cloud Workstations provides a number of
            +       * [preconfigured
            +       * images](https://cloud.google.com/workstations/docs/preconfigured-base-images),
            +       * but you can create your own
            +       * [custom container
            +       * images](https://cloud.google.com/workstations/docs/custom-container-images).
            +       * If using a private image, the `host.gceInstance.serviceAccount` field
            +       * must be specified in the workstation configuration.
            +       * If using a custom container image, the service account must have
            +       * [Artifact Registry
            +       * Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
            +       * permission to pull the specified image. Otherwise, the image must be
            +       * publicly accessible.
            +       * 
            + * + * string image = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for image to set. + * @return This builder for chaining. + */ + public Builder setImageBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + image_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList command_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureCommandIsMutable() { + if (!command_.isModifiable()) { + command_ = new com.google.protobuf.LazyStringArrayList(command_); + } + bitField0_ |= 0x00000002; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the command. + */ + public com.google.protobuf.ProtocolStringList getCommandList() { + command_.makeImmutable(); + return command_; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of command. + */ + public int getCommandCount() { + return command_.size(); + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The command at the given index. + */ + public java.lang.String getCommand(int index) { + return command_.get(index); + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the command at the given index. + */ + public com.google.protobuf.ByteString getCommandBytes(int index) { + return command_.getByteString(index); + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index to set the value at. + * @param value The command to set. + * @return This builder for chaining. + */ + public Builder setCommand(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureCommandIsMutable(); + command_.set(index, value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The command to add. + * @return This builder for chaining. + */ + public Builder addCommand(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureCommandIsMutable(); + command_.add(value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param values The command to add. + * @return This builder for chaining. + */ + public Builder addAllCommand(java.lang.Iterable values) { + ensureCommandIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, command_); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearCommand() { + command_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + ; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default ENTRYPOINT specified by the
            +       * image.
            +       * 
            + * + * repeated string command = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes of the command to add. + * @return This builder for chaining. + */ + public Builder addCommandBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureCommandIsMutable(); + command_.add(value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList args_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureArgsIsMutable() { + if (!args_.isModifiable()) { + args_ = new com.google.protobuf.LazyStringArrayList(args_); + } + bitField0_ |= 0x00000004; + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return A list containing the args. + */ + public com.google.protobuf.ProtocolStringList getArgsList() { + args_.makeImmutable(); + return args_; + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The count of args. + */ + public int getArgsCount() { + return args_.size(); + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the element to return. + * @return The args at the given index. + */ + public java.lang.String getArgs(int index) { + return args_.get(index); + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index of the value to return. + * @return The bytes of the args at the given index. + */ + public com.google.protobuf.ByteString getArgsBytes(int index) { + return args_.getByteString(index); + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param index The index to set the value at. + * @param value The args to set. + * @return This builder for chaining. + */ + public Builder setArgs(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureArgsIsMutable(); + args_.set(index, value); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The args to add. + * @return This builder for chaining. + */ + public Builder addArgs(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureArgsIsMutable(); + args_.add(value); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param values The args to add. + * @return This builder for chaining. + */ + public Builder addAllArgs(java.lang.Iterable values) { + ensureArgsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, args_); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearArgs() { + args_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + ; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Arguments passed to the entrypoint.
            +       * 
            + * + * repeated string args = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes of the args to add. + * @return This builder for chaining. + */ + public Builder addArgsBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureArgsIsMutable(); + args_.add(value); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private com.google.protobuf.MapField env_; + + private com.google.protobuf.MapField internalGetEnv() { + if (env_ == null) { + return com.google.protobuf.MapField.emptyMapField(EnvDefaultEntryHolder.defaultEntry); + } + return env_; + } + + private com.google.protobuf.MapField + internalGetMutableEnv() { + if (env_ == null) { + env_ = com.google.protobuf.MapField.newMapField(EnvDefaultEntryHolder.defaultEntry); + } + if (!env_.isMutable()) { + env_ = env_.copy(); + } + bitField0_ |= 0x00000008; + onChanged(); + return env_; + } + + public int getEnvCount() { + return internalGetEnv().getMap().size(); + } + + /** + * + * + *
            +       * Optional. Environment variables passed to the container's entrypoint.
            +       * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsEnv(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetEnv().getMap().containsKey(key); + } + + /** Use {@link #getEnvMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getEnv() { + return getEnvMap(); + } + + /** + * + * + *
            +       * Optional. Environment variables passed to the container's entrypoint.
            +       * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getEnvMap() { + return internalGetEnv().getMap(); + } + + /** + * + * + *
            +       * Optional. Environment variables passed to the container's entrypoint.
            +       * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getEnvOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetEnv().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +       * Optional. Environment variables passed to the container's entrypoint.
            +       * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getEnvOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetEnv().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public Builder clearEnv() { + bitField0_ = (bitField0_ & ~0x00000008); + internalGetMutableEnv().getMutableMap().clear(); + return this; + } + + /** + * + * + *
            +       * Optional. Environment variables passed to the container's entrypoint.
            +       * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder removeEnv(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableEnv().getMutableMap().remove(key); + return this; + } + + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableEnv() { + bitField0_ |= 0x00000008; + return internalGetMutableEnv().getMutableMap(); + } + + /** + * + * + *
            +       * Optional. Environment variables passed to the container's entrypoint.
            +       * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder putEnv(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); + } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableEnv().getMutableMap().put(key, value); + bitField0_ |= 0x00000008; + return this; + } + + /** + * + * + *
            +       * Optional. Environment variables passed to the container's entrypoint.
            +       * 
            + * + * map<string, string> env = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder putAllEnv(java.util.Map values) { + internalGetMutableEnv().getMutableMap().putAll(values); + bitField0_ |= 0x00000008; + return this; + } + + private java.lang.Object workingDir_ = ""; + + /** + * + * + *
            +       * Optional. If set, overrides the default DIR specified by the image.
            +       * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The workingDir. + */ + public java.lang.String getWorkingDir() { + java.lang.Object ref = workingDir_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + workingDir_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Optional. If set, overrides the default DIR specified by the image.
            +       * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for workingDir. + */ + public com.google.protobuf.ByteString getWorkingDirBytes() { + java.lang.Object ref = workingDir_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + workingDir_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Optional. If set, overrides the default DIR specified by the image.
            +       * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The workingDir to set. + * @return This builder for chaining. + */ + public Builder setWorkingDir(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + workingDir_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default DIR specified by the image.
            +       * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearWorkingDir() { + workingDir_ = getDefaultInstance().getWorkingDir(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. If set, overrides the default DIR specified by the image.
            +       * 
            + * + * string working_dir = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for workingDir to set. + * @return This builder for chaining. + */ + public Builder setWorkingDirBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + workingDir_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + private int runAsUser_; + + /** + * + * + *
            +       * Optional. If set, overrides the USER specified in the image with the
            +       * given uid.
            +       * 
            + * + * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The runAsUser. + */ + @java.lang.Override + public int getRunAsUser() { + return runAsUser_; + } + + /** + * + * + *
            +       * Optional. If set, overrides the USER specified in the image with the
            +       * given uid.
            +       * 
            + * + * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The runAsUser to set. + * @return This builder for chaining. + */ + public Builder setRunAsUser(int value) { + + runAsUser_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. If set, overrides the USER specified in the image with the
            +       * given uid.
            +       * 
            + * + * int32 run_as_user = 6 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearRunAsUser() { + bitField0_ = (bitField0_ & ~0x00000020); + runAsUser_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.Container) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.Container) + private static final com.google.cloud.workstations.v1beta.WorkstationConfig.Container + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1beta.WorkstationConfig.Container(); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.Container + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Container parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Container + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface CustomerEncryptionKeyOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +     * The key must be in the same region as the workstation configuration.
            +     * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The kmsKey. + */ + java.lang.String getKmsKey(); + + /** + * + * + *
            +     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +     * The key must be in the same region as the workstation configuration.
            +     * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for kmsKey. + */ + com.google.protobuf.ByteString getKmsKeyBytes(); + + /** + * + * + *
            +     * Immutable. The service account to use with the specified
            +     * KMS key. We recommend that you use a separate service account
            +     * and follow KMS best practices. For more information, see
            +     * [Separation of
            +     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +     * `gcloud kms keys add-iam-policy-binding`
            +     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +     * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The kmsKeyServiceAccount. + */ + java.lang.String getKmsKeyServiceAccount(); + + /** + * + * + *
            +     * Immutable. The service account to use with the specified
            +     * KMS key. We recommend that you use a separate service account
            +     * and follow KMS best practices. For more information, see
            +     * [Separation of
            +     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +     * `gcloud kms keys add-iam-policy-binding`
            +     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +     * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for kmsKeyServiceAccount. + */ + com.google.protobuf.ByteString getKmsKeyServiceAccountBytes(); + } + + /** + * + * + *
            +   * A customer-managed encryption key (CMEK) for the Compute Engine
            +   * resources of the associated workstation configuration. Specify the name of
            +   * your Cloud KMS encryption key and the default service account.
            +   * We recommend that you use a separate service account and follow
            +   * [Cloud KMS best
            +   * practices](https://cloud.google.com/kms/docs/separation-of-duties).
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey} + */ + public static final class CustomerEncryptionKey extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) + CustomerEncryptionKeyOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "CustomerEncryptionKey"); + } + + // Use CustomerEncryptionKey.newBuilder() to construct. + private CustomerEncryptionKey(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private CustomerEncryptionKey() { + kmsKey_ = ""; + kmsKeyServiceAccount_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_CustomerEncryptionKey_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_CustomerEncryptionKey_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.Builder + .class); + } + + public static final int KMS_KEY_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object kmsKey_ = ""; + + /** + * + * + *
            +     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +     * The key must be in the same region as the workstation configuration.
            +     * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The kmsKey. + */ + @java.lang.Override + public java.lang.String getKmsKey() { + java.lang.Object ref = kmsKey_; + 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(); + kmsKey_ = s; + return s; + } + } + + /** + * + * + *
            +     * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +     * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +     * The key must be in the same region as the workstation configuration.
            +     * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for kmsKey. + */ + @java.lang.Override + public com.google.protobuf.ByteString getKmsKeyBytes() { + java.lang.Object ref = kmsKey_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int KMS_KEY_SERVICE_ACCOUNT_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object kmsKeyServiceAccount_ = ""; + + /** + * + * + *
            +     * Immutable. The service account to use with the specified
            +     * KMS key. We recommend that you use a separate service account
            +     * and follow KMS best practices. For more information, see
            +     * [Separation of
            +     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +     * `gcloud kms keys add-iam-policy-binding`
            +     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +     * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The kmsKeyServiceAccount. + */ + @java.lang.Override + public java.lang.String getKmsKeyServiceAccount() { + java.lang.Object ref = kmsKeyServiceAccount_; + 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(); + kmsKeyServiceAccount_ = s; + return s; + } + } + + /** + * + * + *
            +     * Immutable. The service account to use with the specified
            +     * KMS key. We recommend that you use a separate service account
            +     * and follow KMS best practices. For more information, see
            +     * [Separation of
            +     * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +     * `gcloud kms keys add-iam-policy-binding`
            +     * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +     * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for kmsKeyServiceAccount. + */ + @java.lang.Override + public com.google.protobuf.ByteString getKmsKeyServiceAccountBytes() { + java.lang.Object ref = kmsKeyServiceAccount_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKeyServiceAccount_ = 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(kmsKey_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, kmsKey_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kmsKeyServiceAccount_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, kmsKeyServiceAccount_); + } + 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(kmsKey_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, kmsKey_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kmsKeyServiceAccount_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, kmsKeyServiceAccount_); + } + 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.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey other = + (com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) obj; + + if (!getKmsKey().equals(other.getKmsKey())) return false; + if (!getKmsKeyServiceAccount().equals(other.getKmsKeyServiceAccount())) 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) + KMS_KEY_FIELD_NUMBER; + hash = (53 * hash) + getKmsKey().hashCode(); + hash = (37 * hash) + KMS_KEY_SERVICE_ACCOUNT_FIELD_NUMBER; + hash = (53 * hash) + getKmsKeyServiceAccount().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + 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.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + 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.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + 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.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + 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.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey 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 customer-managed encryption key (CMEK) for the Compute Engine
            +     * resources of the associated workstation configuration. Specify the name of
            +     * your Cloud KMS encryption key and the default service account.
            +     * We recommend that you use a separate service account and follow
            +     * [Cloud KMS best
            +     * practices](https://cloud.google.com/kms/docs/separation-of-duties).
            +     * 
            + * + * Protobuf type {@code + * google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKeyOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_CustomerEncryptionKey_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_CustomerEncryptionKey_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.Builder + .class); + } + + // Construct using + // com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + kmsKey_ = ""; + kmsKeyServiceAccount_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_CustomerEncryptionKey_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey build() { + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey result = + new com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.kmsKey_ = kmsKey_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.kmsKeyServiceAccount_ = kmsKeyServiceAccount_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey other) { + if (other + == com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + .getDefaultInstance()) return this; + if (!other.getKmsKey().isEmpty()) { + kmsKey_ = other.kmsKey_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getKmsKeyServiceAccount().isEmpty()) { + kmsKeyServiceAccount_ = other.kmsKeyServiceAccount_; + bitField0_ |= 0x00000002; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + kmsKey_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + kmsKeyServiceAccount_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object kmsKey_ = ""; + + /** + * + * + *
            +       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +       * The key must be in the same region as the workstation configuration.
            +       * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The kmsKey. + */ + public java.lang.String getKmsKey() { + java.lang.Object ref = kmsKey_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + kmsKey_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +       * The key must be in the same region as the workstation configuration.
            +       * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for kmsKey. + */ + public com.google.protobuf.ByteString getKmsKeyBytes() { + java.lang.Object ref = kmsKey_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +       * The key must be in the same region as the workstation configuration.
            +       * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The kmsKey to set. + * @return This builder for chaining. + */ + public Builder setKmsKey(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + kmsKey_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +       * The key must be in the same region as the workstation configuration.
            +       * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return This builder for chaining. + */ + public Builder clearKmsKey() { + kmsKey_ = getDefaultInstance().getKmsKey(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Immutable. The name of the Google Cloud KMS encryption key. For example,
            +       * `"projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
            +       * The key must be in the same region as the workstation configuration.
            +       * 
            + * + * string kms_key = 1 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The bytes for kmsKey to set. + * @return This builder for chaining. + */ + public Builder setKmsKeyBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + kmsKey_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object kmsKeyServiceAccount_ = ""; + + /** + * + * + *
            +       * Immutable. The service account to use with the specified
            +       * KMS key. We recommend that you use a separate service account
            +       * and follow KMS best practices. For more information, see
            +       * [Separation of
            +       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +       * `gcloud kms keys add-iam-policy-binding`
            +       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +       * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The kmsKeyServiceAccount. + */ + public java.lang.String getKmsKeyServiceAccount() { + java.lang.Object ref = kmsKeyServiceAccount_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + kmsKeyServiceAccount_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Immutable. The service account to use with the specified
            +       * KMS key. We recommend that you use a separate service account
            +       * and follow KMS best practices. For more information, see
            +       * [Separation of
            +       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +       * `gcloud kms keys add-iam-policy-binding`
            +       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +       * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return The bytes for kmsKeyServiceAccount. + */ + public com.google.protobuf.ByteString getKmsKeyServiceAccountBytes() { + java.lang.Object ref = kmsKeyServiceAccount_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + kmsKeyServiceAccount_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Immutable. The service account to use with the specified
            +       * KMS key. We recommend that you use a separate service account
            +       * and follow KMS best practices. For more information, see
            +       * [Separation of
            +       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +       * `gcloud kms keys add-iam-policy-binding`
            +       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +       * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The kmsKeyServiceAccount to set. + * @return This builder for chaining. + */ + public Builder setKmsKeyServiceAccount(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + kmsKeyServiceAccount_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Immutable. The service account to use with the specified
            +       * KMS key. We recommend that you use a separate service account
            +       * and follow KMS best practices. For more information, see
            +       * [Separation of
            +       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +       * `gcloud kms keys add-iam-policy-binding`
            +       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +       * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @return This builder for chaining. + */ + public Builder clearKmsKeyServiceAccount() { + kmsKeyServiceAccount_ = getDefaultInstance().getKmsKeyServiceAccount(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Immutable. The service account to use with the specified
            +       * KMS key. We recommend that you use a separate service account
            +       * and follow KMS best practices. For more information, see
            +       * [Separation of
            +       * duties](https://cloud.google.com/kms/docs/separation-of-duties) and
            +       * `gcloud kms keys add-iam-policy-binding`
            +       * [`--member`](https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member).
            +       * 
            + * + * string kms_key_service_account = 2 [(.google.api.field_behavior) = IMMUTABLE]; + * + * @param value The bytes for kmsKeyServiceAccount to set. + * @return This builder for chaining. + */ + public Builder setKmsKeyServiceAccountBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + kmsKeyServiceAccount_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey) + private static final com.google.cloud.workstations.v1beta.WorkstationConfig + .CustomerEncryptionKey + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey(); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CustomerEncryptionKey parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface ReadinessCheckOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +     * Optional. Path to which the request should be sent.
            +     * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The path. + */ + java.lang.String getPath(); + + /** + * + * + *
            +     * Optional. Path to which the request should be sent.
            +     * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for path. + */ + com.google.protobuf.ByteString getPathBytes(); + + /** + * + * + *
            +     * Optional. Port to which the request should be sent.
            +     * 
            + * + * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The port. + */ + int getPort(); + } + + /** + * + * + *
            +   * A readiness check to be performed on a workstation.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck} + */ + public static final class ReadinessCheck extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) + ReadinessCheckOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "ReadinessCheck"); + } + + // Use ReadinessCheck.newBuilder() to construct. + private ReadinessCheck(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private ReadinessCheck() { + path_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_ReadinessCheck_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_ReadinessCheck_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder.class); + } + + public static final int PATH_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object path_ = ""; + + /** + * + * + *
            +     * Optional. Path to which the request should be sent.
            +     * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The path. + */ + @java.lang.Override + public java.lang.String getPath() { + java.lang.Object ref = path_; + 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(); + path_ = s; + return s; + } + } + + /** + * + * + *
            +     * Optional. Path to which the request should be sent.
            +     * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for path. + */ + @java.lang.Override + public com.google.protobuf.ByteString getPathBytes() { + java.lang.Object ref = path_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + path_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PORT_FIELD_NUMBER = 2; + private int port_ = 0; + + /** + * + * + *
            +     * Optional. Port to which the request should be sent.
            +     * 
            + * + * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The port. + */ + @java.lang.Override + public int getPort() { + return port_; + } + + 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(path_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, path_); + } + if (port_ != 0) { + output.writeInt32(2, port_); + } + 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(path_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, path_); + } + if (port_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, port_); + } + 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.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck other = + (com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) obj; + + if (!getPath().equals(other.getPath())) return false; + if (getPort() != other.getPort()) 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) + PATH_FIELD_NUMBER; + hash = (53 * hash) + getPath().hashCode(); + hash = (37 * hash) + PORT_FIELD_NUMBER; + hash = (53 * hash) + getPort(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck 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.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck 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.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + 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.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck 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.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck 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 readiness check to be performed on a workstation.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_ReadinessCheck_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_ReadinessCheck_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder + .class); + } + + // Construct using + // com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + path_ = ""; + port_ = 0; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_ReadinessCheck_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck build() { + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck result = + new com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.path_ = path_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.port_ = port_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck other) { + if (other + == com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + .getDefaultInstance()) return this; + if (!other.getPath().isEmpty()) { + path_ = other.path_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.getPort() != 0) { + setPort(other.getPort()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + path_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 16: + { + port_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object path_ = ""; + + /** + * + * + *
            +       * Optional. Path to which the request should be sent.
            +       * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The path. + */ + public java.lang.String getPath() { + java.lang.Object ref = path_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + path_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
            +       * Optional. Path to which the request should be sent.
            +       * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for path. + */ + public com.google.protobuf.ByteString getPathBytes() { + java.lang.Object ref = path_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + path_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
            +       * Optional. Path to which the request should be sent.
            +       * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The path to set. + * @return This builder for chaining. + */ + public Builder setPath(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + path_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Path to which the request should be sent.
            +       * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearPath() { + path_ = getDefaultInstance().getPath(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Path to which the request should be sent.
            +       * 
            + * + * string path = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for path to set. + * @return This builder for chaining. + */ + public Builder setPathBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + path_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private int port_; + + /** + * + * + *
            +       * Optional. Port to which the request should be sent.
            +       * 
            + * + * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The port. + */ + @java.lang.Override + public int getPort() { + return port_; + } + + /** + * + * + *
            +       * Optional. Port to which the request should be sent.
            +       * 
            + * + * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The port to set. + * @return This builder for chaining. + */ + public Builder setPort(int value) { + + port_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. Port to which the request should be sent.
            +       * 
            + * + * int32 port = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearPort() { + bitField0_ = (bitField0_ & ~0x00000002); + port_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck) + private static final com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck(); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public ReadinessCheck parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface HttpOptionsOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +     * Optional. By default, the workstations service makes sure that all
            +     * requests to the workstation are authenticated. CORS preflight requests do
            +     * not include cookies or custom headers, and so are considered
            +     * unauthenticated and blocked by the workstations service. Enabling this
            +     * option allows these unauthenticated CORS preflight requests through to
            +     * the workstation, where it becomes the responsibility of the destination
            +     * server in the workstation to validate the request.
            +     * 
            + * + * + * bool allowed_unauthenticated_cors_preflight_requests = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The allowedUnauthenticatedCorsPreflightRequests. + */ + boolean getAllowedUnauthenticatedCorsPreflightRequests(); + + /** + * + * + *
            +     * Optional. By default, the workstations service replaces references to
            +     * localhost, 127.0.0.1, and 0.0.0.0 with the workstation's hostname in http
            +     * responses from the workstation so that applications under development run
            +     * properly on the workstation. This may intefere with some applications,
            +     * and so this option allows that behavior to be disabled.
            +     * 
            + * + * bool disable_localhost_replacement = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The disableLocalhostReplacement. + */ + boolean getDisableLocalhostReplacement(); + } + + /** + * + * + *
            +   * HTTP options for the running workstations.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions} + */ + public static final class HttpOptions extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions) + HttpOptionsOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "HttpOptions"); + } + + // Use HttpOptions.newBuilder() to construct. + private HttpOptions(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private HttpOptions() {} + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_HttpOptions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_HttpOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions.Builder.class); + } + + public static final int ALLOWED_UNAUTHENTICATED_CORS_PREFLIGHT_REQUESTS_FIELD_NUMBER = 1; + private boolean allowedUnauthenticatedCorsPreflightRequests_ = false; + + /** + * + * + *
            +     * Optional. By default, the workstations service makes sure that all
            +     * requests to the workstation are authenticated. CORS preflight requests do
            +     * not include cookies or custom headers, and so are considered
            +     * unauthenticated and blocked by the workstations service. Enabling this
            +     * option allows these unauthenticated CORS preflight requests through to
            +     * the workstation, where it becomes the responsibility of the destination
            +     * server in the workstation to validate the request.
            +     * 
            + * + * + * bool allowed_unauthenticated_cors_preflight_requests = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The allowedUnauthenticatedCorsPreflightRequests. + */ + @java.lang.Override + public boolean getAllowedUnauthenticatedCorsPreflightRequests() { + return allowedUnauthenticatedCorsPreflightRequests_; + } + + public static final int DISABLE_LOCALHOST_REPLACEMENT_FIELD_NUMBER = 2; + private boolean disableLocalhostReplacement_ = false; + + /** + * + * + *
            +     * Optional. By default, the workstations service replaces references to
            +     * localhost, 127.0.0.1, and 0.0.0.0 with the workstation's hostname in http
            +     * responses from the workstation so that applications under development run
            +     * properly on the workstation. This may intefere with some applications,
            +     * and so this option allows that behavior to be disabled.
            +     * 
            + * + * bool disable_localhost_replacement = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The disableLocalhostReplacement. + */ + @java.lang.Override + public boolean getDisableLocalhostReplacement() { + return disableLocalhostReplacement_; + } + + 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 (allowedUnauthenticatedCorsPreflightRequests_ != false) { + output.writeBool(1, allowedUnauthenticatedCorsPreflightRequests_); + } + if (disableLocalhostReplacement_ != false) { + output.writeBool(2, disableLocalhostReplacement_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (allowedUnauthenticatedCorsPreflightRequests_ != false) { + size += + com.google.protobuf.CodedOutputStream.computeBoolSize( + 1, allowedUnauthenticatedCorsPreflightRequests_); + } + if (disableLocalhostReplacement_ != false) { + size += + com.google.protobuf.CodedOutputStream.computeBoolSize(2, disableLocalhostReplacement_); + } + 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.cloud.workstations.v1beta.WorkstationConfig.HttpOptions)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions other = + (com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions) obj; + + if (getAllowedUnauthenticatedCorsPreflightRequests() + != other.getAllowedUnauthenticatedCorsPreflightRequests()) return false; + if (getDisableLocalhostReplacement() != other.getDisableLocalhostReplacement()) 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) + ALLOWED_UNAUTHENTICATED_CORS_PREFLIGHT_REQUESTS_FIELD_NUMBER; + hash = + (53 * hash) + + com.google.protobuf.Internal.hashBoolean( + getAllowedUnauthenticatedCorsPreflightRequests()); + hash = (37 * hash) + DISABLE_LOCALHOST_REPLACEMENT_FIELD_NUMBER; + hash = + (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDisableLocalhostReplacement()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions 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.cloud.workstations.v1beta.WorkstationConfig.HttpOptions parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions 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.cloud.workstations.v1beta.WorkstationConfig.HttpOptions + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions + 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.cloud.workstations.v1beta.WorkstationConfig.HttpOptions parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions 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.cloud.workstations.v1beta.WorkstationConfig.HttpOptions 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; + } + + /** + * + * + *
            +     * HTTP options for the running workstations.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions) + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptionsOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_HttpOptions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_HttpOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions.Builder.class); + } + + // Construct using + // com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + allowedUnauthenticatedCorsPreflightRequests_ = false; + disableLocalhostReplacement_ = false; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_HttpOptions_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions build() { + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions result = + new com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.allowedUnauthenticatedCorsPreflightRequests_ = + allowedUnauthenticatedCorsPreflightRequests_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.disableLocalhostReplacement_ = disableLocalhostReplacement_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions other) { + if (other + == com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions + .getDefaultInstance()) return this; + if (other.getAllowedUnauthenticatedCorsPreflightRequests() != false) { + setAllowedUnauthenticatedCorsPreflightRequests( + other.getAllowedUnauthenticatedCorsPreflightRequests()); + } + if (other.getDisableLocalhostReplacement() != false) { + setDisableLocalhostReplacement(other.getDisableLocalhostReplacement()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + allowedUnauthenticatedCorsPreflightRequests_ = input.readBool(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: + { + disableLocalhostReplacement_ = input.readBool(); + bitField0_ |= 0x00000002; + break; + } // case 16 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private boolean allowedUnauthenticatedCorsPreflightRequests_; + + /** + * + * + *
            +       * Optional. By default, the workstations service makes sure that all
            +       * requests to the workstation are authenticated. CORS preflight requests do
            +       * not include cookies or custom headers, and so are considered
            +       * unauthenticated and blocked by the workstations service. Enabling this
            +       * option allows these unauthenticated CORS preflight requests through to
            +       * the workstation, where it becomes the responsibility of the destination
            +       * server in the workstation to validate the request.
            +       * 
            + * + * + * bool allowed_unauthenticated_cors_preflight_requests = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The allowedUnauthenticatedCorsPreflightRequests. + */ + @java.lang.Override + public boolean getAllowedUnauthenticatedCorsPreflightRequests() { + return allowedUnauthenticatedCorsPreflightRequests_; + } + + /** + * + * + *
            +       * Optional. By default, the workstations service makes sure that all
            +       * requests to the workstation are authenticated. CORS preflight requests do
            +       * not include cookies or custom headers, and so are considered
            +       * unauthenticated and blocked by the workstations service. Enabling this
            +       * option allows these unauthenticated CORS preflight requests through to
            +       * the workstation, where it becomes the responsibility of the destination
            +       * server in the workstation to validate the request.
            +       * 
            + * + * + * bool allowed_unauthenticated_cors_preflight_requests = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The allowedUnauthenticatedCorsPreflightRequests to set. + * @return This builder for chaining. + */ + public Builder setAllowedUnauthenticatedCorsPreflightRequests(boolean value) { + + allowedUnauthenticatedCorsPreflightRequests_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. By default, the workstations service makes sure that all
            +       * requests to the workstation are authenticated. CORS preflight requests do
            +       * not include cookies or custom headers, and so are considered
            +       * unauthenticated and blocked by the workstations service. Enabling this
            +       * option allows these unauthenticated CORS preflight requests through to
            +       * the workstation, where it becomes the responsibility of the destination
            +       * server in the workstation to validate the request.
            +       * 
            + * + * + * bool allowed_unauthenticated_cors_preflight_requests = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearAllowedUnauthenticatedCorsPreflightRequests() { + bitField0_ = (bitField0_ & ~0x00000001); + allowedUnauthenticatedCorsPreflightRequests_ = false; + onChanged(); + return this; + } + + private boolean disableLocalhostReplacement_; + + /** + * + * + *
            +       * Optional. By default, the workstations service replaces references to
            +       * localhost, 127.0.0.1, and 0.0.0.0 with the workstation's hostname in http
            +       * responses from the workstation so that applications under development run
            +       * properly on the workstation. This may intefere with some applications,
            +       * and so this option allows that behavior to be disabled.
            +       * 
            + * + * bool disable_localhost_replacement = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The disableLocalhostReplacement. + */ + @java.lang.Override + public boolean getDisableLocalhostReplacement() { + return disableLocalhostReplacement_; + } + + /** + * + * + *
            +       * Optional. By default, the workstations service replaces references to
            +       * localhost, 127.0.0.1, and 0.0.0.0 with the workstation's hostname in http
            +       * responses from the workstation so that applications under development run
            +       * properly on the workstation. This may intefere with some applications,
            +       * and so this option allows that behavior to be disabled.
            +       * 
            + * + * bool disable_localhost_replacement = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The disableLocalhostReplacement to set. + * @return This builder for chaining. + */ + public Builder setDisableLocalhostReplacement(boolean value) { + + disableLocalhostReplacement_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Optional. By default, the workstations service replaces references to
            +       * localhost, 127.0.0.1, and 0.0.0.0 with the workstation's hostname in http
            +       * responses from the workstation so that applications under development run
            +       * properly on the workstation. This may intefere with some applications,
            +       * and so this option allows that behavior to be disabled.
            +       * 
            + * + * bool disable_localhost_replacement = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearDisableLocalhostReplacement() { + bitField0_ = (bitField0_ & ~0x00000002); + disableLocalhostReplacement_ = false; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions) + private static final com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions(); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public HttpOptions parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface PortRangeOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.workstations.v1beta.WorkstationConfig.PortRange) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
            +     * Required. Starting port number for the current range of ports.
            +     * Valid ports are 22, 80, and ports within the range 1024-65535.
            +     * 
            + * + * int32 first = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The first. + */ + int getFirst(); + + /** + * + * + *
            +     * Required. Ending port number for the current range of ports.
            +     * Valid ports are 22, 80, and ports within the range 1024-65535.
            +     * 
            + * + * int32 last = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The last. + */ + int getLast(); + } + + /** + * + * + *
            +   * A PortRange defines a range of ports. Both
            +   * [first][google.cloud.workstations.v1beta.WorkstationConfig.PortRange.first]
            +   * and
            +   * [last][google.cloud.workstations.v1beta.WorkstationConfig.PortRange.last]
            +   * are inclusive. To specify a single port, both
            +   * [first][google.cloud.workstations.v1beta.WorkstationConfig.PortRange.first]
            +   * and
            +   * [last][google.cloud.workstations.v1beta.WorkstationConfig.PortRange.last]
            +   * should be the same.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.PortRange} + */ + public static final class PortRange extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.cloud.workstations.v1beta.WorkstationConfig.PortRange) + PortRangeOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "PortRange"); + } + + // Use PortRange.newBuilder() to construct. + private PortRange(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private PortRange() {} + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PortRange_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PortRange_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.Builder.class); + } + + public static final int FIRST_FIELD_NUMBER = 1; + private int first_ = 0; + + /** + * + * + *
            +     * Required. Starting port number for the current range of ports.
            +     * Valid ports are 22, 80, and ports within the range 1024-65535.
            +     * 
            + * + * int32 first = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The first. + */ + @java.lang.Override + public int getFirst() { + return first_; + } + + public static final int LAST_FIELD_NUMBER = 2; + private int last_ = 0; + + /** + * + * + *
            +     * Required. Ending port number for the current range of ports.
            +     * Valid ports are 22, 80, and ports within the range 1024-65535.
            +     * 
            + * + * int32 last = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The last. + */ + @java.lang.Override + public int getLast() { + return last_; + } + + 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 (first_ != 0) { + output.writeInt32(1, first_); + } + if (last_ != 0) { + output.writeInt32(2, last_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (first_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, first_); + } + if (last_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, last_); + } + 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.cloud.workstations.v1beta.WorkstationConfig.PortRange)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange other = + (com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange) obj; + + if (getFirst() != other.getFirst()) return false; + if (getLast() != other.getLast()) 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) + FIRST_FIELD_NUMBER; + hash = (53 * hash) + getFirst(); + hash = (37 * hash) + LAST_FIELD_NUMBER; + hash = (53 * hash) + getLast(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange 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.cloud.workstations.v1beta.WorkstationConfig.PortRange parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange 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.cloud.workstations.v1beta.WorkstationConfig.PortRange + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange + 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.cloud.workstations.v1beta.WorkstationConfig.PortRange parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange 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.cloud.workstations.v1beta.WorkstationConfig.PortRange 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 PortRange defines a range of ports. Both
            +     * [first][google.cloud.workstations.v1beta.WorkstationConfig.PortRange.first]
            +     * and
            +     * [last][google.cloud.workstations.v1beta.WorkstationConfig.PortRange.last]
            +     * are inclusive. To specify a single port, both
            +     * [first][google.cloud.workstations.v1beta.WorkstationConfig.PortRange.first]
            +     * and
            +     * [last][google.cloud.workstations.v1beta.WorkstationConfig.PortRange.last]
            +     * should be the same.
            +     * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig.PortRange} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig.PortRange) + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRangeOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PortRange_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PortRange_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.Builder.class); + } + + // Construct using + // com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + first_ = 0; + last_ = 0; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PortRange_descriptor; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange + getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange build() { + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange result = + new com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.first_ = first_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.last_ = last_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange) { + return mergeFrom( + (com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange other) { + if (other + == com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange + .getDefaultInstance()) return this; + if (other.getFirst() != 0) { + setFirst(other.getFirst()); + } + if (other.getLast() != 0) { + setLast(other.getLast()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + first_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: + { + last_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private int first_; + + /** + * + * + *
            +       * Required. Starting port number for the current range of ports.
            +       * Valid ports are 22, 80, and ports within the range 1024-65535.
            +       * 
            + * + * int32 first = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The first. + */ + @java.lang.Override + public int getFirst() { + return first_; + } + + /** + * + * + *
            +       * Required. Starting port number for the current range of ports.
            +       * Valid ports are 22, 80, and ports within the range 1024-65535.
            +       * 
            + * + * int32 first = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The first to set. + * @return This builder for chaining. + */ + public Builder setFirst(int value) { + + first_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Required. Starting port number for the current range of ports.
            +       * Valid ports are 22, 80, and ports within the range 1024-65535.
            +       * 
            + * + * int32 first = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearFirst() { + bitField0_ = (bitField0_ & ~0x00000001); + first_ = 0; + onChanged(); + return this; + } + + private int last_; + + /** + * + * + *
            +       * Required. Ending port number for the current range of ports.
            +       * Valid ports are 22, 80, and ports within the range 1024-65535.
            +       * 
            + * + * int32 last = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The last. + */ + @java.lang.Override + public int getLast() { + return last_; + } + + /** + * + * + *
            +       * Required. Ending port number for the current range of ports.
            +       * Valid ports are 22, 80, and ports within the range 1024-65535.
            +       * 
            + * + * int32 last = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The last to set. + * @return This builder for chaining. + */ + public Builder setLast(int value) { + + last_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
            +       * Required. Ending port number for the current range of ports.
            +       * Valid ports are 22, 80, and ports within the range 1024-65535.
            +       * 
            + * + * int32 last = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearLast() { + bitField0_ = (bitField0_ & ~0x00000002); + last_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.cloud.workstations.v1beta.WorkstationConfig.PortRange) + } + + // @@protoc_insertion_point(class_scope:google.cloud.workstations.v1beta.WorkstationConfig.PortRange) + private static final com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange(); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public PortRange parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + private int bitField0_; + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + + /** + * + * + *
            +   * Identifier. Full name of this workstation configuration.
            +   * 
            + * + * 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. Full name of this workstation configuration.
            +   * 
            + * + * 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 DISPLAY_NAME_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object displayName_ = ""; + + /** + * + * + *
            +   * Optional. Human-readable name for this workstation configuration.
            +   * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The displayName. + */ + @java.lang.Override + public java.lang.String getDisplayName() { + java.lang.Object ref = displayName_; + 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(); + displayName_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Human-readable name for this workstation configuration.
            +   * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for displayName. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDisplayNameBytes() { + java.lang.Object ref = displayName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + displayName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int UID_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object uid_ = ""; + + /** + * + * + *
            +   * Output only. A system-assigned unique identifier for this workstation
            +   * configuration.
            +   * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The uid. + */ + @java.lang.Override + public java.lang.String getUid() { + java.lang.Object ref = uid_; + 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(); + uid_ = s; + return s; + } + } + + /** + * + * + *
            +   * Output only. A system-assigned unique identifier for this workstation
            +   * configuration.
            +   * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The bytes for uid. + */ + @java.lang.Override + public com.google.protobuf.ByteString getUidBytes() { + java.lang.Object ref = uid_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int RECONCILING_FIELD_NUMBER = 4; + private boolean reconciling_ = false; + + /** + * + * + *
            +   * Output only. Indicates whether this workstation configuration is currently
            +   * being updated to match its intended state.
            +   * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The reconciling. + */ + @java.lang.Override + public boolean getReconciling() { + return reconciling_; + } + + public static final int ANNOTATIONS_FIELD_NUMBER = 5; + + private static final class AnnotationsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_AnnotationsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField annotations_; + + private com.google.protobuf.MapField + internalGetAnnotations() { + if (annotations_ == null) { + return com.google.protobuf.MapField.emptyMapField(AnnotationsDefaultEntryHolder.defaultEntry); + } + return annotations_; + } + + public int getAnnotationsCount() { + return internalGetAnnotations().getMap().size(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public boolean containsAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetAnnotations().getMap().containsKey(key); + } + + /** Use {@link #getAnnotationsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getAnnotations() { + return getAnnotationsMap(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.Map getAnnotationsMap() { + return internalGetAnnotations().getMap(); + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public /* nullable */ java.lang.String getAnnotationsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional. Client-specified annotations.
            +   * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getAnnotationsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetAnnotations().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int LABELS_FIELD_NUMBER = 18; + + private static final class LabelsDefaultEntryHolder { + static final com.google.protobuf.MapEntry defaultEntry = + com.google.protobuf.MapEntry.newDefaultInstance( + com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_LabelsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + + @SuppressWarnings("serial") + private com.google.protobuf.MapField labels_; + + private com.google.protobuf.MapField internalGetLabels() { + if (labels_ == null) { + return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); + } + return labels_; + } + + public int getLabelsCount() { + return internalGetLabels().getMap().size(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation configuration and that are also propagated
            +   * to the underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetLabels().getMap().containsKey(key); + } + + /** Use {@link #getLabelsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getLabels() { + return getLabelsMap(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation configuration and that are also propagated
            +   * to the underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.util.Map getLabelsMap() { + return internalGetLabels().getMap(); + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation configuration and that are also propagated
            +   * to the underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public /* nullable */ java.lang.String getLabelsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +   * Optional.
            +   * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +   * are applied to the workstation configuration and that are also propagated
            +   * to the underlying Compute Engine resources.
            +   * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getLabelsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int CREATE_TIME_FIELD_NUMBER = 6; + private com.google.protobuf.Timestamp createTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the createTime field is set. + */ + @java.lang.Override + public boolean hasCreateTime() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The createTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getCreateTime() { + return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was created.
            +   * 
            + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { + return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; + } + + public static final int UPDATE_TIME_FIELD_NUMBER = 7; + private com.google.protobuf.Timestamp updateTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was most recently
            +   * updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the updateTime field is set. + */ + @java.lang.Override + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was most recently
            +   * updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The updateTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getUpdateTime() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was most recently
            +   * updated.
            +   * 
            + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + public static final int DELETE_TIME_FIELD_NUMBER = 8; + private com.google.protobuf.Timestamp deleteTime_; + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the deleteTime field is set. + */ + @java.lang.Override + public boolean hasDeleteTime() { + return ((bitField0_ & 0x00000004) != 0); + } + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The deleteTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getDeleteTime() { + return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; + } + + /** + * + * + *
            +   * Output only. Time when this workstation configuration was soft-deleted.
            +   * 
            + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { + return deleteTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : deleteTime_; + } + + public static final int ETAG_FIELD_NUMBER = 9; + + @SuppressWarnings("serial") + private volatile java.lang.Object etag_ = ""; + + /** + * + * + *
            +   * Optional. Checksum computed by the server. May be sent on update and delete
            +   * requests to make sure that the client has an up-to-date value before
            +   * proceeding.
            +   * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The etag. + */ + @java.lang.Override + public java.lang.String getEtag() { + java.lang.Object ref = etag_; + 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(); + etag_ = s; + return s; + } + } + + /** + * + * + *
            +   * Optional. Checksum computed by the server. May be sent on update and delete
            +   * requests to make sure that the client has an up-to-date value before
            +   * proceeding.
            +   * 
            + * + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for etag. + */ + @java.lang.Override + public com.google.protobuf.ByteString getEtagBytes() { + java.lang.Object ref = etag_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + etag_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int IDLE_TIMEOUT_FIELD_NUMBER = 10; + private com.google.protobuf.Duration idleTimeout_; + + /** + * + * + *
            +   * Optional. Number of seconds to wait before automatically stopping a
            +   * workstation after it last received user traffic.
            +   *
            +   * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +   * configuration should never time out due to idleness.
            +   * Provide
            +   * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +   * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +   * The default is `"1200s"` (20 minutes).
            +   * 
            + * + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the idleTimeout field is set. + */ + @java.lang.Override + public boolean hasIdleTimeout() { + return ((bitField0_ & 0x00000008) != 0); + } + + /** + * + * + *
            +   * Optional. Number of seconds to wait before automatically stopping a
            +   * workstation after it last received user traffic.
            +   *
            +   * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +   * configuration should never time out due to idleness.
            +   * Provide
            +   * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +   * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +   * The default is `"1200s"` (20 minutes).
            +   * 
            + * + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The idleTimeout. + */ + @java.lang.Override + public com.google.protobuf.Duration getIdleTimeout() { + return idleTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : idleTimeout_; + } + + /** + * + * + *
            +   * Optional. Number of seconds to wait before automatically stopping a
            +   * workstation after it last received user traffic.
            +   *
            +   * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +   * configuration should never time out due to idleness.
            +   * Provide
            +   * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +   * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +   * The default is `"1200s"` (20 minutes).
            +   * 
            + * + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder() { + return idleTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : idleTimeout_; + } + + public static final int RUNNING_TIMEOUT_FIELD_NUMBER = 11; + private com.google.protobuf.Duration runningTimeout_; + + /** + * + * + *
            +   * Optional. Number of seconds that a workstation can run until it is
            +   * automatically shut down. We recommend that workstations be shut down daily
            +   * to reduce costs and so that security updates can be applied upon restart.
            +   * The
            +   * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            +   * and
            +   * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +   * fields are independent of each other. Note that the
            +   * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +   * field shuts down VMs after the specified time, regardless of whether or not
            +   * the VMs are idle.
            +   *
            +   * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +   * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +   * that workstations using this configuration should never time out. If
            +   * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            +   * is set, it must be greater than `"0s"` and less than
            +   * `"86400s"` (24 hours).
            +   *
            +   * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +   * with this configuration have no maximum running time. This is strongly
            +   * discouraged because you incur costs and will not pick up security updates.
            +   * 
            + * + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the runningTimeout field is set. + */ + @java.lang.Override + public boolean hasRunningTimeout() { + return ((bitField0_ & 0x00000010) != 0); + } + + /** + * + * + *
            +   * Optional. Number of seconds that a workstation can run until it is
            +   * automatically shut down. We recommend that workstations be shut down daily
            +   * to reduce costs and so that security updates can be applied upon restart.
            +   * The
            +   * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            +   * and
            +   * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +   * fields are independent of each other. Note that the
            +   * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +   * field shuts down VMs after the specified time, regardless of whether or not
            +   * the VMs are idle.
            +   *
            +   * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +   * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +   * that workstations using this configuration should never time out. If
            +   * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            +   * is set, it must be greater than `"0s"` and less than
            +   * `"86400s"` (24 hours).
            +   *
            +   * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +   * with this configuration have no maximum running time. This is strongly
            +   * discouraged because you incur costs and will not pick up security updates.
            +   * 
            + * + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The runningTimeout. + */ + @java.lang.Override + public com.google.protobuf.Duration getRunningTimeout() { + return runningTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : runningTimeout_; + } + + /** + * + * + *
            +   * Optional. Number of seconds that a workstation can run until it is
            +   * automatically shut down. We recommend that workstations be shut down daily
            +   * to reduce costs and so that security updates can be applied upon restart.
            +   * The
            +   * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            +   * and
            +   * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +   * fields are independent of each other. Note that the
            +   * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +   * field shuts down VMs after the specified time, regardless of whether or not
            +   * the VMs are idle.
            +   *
            +   * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +   * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +   * that workstations using this configuration should never time out. If
            +   * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            +   * is set, it must be greater than `"0s"` and less than
            +   * `"86400s"` (24 hours).
            +   *
            +   * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +   * with this configuration have no maximum running time. This is strongly
            +   * discouraged because you incur costs and will not pick up security updates.
            +   * 
            + * + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.protobuf.DurationOrBuilder getRunningTimeoutOrBuilder() { + return runningTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : runningTimeout_; + } + + public static final int MAX_USABLE_WORKSTATIONS_FIELD_NUMBER = 28; + private int maxUsableWorkstations_ = 0; + + /** + * + * + *
            +   * Optional. Maximum number of workstations under this configuration a user
            +   * can have `workstations.workstation.use` permission on.
            +   *
            +   * Only enforced on CreateWorkstation API calls on the user issuing the API
            +   * request. Can be overridden by:
            +   *
            +   * - granting a user
            +   * workstations.workstationConfigs.exemptMaxUsableWorkstationLimit permission,
            +   * or
            +   * - having a user with that permission create a workstation and
            +   * granting another user `workstations.workstation.use` permission on
            +   * that workstation.
            +   *
            +   * If not specified, defaults to `0`, which indicates unlimited.
            +   * 
            + * + * int32 max_usable_workstations = 28 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxUsableWorkstations. + */ + @java.lang.Override + public int getMaxUsableWorkstations() { + return maxUsableWorkstations_; + } + + public static final int HOST_FIELD_NUMBER = 12; + private com.google.cloud.workstations.v1beta.WorkstationConfig.Host host_; + + /** + * + * + *
            +   * Optional. Runtime host for the workstation.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the host field is set. + */ + @java.lang.Override + public boolean hasHost() { + return ((bitField0_ & 0x00000020) != 0); + } + + /** + * + * + *
            +   * Optional. Runtime host for the workstation.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The host. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host getHost() { + return host_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.getDefaultInstance() + : host_; + } + + /** + * + * + *
            +   * Optional. Runtime host for the workstation.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.HostOrBuilder getHostOrBuilder() { + return host_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.getDefaultInstance() + : host_; + } + + public static final int PERSISTENT_DIRECTORIES_FIELD_NUMBER = 13; + + @SuppressWarnings("serial") + private java.util.List + persistentDirectories_; + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getPersistentDirectoriesList() { + return persistentDirectories_; + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectoryOrBuilder> + getPersistentDirectoriesOrBuilderList() { + return persistentDirectories_; + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getPersistentDirectoriesCount() { + return persistentDirectories_.size(); + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + getPersistentDirectories(int index) { + return persistentDirectories_.get(index); + } + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectoryOrBuilder + getPersistentDirectoriesOrBuilder(int index) { + return persistentDirectories_.get(index); + } + + public static final int EPHEMERAL_DIRECTORIES_FIELD_NUMBER = 22; + + @SuppressWarnings("serial") + private java.util.List + ephemeralDirectories_; + + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getEphemeralDirectoriesList() { + return ephemeralDirectories_; + } + + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder> + getEphemeralDirectoriesOrBuilderList() { + return ephemeralDirectories_; + } + + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getEphemeralDirectoriesCount() { + return ephemeralDirectories_.size(); + } + + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + getEphemeralDirectories(int index) { + return ephemeralDirectories_.get(index); + } + + /** + * + * + *
            +   * Optional. Ephemeral directories which won't persist across workstation
            +   * sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder + getEphemeralDirectoriesOrBuilder(int index) { + return ephemeralDirectories_.get(index); + } + + public static final int CONTAINER_FIELD_NUMBER = 14; + private com.google.cloud.workstations.v1beta.WorkstationConfig.Container container_; + + /** + * + * + *
            +   * Optional. Container that runs upon startup for each workstation using this
            +   * workstation configuration.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the container field is set. + */ + @java.lang.Override + public boolean hasContainer() { + return ((bitField0_ & 0x00000040) != 0); + } + + /** + * + * + *
            +   * Optional. Container that runs upon startup for each workstation using this
            +   * workstation configuration.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The container. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.Container getContainer() { + return container_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Container.getDefaultInstance() + : container_; + } + + /** + * + * + *
            +   * Optional. Container that runs upon startup for each workstation using this
            +   * workstation configuration.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.ContainerOrBuilder + getContainerOrBuilder() { + return container_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Container.getDefaultInstance() + : container_; + } + + public static final int ENCRYPTION_KEY_FIELD_NUMBER = 17; + private com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + encryptionKey_; + + /** + * + * + *
            +   * Immutable. Encrypts resources of this workstation configuration using a
            +   * customer-managed encryption key (CMEK).
            +   *
            +   * If specified, the boot disk of the Compute Engine instance and the
            +   * persistent disk are encrypted using this encryption key. If
            +   * this field is not set, the disks are encrypted using a generated
            +   * key. Customer-managed encryption keys do not protect disk metadata.
            +   *
            +   * If the customer-managed encryption key is rotated, when the workstation
            +   * instance is stopped, the system attempts to recreate the
            +   * persistent disk with the new version of the key. Be sure to keep
            +   * older versions of the key until the persistent disk is recreated.
            +   * Otherwise, data on the persistent disk might be lost.
            +   *
            +   * If the encryption key is revoked, the workstation session automatically
            +   * stops within 7 hours.
            +   *
            +   * Immutable after the workstation configuration is created.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * + * + * @return Whether the encryptionKey field is set. + */ + @java.lang.Override + public boolean hasEncryptionKey() { + return ((bitField0_ & 0x00000080) != 0); + } + + /** + * + * + *
            +   * Immutable. Encrypts resources of this workstation configuration using a
            +   * customer-managed encryption key (CMEK).
            +   *
            +   * If specified, the boot disk of the Compute Engine instance and the
            +   * persistent disk are encrypted using this encryption key. If
            +   * this field is not set, the disks are encrypted using a generated
            +   * key. Customer-managed encryption keys do not protect disk metadata.
            +   *
            +   * If the customer-managed encryption key is rotated, when the workstation
            +   * instance is stopped, the system attempts to recreate the
            +   * persistent disk with the new version of the key. Be sure to keep
            +   * older versions of the key until the persistent disk is recreated.
            +   * Otherwise, data on the persistent disk might be lost.
            +   *
            +   * If the encryption key is revoked, the workstation session automatically
            +   * stops within 7 hours.
            +   *
            +   * Immutable after the workstation configuration is created.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * + * + * @return The encryptionKey. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + getEncryptionKey() { + return encryptionKey_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + .getDefaultInstance() + : encryptionKey_; + } + + /** + * + * + *
            +   * Immutable. Encrypts resources of this workstation configuration using a
            +   * customer-managed encryption key (CMEK).
            +   *
            +   * If specified, the boot disk of the Compute Engine instance and the
            +   * persistent disk are encrypted using this encryption key. If
            +   * this field is not set, the disks are encrypted using a generated
            +   * key. Customer-managed encryption keys do not protect disk metadata.
            +   *
            +   * If the customer-managed encryption key is rotated, when the workstation
            +   * instance is stopped, the system attempts to recreate the
            +   * persistent disk with the new version of the key. Be sure to keep
            +   * older versions of the key until the persistent disk is recreated.
            +   * Otherwise, data on the persistent disk might be lost.
            +   *
            +   * If the encryption key is revoked, the workstation session automatically
            +   * stops within 7 hours.
            +   *
            +   * Immutable after the workstation configuration is created.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKeyOrBuilder + getEncryptionKeyOrBuilder() { + return encryptionKey_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + .getDefaultInstance() + : encryptionKey_; + } + + public static final int READINESS_CHECKS_FIELD_NUMBER = 19; + + @SuppressWarnings("serial") + private java.util.List + readinessChecks_; + + /** + * + * + *
            +   * Optional. Readiness checks to perform when starting a workstation using
            +   * this workstation configuration. Mark a workstation as running only after
            +   * all specified readiness checks return 200 status codes.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getReadinessChecksList() { + return readinessChecks_; + } + + /** + * + * + *
            +   * Optional. Readiness checks to perform when starting a workstation using
            +   * this workstation configuration. Mark a workstation as running only after
            +   * all specified readiness checks return 200 status codes.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder> + getReadinessChecksOrBuilderList() { + return readinessChecks_; + } + + /** + * + * + *
            +   * Optional. Readiness checks to perform when starting a workstation using
            +   * this workstation configuration. Mark a workstation as running only after
            +   * all specified readiness checks return 200 status codes.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getReadinessChecksCount() { + return readinessChecks_.size(); + } + + /** + * + * + *
            +   * Optional. Readiness checks to perform when starting a workstation using
            +   * this workstation configuration. Mark a workstation as running only after
            +   * all specified readiness checks return 200 status codes.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck getReadinessChecks( + int index) { + return readinessChecks_.get(index); + } + + /** + * + * + *
            +   * Optional. Readiness checks to perform when starting a workstation using
            +   * this workstation configuration. Mark a workstation as running only after
            +   * all specified readiness checks return 200 status codes.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder + getReadinessChecksOrBuilder(int index) { + return readinessChecks_.get(index); + } + + public static final int REPLICA_ZONES_FIELD_NUMBER = 23; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList replicaZones_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + /** + * + * + *
            +   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +   * resources within the region. If set, exactly two zones within the
            +   * workstation cluster's region must be specified—for example,
            +   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +   * zones within the region are used.
            +   *
            +   * Immutable after the workstation configuration is created.
            +   * 
            + * + * + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * + * + * @return A list containing the replicaZones. + */ + public com.google.protobuf.ProtocolStringList getReplicaZonesList() { + return replicaZones_; + } + + /** + * + * + *
            +   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +   * resources within the region. If set, exactly two zones within the
            +   * workstation cluster's region must be specified—for example,
            +   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +   * zones within the region are used.
            +   *
            +   * Immutable after the workstation configuration is created.
            +   * 
            + * + * + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * + * + * @return The count of replicaZones. + */ + public int getReplicaZonesCount() { + return replicaZones_.size(); + } + + /** + * + * + *
            +   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +   * resources within the region. If set, exactly two zones within the
            +   * workstation cluster's region must be specified—for example,
            +   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +   * zones within the region are used.
            +   *
            +   * Immutable after the workstation configuration is created.
            +   * 
            + * + * + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * + * + * @param index The index of the element to return. + * @return The replicaZones at the given index. + */ + public java.lang.String getReplicaZones(int index) { + return replicaZones_.get(index); + } + + /** + * + * + *
            +   * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +   * resources within the region. If set, exactly two zones within the
            +   * workstation cluster's region must be specified—for example,
            +   * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +   * zones within the region are used.
            +   *
            +   * Immutable after the workstation configuration is created.
            +   * 
            + * + * + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * + * + * @param index The index of the value to return. + * @return The bytes of the replicaZones at the given index. + */ + public com.google.protobuf.ByteString getReplicaZonesBytes(int index) { + return replicaZones_.getByteString(index); + } + + public static final int DEGRADED_FIELD_NUMBER = 15; + private boolean degraded_ = false; + + /** + * + * + *
            +   * Output only. Whether this workstation configuration is in degraded mode, in
            +   * which case it may require user action to restore full functionality. The
            +   * [conditions][google.cloud.workstations.v1beta.WorkstationConfig.conditions]
            +   * field contains detailed information about the status of the configuration.
            +   * 
            + * + * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The degraded. + */ + @java.lang.Override + public boolean getDegraded() { + return degraded_; + } + + public static final int CONDITIONS_FIELD_NUMBER = 16; + + @SuppressWarnings("serial") + private java.util.List conditions_; + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getConditionsList() { + return conditions_; + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getConditionsOrBuilderList() { + return conditions_; + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getConditionsCount() { + return conditions_.size(); + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.rpc.Status getConditions(int index) { + return conditions_.get(index); + } + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { + return conditions_.get(index); + } + + public static final int ENABLE_AUDIT_AGENT_FIELD_NUMBER = 20; + private boolean enableAuditAgent_ = false; + + /** + * + * + *
            +   * Optional. Whether to enable Linux `auditd` logging on the workstation. When
            +   * enabled, a
            +   * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account]
            +   * must also be specified that has `roles/logging.logWriter` and
            +   * `roles/monitoring.metricWriter` on the project. Operating system audit
            +   * logging is distinct from [Cloud Audit
            +   * Logs](https://cloud.google.com/workstations/docs/audit-logging) and
            +   * [Container output
            +   * logging](https://cloud.google.com/workstations/docs/container-output-logging#overview).
            +   * Operating system audit logs are available in the
            +   * [Cloud Logging](https://cloud.google.com/logging/docs) console by querying:
            +   *
            +   * resource.type="gce_instance"
            +   * log_name:"/logs/linux-auditd"
            +   * 
            + * + * bool enable_audit_agent = 20 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enableAuditAgent. + */ + @java.lang.Override + public boolean getEnableAuditAgent() { + return enableAuditAgent_; + } + + public static final int HTTP_OPTIONS_FIELD_NUMBER = 21; + private com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions httpOptions_; + + /** + * + * + *
            +   * Optional. HTTP options that customize the behavior of the workstation
            +   * service's HTTP proxy.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the httpOptions field is set. + */ + @java.lang.Override + public boolean hasHttpOptions() { + return ((bitField0_ & 0x00000100) != 0); + } + + /** + * + * + *
            +   * Optional. HTTP options that customize the behavior of the workstation
            +   * service's HTTP proxy.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The httpOptions. + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions getHttpOptions() { + return httpOptions_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions.getDefaultInstance() + : httpOptions_; + } + + /** + * + * + *
            +   * Optional. HTTP options that customize the behavior of the workstation
            +   * service's HTTP proxy.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptionsOrBuilder + getHttpOptionsOrBuilder() { + return httpOptions_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions.getDefaultInstance() + : httpOptions_; + } + + public static final int DISABLE_TCP_CONNECTIONS_FIELD_NUMBER = 24; + private boolean disableTcpConnections_ = false; + + /** + * + * + *
            +   * Optional. Disables support for plain TCP connections in the workstation.
            +   * By default the service supports TCP connections through a websocket relay.
            +   * Setting this option to true disables that relay, which prevents the usage
            +   * of services that require plain TCP connections, such as SSH.
            +   * When enabled, all communication must occur over HTTPS or WSS.
            +   * 
            + * + * bool disable_tcp_connections = 24 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The disableTcpConnections. + */ + @java.lang.Override + public boolean getDisableTcpConnections() { + return disableTcpConnections_; + } + + public static final int ALLOWED_PORTS_FIELD_NUMBER = 25; + + @SuppressWarnings("serial") + private java.util.List + allowedPorts_; + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getAllowedPortsList() { + return allowedPorts_; + } + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.cloud.workstations.v1beta.WorkstationConfig.PortRangeOrBuilder> + getAllowedPortsOrBuilderList() { + return allowedPorts_; + } + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getAllowedPortsCount() { + return allowedPorts_.size(); + } + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange getAllowedPorts( + int index) { + return allowedPorts_.get(index); + } + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig.PortRangeOrBuilder + getAllowedPortsOrBuilder(int index) { + return allowedPorts_.get(index); + } + + public static final int SATISFIES_PZS_FIELD_NUMBER = 26; + private boolean satisfiesPzs_ = false; + + /** + * + * + *
            +   * Output only. Reserved for future use.
            +   * 
            + * + * bool satisfies_pzs = 26 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzs. + */ + @java.lang.Override + public boolean getSatisfiesPzs() { + return satisfiesPzs_; + } + + public static final int SATISFIES_PZI_FIELD_NUMBER = 27; + private boolean satisfiesPzi_ = false; + + /** + * + * + *
            +   * Output only. Reserved for future use.
            +   * 
            + * + * bool satisfies_pzi = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzi. + */ + @java.lang.Override + public boolean getSatisfiesPzi() { + return satisfiesPzi_; + } + + public static final int GRANT_WORKSTATION_ADMIN_ROLE_ON_CREATE_FIELD_NUMBER = 29; + private boolean grantWorkstationAdminRoleOnCreate_ = false; + + /** + * + * + *
            +   * Optional. Grant creator of a workstation `roles/workstations.policyAdmin`
            +   * role along with `roles/workstations.user` role on the workstation created
            +   * by them. This allows workstation users to share access to either their
            +   * entire workstation, or individual ports. Defaults to false.
            +   * 
            + * + * + * bool grant_workstation_admin_role_on_create = 29 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The grantWorkstationAdminRoleOnCreate. + */ + @java.lang.Override + public boolean getGrantWorkstationAdminRoleOnCreate() { + return grantWorkstationAdminRoleOnCreate_; + } + + public static final int ENABLE_PUSHING_CREDENTIALS_FIELD_NUMBER = 30; + private boolean enablePushingCredentials_ = false; + + /** + * + * + *
            +   * Optional. Enables pushing user provided credentials to Workstations by
            +   * calling workstations.pushCredentials. If application_default_credentials
            +   * are supplied to pushCredentials, the provided token is returned when tools
            +   * and applications running in the user container make a request for Default
            +   * Application Credentials. Please note that any credentials supplied are made
            +   * available to all users with access to the workstation.
            +   * 
            + * + * bool enable_pushing_credentials = 30 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enablePushingCredentials. + */ + @java.lang.Override + public boolean getEnablePushingCredentials() { + return enablePushingCredentials_; + } + + 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(displayName_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, displayName_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, uid_); + } + if (reconciling_ != false) { + output.writeBool(4, reconciling_); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetAnnotations(), AnnotationsDefaultEntryHolder.defaultEntry, 5); + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(6, getCreateTime()); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(7, getUpdateTime()); + } + if (((bitField0_ & 0x00000004) != 0)) { + output.writeMessage(8, getDeleteTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 9, etag_); + } + if (((bitField0_ & 0x00000008) != 0)) { + output.writeMessage(10, getIdleTimeout()); + } + if (((bitField0_ & 0x00000010) != 0)) { + output.writeMessage(11, getRunningTimeout()); + } + if (((bitField0_ & 0x00000020) != 0)) { + output.writeMessage(12, getHost()); + } + for (int i = 0; i < persistentDirectories_.size(); i++) { + output.writeMessage(13, persistentDirectories_.get(i)); + } + if (((bitField0_ & 0x00000040) != 0)) { + output.writeMessage(14, getContainer()); + } + if (degraded_ != false) { + output.writeBool(15, degraded_); + } + for (int i = 0; i < conditions_.size(); i++) { + output.writeMessage(16, conditions_.get(i)); + } + if (((bitField0_ & 0x00000080) != 0)) { + output.writeMessage(17, getEncryptionKey()); + } + com.google.protobuf.GeneratedMessage.serializeStringMapTo( + output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 18); + for (int i = 0; i < readinessChecks_.size(); i++) { + output.writeMessage(19, readinessChecks_.get(i)); + } + if (enableAuditAgent_ != false) { + output.writeBool(20, enableAuditAgent_); + } + if (((bitField0_ & 0x00000100) != 0)) { + output.writeMessage(21, getHttpOptions()); + } + for (int i = 0; i < ephemeralDirectories_.size(); i++) { + output.writeMessage(22, ephemeralDirectories_.get(i)); + } + for (int i = 0; i < replicaZones_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString(output, 23, replicaZones_.getRaw(i)); + } + if (disableTcpConnections_ != false) { + output.writeBool(24, disableTcpConnections_); + } + for (int i = 0; i < allowedPorts_.size(); i++) { + output.writeMessage(25, allowedPorts_.get(i)); + } + if (satisfiesPzs_ != false) { + output.writeBool(26, satisfiesPzs_); + } + if (satisfiesPzi_ != false) { + output.writeBool(27, satisfiesPzi_); + } + if (maxUsableWorkstations_ != 0) { + output.writeInt32(28, maxUsableWorkstations_); + } + if (grantWorkstationAdminRoleOnCreate_ != false) { + output.writeBool(29, grantWorkstationAdminRoleOnCreate_); + } + if (enablePushingCredentials_ != false) { + output.writeBool(30, enablePushingCredentials_); + } + 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(displayName_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, displayName_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, uid_); + } + if (reconciling_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, reconciling_); + } + for (java.util.Map.Entry entry : + internalGetAnnotations().getMap().entrySet()) { + com.google.protobuf.MapEntry annotations__ = + AnnotationsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, annotations__); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getCreateTime()); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getUpdateTime()); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getDeleteTime()); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(9, etag_); + } + if (((bitField0_ & 0x00000008) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(10, getIdleTimeout()); + } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(11, getRunningTimeout()); + } + if (((bitField0_ & 0x00000020) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, getHost()); + } + for (int i = 0; i < persistentDirectories_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 13, persistentDirectories_.get(i)); + } + if (((bitField0_ & 0x00000040) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, getContainer()); + } + if (degraded_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(15, degraded_); + } + for (int i = 0; i < conditions_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(16, conditions_.get(i)); + } + if (((bitField0_ & 0x00000080) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(17, getEncryptionKey()); + } + for (java.util.Map.Entry entry : + internalGetLabels().getMap().entrySet()) { + com.google.protobuf.MapEntry labels__ = + LabelsDefaultEntryHolder.defaultEntry + .newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream.computeMessageSize(18, labels__); + } + for (int i = 0; i < readinessChecks_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(19, readinessChecks_.get(i)); + } + if (enableAuditAgent_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(20, enableAuditAgent_); + } + if (((bitField0_ & 0x00000100) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(21, getHttpOptions()); + } + for (int i = 0; i < ephemeralDirectories_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 22, ephemeralDirectories_.get(i)); + } + { + int dataSize = 0; + for (int i = 0; i < replicaZones_.size(); i++) { + dataSize += computeStringSizeNoTag(replicaZones_.getRaw(i)); + } + size += dataSize; + size += 2 * getReplicaZonesList().size(); + } + if (disableTcpConnections_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(24, disableTcpConnections_); + } + for (int i = 0; i < allowedPorts_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(25, allowedPorts_.get(i)); + } + if (satisfiesPzs_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(26, satisfiesPzs_); + } + if (satisfiesPzi_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(27, satisfiesPzi_); + } + if (maxUsableWorkstations_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(28, maxUsableWorkstations_); + } + if (grantWorkstationAdminRoleOnCreate_ != false) { + size += + com.google.protobuf.CodedOutputStream.computeBoolSize( + 29, grantWorkstationAdminRoleOnCreate_); + } + if (enablePushingCredentials_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(30, enablePushingCredentials_); + } + 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.cloud.workstations.v1beta.WorkstationConfig)) { + return super.equals(obj); + } + com.google.cloud.workstations.v1beta.WorkstationConfig other = + (com.google.cloud.workstations.v1beta.WorkstationConfig) obj; + + if (!getName().equals(other.getName())) return false; + if (!getDisplayName().equals(other.getDisplayName())) return false; + if (!getUid().equals(other.getUid())) return false; + if (getReconciling() != other.getReconciling()) return false; + if (!internalGetAnnotations().equals(other.internalGetAnnotations())) return false; + if (!internalGetLabels().equals(other.internalGetLabels())) return false; + if (hasCreateTime() != other.hasCreateTime()) return false; + if (hasCreateTime()) { + if (!getCreateTime().equals(other.getCreateTime())) return false; + } + if (hasUpdateTime() != other.hasUpdateTime()) return false; + if (hasUpdateTime()) { + if (!getUpdateTime().equals(other.getUpdateTime())) return false; } - if (((bitField0_ & 0x00000002) != 0)) { - output.writeMessage(7, getUpdateTime()); + if (hasDeleteTime() != other.hasDeleteTime()) return false; + if (hasDeleteTime()) { + if (!getDeleteTime().equals(other.getDeleteTime())) return false; } - if (((bitField0_ & 0x00000004) != 0)) { - output.writeMessage(8, getDeleteTime()); + if (!getEtag().equals(other.getEtag())) return false; + if (hasIdleTimeout() != other.hasIdleTimeout()) return false; + if (hasIdleTimeout()) { + if (!getIdleTimeout().equals(other.getIdleTimeout())) return false; } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { - com.google.protobuf.GeneratedMessage.writeString(output, 9, etag_); + if (hasRunningTimeout() != other.hasRunningTimeout()) return false; + if (hasRunningTimeout()) { + if (!getRunningTimeout().equals(other.getRunningTimeout())) return false; } - if (((bitField0_ & 0x00000008) != 0)) { - output.writeMessage(10, getIdleTimeout()); + if (getMaxUsableWorkstations() != other.getMaxUsableWorkstations()) return false; + if (hasHost() != other.hasHost()) return false; + if (hasHost()) { + if (!getHost().equals(other.getHost())) return false; } - if (((bitField0_ & 0x00000010) != 0)) { - output.writeMessage(11, getRunningTimeout()); + if (!getPersistentDirectoriesList().equals(other.getPersistentDirectoriesList())) return false; + if (!getEphemeralDirectoriesList().equals(other.getEphemeralDirectoriesList())) return false; + if (hasContainer() != other.hasContainer()) return false; + if (hasContainer()) { + if (!getContainer().equals(other.getContainer())) return false; } - if (((bitField0_ & 0x00000020) != 0)) { - output.writeMessage(12, getHost()); + if (hasEncryptionKey() != other.hasEncryptionKey()) return false; + if (hasEncryptionKey()) { + if (!getEncryptionKey().equals(other.getEncryptionKey())) return false; } - for (int i = 0; i < persistentDirectories_.size(); i++) { - output.writeMessage(13, persistentDirectories_.get(i)); + if (!getReadinessChecksList().equals(other.getReadinessChecksList())) return false; + if (!getReplicaZonesList().equals(other.getReplicaZonesList())) return false; + if (getDegraded() != other.getDegraded()) return false; + if (!getConditionsList().equals(other.getConditionsList())) return false; + if (getEnableAuditAgent() != other.getEnableAuditAgent()) return false; + if (hasHttpOptions() != other.hasHttpOptions()) return false; + if (hasHttpOptions()) { + if (!getHttpOptions().equals(other.getHttpOptions())) return false; + } + if (getDisableTcpConnections() != other.getDisableTcpConnections()) return false; + if (!getAllowedPortsList().equals(other.getAllowedPortsList())) return false; + if (getSatisfiesPzs() != other.getSatisfiesPzs()) return false; + if (getSatisfiesPzi() != other.getSatisfiesPzi()) return false; + if (getGrantWorkstationAdminRoleOnCreate() != other.getGrantWorkstationAdminRoleOnCreate()) + return false; + if (getEnablePushingCredentials() != other.getEnablePushingCredentials()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; } - if (((bitField0_ & 0x00000040) != 0)) { - output.writeMessage(14, getContainer()); + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + hash = (37 * hash) + DISPLAY_NAME_FIELD_NUMBER; + hash = (53 * hash) + getDisplayName().hashCode(); + hash = (37 * hash) + UID_FIELD_NUMBER; + hash = (53 * hash) + getUid().hashCode(); + hash = (37 * hash) + RECONCILING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReconciling()); + if (!internalGetAnnotations().getMap().isEmpty()) { + hash = (37 * hash) + ANNOTATIONS_FIELD_NUMBER; + hash = (53 * hash) + internalGetAnnotations().hashCode(); } - if (degraded_ != false) { - output.writeBool(15, degraded_); + if (!internalGetLabels().getMap().isEmpty()) { + hash = (37 * hash) + LABELS_FIELD_NUMBER; + hash = (53 * hash) + internalGetLabels().hashCode(); } - for (int i = 0; i < conditions_.size(); i++) { - output.writeMessage(16, conditions_.get(i)); + if (hasCreateTime()) { + hash = (37 * hash) + CREATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getCreateTime().hashCode(); } - if (((bitField0_ & 0x00000080) != 0)) { - output.writeMessage(17, getEncryptionKey()); + if (hasUpdateTime()) { + hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getUpdateTime().hashCode(); } - com.google.protobuf.GeneratedMessage.serializeStringMapTo( - output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 18); - for (int i = 0; i < readinessChecks_.size(); i++) { - output.writeMessage(19, readinessChecks_.get(i)); + if (hasDeleteTime()) { + hash = (37 * hash) + DELETE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getDeleteTime().hashCode(); } - if (enableAuditAgent_ != false) { - output.writeBool(20, enableAuditAgent_); + hash = (37 * hash) + ETAG_FIELD_NUMBER; + hash = (53 * hash) + getEtag().hashCode(); + if (hasIdleTimeout()) { + hash = (37 * hash) + IDLE_TIMEOUT_FIELD_NUMBER; + hash = (53 * hash) + getIdleTimeout().hashCode(); } - for (int i = 0; i < ephemeralDirectories_.size(); i++) { - output.writeMessage(22, ephemeralDirectories_.get(i)); + if (hasRunningTimeout()) { + hash = (37 * hash) + RUNNING_TIMEOUT_FIELD_NUMBER; + hash = (53 * hash) + getRunningTimeout().hashCode(); } - for (int i = 0; i < replicaZones_.size(); i++) { - com.google.protobuf.GeneratedMessage.writeString(output, 23, replicaZones_.getRaw(i)); + hash = (37 * hash) + MAX_USABLE_WORKSTATIONS_FIELD_NUMBER; + hash = (53 * hash) + getMaxUsableWorkstations(); + if (hasHost()) { + hash = (37 * hash) + HOST_FIELD_NUMBER; + hash = (53 * hash) + getHost().hashCode(); + } + if (getPersistentDirectoriesCount() > 0) { + hash = (37 * hash) + PERSISTENT_DIRECTORIES_FIELD_NUMBER; + hash = (53 * hash) + getPersistentDirectoriesList().hashCode(); + } + if (getEphemeralDirectoriesCount() > 0) { + hash = (37 * hash) + EPHEMERAL_DIRECTORIES_FIELD_NUMBER; + hash = (53 * hash) + getEphemeralDirectoriesList().hashCode(); + } + if (hasContainer()) { + hash = (37 * hash) + CONTAINER_FIELD_NUMBER; + hash = (53 * hash) + getContainer().hashCode(); + } + if (hasEncryptionKey()) { + hash = (37 * hash) + ENCRYPTION_KEY_FIELD_NUMBER; + hash = (53 * hash) + getEncryptionKey().hashCode(); + } + if (getReadinessChecksCount() > 0) { + hash = (37 * hash) + READINESS_CHECKS_FIELD_NUMBER; + hash = (53 * hash) + getReadinessChecksList().hashCode(); + } + if (getReplicaZonesCount() > 0) { + hash = (37 * hash) + REPLICA_ZONES_FIELD_NUMBER; + hash = (53 * hash) + getReplicaZonesList().hashCode(); + } + hash = (37 * hash) + DEGRADED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDegraded()); + if (getConditionsCount() > 0) { + hash = (37 * hash) + CONDITIONS_FIELD_NUMBER; + hash = (53 * hash) + getConditionsList().hashCode(); + } + hash = (37 * hash) + ENABLE_AUDIT_AGENT_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getEnableAuditAgent()); + if (hasHttpOptions()) { + hash = (37 * hash) + HTTP_OPTIONS_FIELD_NUMBER; + hash = (53 * hash) + getHttpOptions().hashCode(); + } + hash = (37 * hash) + DISABLE_TCP_CONNECTIONS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDisableTcpConnections()); + if (getAllowedPortsCount() > 0) { + hash = (37 * hash) + ALLOWED_PORTS_FIELD_NUMBER; + hash = (53 * hash) + getAllowedPortsList().hashCode(); + } + hash = (37 * hash) + SATISFIES_PZS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getSatisfiesPzs()); + hash = (37 * hash) + SATISFIES_PZI_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getSatisfiesPzi()); + hash = (37 * hash) + GRANT_WORKSTATION_ADMIN_ROLE_ON_CREATE_FIELD_NUMBER; + hash = + (53 * hash) + + com.google.protobuf.Internal.hashBoolean(getGrantWorkstationAdminRoleOnCreate()); + hash = (37 * hash) + ENABLE_PUSHING_CREDENTIALS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getEnablePushingCredentials()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig 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.cloud.workstations.v1beta.WorkstationConfig parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig 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.cloud.workstations.v1beta.WorkstationConfig parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig 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.cloud.workstations.v1beta.WorkstationConfig parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.workstations.v1beta.WorkstationConfig 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.cloud.workstations.v1beta.WorkstationConfig 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 workstation configuration resource in the Cloud Workstations API.
            +   *
            +   * Workstation configurations act as templates for workstations. The workstation
            +   * configuration defines details such as the workstation virtual machine (VM)
            +   * instance type, persistent storage, container image defining environment,
            +   * which IDE or Code Editor to use, and more. Administrators and platform teams
            +   * can also use [Identity and Access Management
            +   * (IAM)](https://cloud.google.com/iam/docs/overview) rules to grant access to
            +   * teams or to individual developers.
            +   * 
            + * + * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig) + com.google.cloud.workstations.v1beta.WorkstationConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_descriptor; } - 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(displayName_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(2, displayName_); - } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uid_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(3, uid_); - } - if (reconciling_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, reconciling_); - } - for (java.util.Map.Entry entry : - internalGetAnnotations().getMap().entrySet()) { - com.google.protobuf.MapEntry annotations__ = - AnnotationsDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, annotations__); - } - if (((bitField0_ & 0x00000001) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getCreateTime()); + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 5: + return internalGetAnnotations(); + case 18: + return internalGetLabels(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } } - if (((bitField0_ & 0x00000002) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getUpdateTime()); + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( + int number) { + switch (number) { + case 5: + return internalGetMutableAnnotations(); + case 18: + return internalGetMutableLabels(); + default: + throw new RuntimeException("Invalid map field number: " + number); + } } - if (((bitField0_ & 0x00000004) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getDeleteTime()); + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.workstations.v1beta.WorkstationConfig.class, + com.google.cloud.workstations.v1beta.WorkstationConfig.Builder.class); } - if (!com.google.protobuf.GeneratedMessage.isStringEmpty(etag_)) { - size += com.google.protobuf.GeneratedMessage.computeStringSize(9, etag_); + + // Construct using com.google.cloud.workstations.v1beta.WorkstationConfig.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); } - if (((bitField0_ & 0x00000008) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(10, getIdleTimeout()); + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); } - if (((bitField0_ & 0x00000010) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(11, getRunningTimeout()); + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetCreateTimeFieldBuilder(); + internalGetUpdateTimeFieldBuilder(); + internalGetDeleteTimeFieldBuilder(); + internalGetIdleTimeoutFieldBuilder(); + internalGetRunningTimeoutFieldBuilder(); + internalGetHostFieldBuilder(); + internalGetPersistentDirectoriesFieldBuilder(); + internalGetEphemeralDirectoriesFieldBuilder(); + internalGetContainerFieldBuilder(); + internalGetEncryptionKeyFieldBuilder(); + internalGetReadinessChecksFieldBuilder(); + internalGetConditionsFieldBuilder(); + internalGetHttpOptionsFieldBuilder(); + internalGetAllowedPortsFieldBuilder(); + } } - if (((bitField0_ & 0x00000020) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, getHost()); + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + displayName_ = ""; + uid_ = ""; + reconciling_ = false; + internalGetMutableAnnotations().clear(); + internalGetMutableLabels().clear(); + createTime_ = null; + if (createTimeBuilder_ != null) { + createTimeBuilder_.dispose(); + createTimeBuilder_ = null; + } + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; + } + deleteTime_ = null; + if (deleteTimeBuilder_ != null) { + deleteTimeBuilder_.dispose(); + deleteTimeBuilder_ = null; + } + etag_ = ""; + idleTimeout_ = null; + if (idleTimeoutBuilder_ != null) { + idleTimeoutBuilder_.dispose(); + idleTimeoutBuilder_ = null; + } + runningTimeout_ = null; + if (runningTimeoutBuilder_ != null) { + runningTimeoutBuilder_.dispose(); + runningTimeoutBuilder_ = null; + } + maxUsableWorkstations_ = 0; + host_ = null; + if (hostBuilder_ != null) { + hostBuilder_.dispose(); + hostBuilder_ = null; + } + if (persistentDirectoriesBuilder_ == null) { + persistentDirectories_ = java.util.Collections.emptyList(); + } else { + persistentDirectories_ = null; + persistentDirectoriesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00004000); + if (ephemeralDirectoriesBuilder_ == null) { + ephemeralDirectories_ = java.util.Collections.emptyList(); + } else { + ephemeralDirectories_ = null; + ephemeralDirectoriesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00008000); + container_ = null; + if (containerBuilder_ != null) { + containerBuilder_.dispose(); + containerBuilder_ = null; + } + encryptionKey_ = null; + if (encryptionKeyBuilder_ != null) { + encryptionKeyBuilder_.dispose(); + encryptionKeyBuilder_ = null; + } + if (readinessChecksBuilder_ == null) { + readinessChecks_ = java.util.Collections.emptyList(); + } else { + readinessChecks_ = null; + readinessChecksBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00040000); + replicaZones_ = com.google.protobuf.LazyStringArrayList.emptyList(); + degraded_ = false; + if (conditionsBuilder_ == null) { + conditions_ = java.util.Collections.emptyList(); + } else { + conditions_ = null; + conditionsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00200000); + enableAuditAgent_ = false; + httpOptions_ = null; + if (httpOptionsBuilder_ != null) { + httpOptionsBuilder_.dispose(); + httpOptionsBuilder_ = null; + } + disableTcpConnections_ = false; + if (allowedPortsBuilder_ == null) { + allowedPorts_ = java.util.Collections.emptyList(); + } else { + allowedPorts_ = null; + allowedPortsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x02000000); + satisfiesPzs_ = false; + satisfiesPzi_ = false; + grantWorkstationAdminRoleOnCreate_ = false; + enablePushingCredentials_ = false; + return this; } - for (int i = 0; i < persistentDirectories_.size(); i++) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 13, persistentDirectories_.get(i)); + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.workstations.v1beta.WorkstationsProto + .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_descriptor; } - if (((bitField0_ & 0x00000040) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, getContainer()); + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig getDefaultInstanceForType() { + return com.google.cloud.workstations.v1beta.WorkstationConfig.getDefaultInstance(); } - if (degraded_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(15, degraded_); + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig build() { + com.google.cloud.workstations.v1beta.WorkstationConfig result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; } - for (int i = 0; i < conditions_.size(); i++) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(16, conditions_.get(i)); + + @java.lang.Override + public com.google.cloud.workstations.v1beta.WorkstationConfig buildPartial() { + com.google.cloud.workstations.v1beta.WorkstationConfig result = + new com.google.cloud.workstations.v1beta.WorkstationConfig(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; } - if (((bitField0_ & 0x00000080) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(17, getEncryptionKey()); + + private void buildPartialRepeatedFields( + com.google.cloud.workstations.v1beta.WorkstationConfig result) { + if (persistentDirectoriesBuilder_ == null) { + if (((bitField0_ & 0x00004000) != 0)) { + persistentDirectories_ = java.util.Collections.unmodifiableList(persistentDirectories_); + bitField0_ = (bitField0_ & ~0x00004000); + } + result.persistentDirectories_ = persistentDirectories_; + } else { + result.persistentDirectories_ = persistentDirectoriesBuilder_.build(); + } + if (ephemeralDirectoriesBuilder_ == null) { + if (((bitField0_ & 0x00008000) != 0)) { + ephemeralDirectories_ = java.util.Collections.unmodifiableList(ephemeralDirectories_); + bitField0_ = (bitField0_ & ~0x00008000); + } + result.ephemeralDirectories_ = ephemeralDirectories_; + } else { + result.ephemeralDirectories_ = ephemeralDirectoriesBuilder_.build(); + } + if (readinessChecksBuilder_ == null) { + if (((bitField0_ & 0x00040000) != 0)) { + readinessChecks_ = java.util.Collections.unmodifiableList(readinessChecks_); + bitField0_ = (bitField0_ & ~0x00040000); + } + result.readinessChecks_ = readinessChecks_; + } else { + result.readinessChecks_ = readinessChecksBuilder_.build(); + } + if (conditionsBuilder_ == null) { + if (((bitField0_ & 0x00200000) != 0)) { + conditions_ = java.util.Collections.unmodifiableList(conditions_); + bitField0_ = (bitField0_ & ~0x00200000); + } + result.conditions_ = conditions_; + } else { + result.conditions_ = conditionsBuilder_.build(); + } + if (allowedPortsBuilder_ == null) { + if (((bitField0_ & 0x02000000) != 0)) { + allowedPorts_ = java.util.Collections.unmodifiableList(allowedPorts_); + bitField0_ = (bitField0_ & ~0x02000000); + } + result.allowedPorts_ = allowedPorts_; + } else { + result.allowedPorts_ = allowedPortsBuilder_.build(); + } } - for (java.util.Map.Entry entry : - internalGetLabels().getMap().entrySet()) { - com.google.protobuf.MapEntry labels__ = - LabelsDefaultEntryHolder.defaultEntry - .newBuilderForType() - .setKey(entry.getKey()) - .setValue(entry.getValue()) - .build(); - size += com.google.protobuf.CodedOutputStream.computeMessageSize(18, labels__); + + private void buildPartial0(com.google.cloud.workstations.v1beta.WorkstationConfig result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.displayName_ = displayName_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.uid_ = uid_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.reconciling_ = reconciling_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.annotations_ = internalGetAnnotations(); + result.annotations_.makeImmutable(); + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.labels_ = internalGetLabels(); + result.labels_.makeImmutable(); + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000040) != 0)) { + result.createTime_ = createTimeBuilder_ == null ? createTime_ : createTimeBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.updateTime_ = updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.deleteTime_ = deleteTimeBuilder_ == null ? deleteTime_ : deleteTimeBuilder_.build(); + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.etag_ = etag_; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.idleTimeout_ = + idleTimeoutBuilder_ == null ? idleTimeout_ : idleTimeoutBuilder_.build(); + to_bitField0_ |= 0x00000008; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.runningTimeout_ = + runningTimeoutBuilder_ == null ? runningTimeout_ : runningTimeoutBuilder_.build(); + to_bitField0_ |= 0x00000010; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.maxUsableWorkstations_ = maxUsableWorkstations_; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.host_ = hostBuilder_ == null ? host_ : hostBuilder_.build(); + to_bitField0_ |= 0x00000020; + } + if (((from_bitField0_ & 0x00010000) != 0)) { + result.container_ = containerBuilder_ == null ? container_ : containerBuilder_.build(); + to_bitField0_ |= 0x00000040; + } + if (((from_bitField0_ & 0x00020000) != 0)) { + result.encryptionKey_ = + encryptionKeyBuilder_ == null ? encryptionKey_ : encryptionKeyBuilder_.build(); + to_bitField0_ |= 0x00000080; + } + if (((from_bitField0_ & 0x00080000) != 0)) { + replicaZones_.makeImmutable(); + result.replicaZones_ = replicaZones_; + } + if (((from_bitField0_ & 0x00100000) != 0)) { + result.degraded_ = degraded_; + } + if (((from_bitField0_ & 0x00400000) != 0)) { + result.enableAuditAgent_ = enableAuditAgent_; + } + if (((from_bitField0_ & 0x00800000) != 0)) { + result.httpOptions_ = + httpOptionsBuilder_ == null ? httpOptions_ : httpOptionsBuilder_.build(); + to_bitField0_ |= 0x00000100; + } + if (((from_bitField0_ & 0x01000000) != 0)) { + result.disableTcpConnections_ = disableTcpConnections_; + } + if (((from_bitField0_ & 0x04000000) != 0)) { + result.satisfiesPzs_ = satisfiesPzs_; + } + if (((from_bitField0_ & 0x08000000) != 0)) { + result.satisfiesPzi_ = satisfiesPzi_; + } + if (((from_bitField0_ & 0x10000000) != 0)) { + result.grantWorkstationAdminRoleOnCreate_ = grantWorkstationAdminRoleOnCreate_; + } + if (((from_bitField0_ & 0x20000000) != 0)) { + result.enablePushingCredentials_ = enablePushingCredentials_; + } + result.bitField0_ |= to_bitField0_; } - for (int i = 0; i < readinessChecks_.size(); i++) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(19, readinessChecks_.get(i)); + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.workstations.v1beta.WorkstationConfig) { + return mergeFrom((com.google.cloud.workstations.v1beta.WorkstationConfig) other); + } else { + super.mergeFrom(other); + return this; + } } - if (enableAuditAgent_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(20, enableAuditAgent_); + + public Builder mergeFrom(com.google.cloud.workstations.v1beta.WorkstationConfig other) { + if (other == com.google.cloud.workstations.v1beta.WorkstationConfig.getDefaultInstance()) + return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getDisplayName().isEmpty()) { + displayName_ = other.displayName_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getUid().isEmpty()) { + uid_ = other.uid_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getReconciling() != false) { + setReconciling(other.getReconciling()); + } + internalGetMutableAnnotations().mergeFrom(other.internalGetAnnotations()); + bitField0_ |= 0x00000010; + internalGetMutableLabels().mergeFrom(other.internalGetLabels()); + bitField0_ |= 0x00000020; + if (other.hasCreateTime()) { + mergeCreateTime(other.getCreateTime()); + } + if (other.hasUpdateTime()) { + mergeUpdateTime(other.getUpdateTime()); + } + if (other.hasDeleteTime()) { + mergeDeleteTime(other.getDeleteTime()); + } + if (!other.getEtag().isEmpty()) { + etag_ = other.etag_; + bitField0_ |= 0x00000200; + onChanged(); + } + if (other.hasIdleTimeout()) { + mergeIdleTimeout(other.getIdleTimeout()); + } + if (other.hasRunningTimeout()) { + mergeRunningTimeout(other.getRunningTimeout()); + } + if (other.getMaxUsableWorkstations() != 0) { + setMaxUsableWorkstations(other.getMaxUsableWorkstations()); + } + if (other.hasHost()) { + mergeHost(other.getHost()); + } + if (persistentDirectoriesBuilder_ == null) { + if (!other.persistentDirectories_.isEmpty()) { + if (persistentDirectories_.isEmpty()) { + persistentDirectories_ = other.persistentDirectories_; + bitField0_ = (bitField0_ & ~0x00004000); + } else { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.addAll(other.persistentDirectories_); + } + onChanged(); + } + } else { + if (!other.persistentDirectories_.isEmpty()) { + if (persistentDirectoriesBuilder_.isEmpty()) { + persistentDirectoriesBuilder_.dispose(); + persistentDirectoriesBuilder_ = null; + persistentDirectories_ = other.persistentDirectories_; + bitField0_ = (bitField0_ & ~0x00004000); + persistentDirectoriesBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetPersistentDirectoriesFieldBuilder() + : null; + } else { + persistentDirectoriesBuilder_.addAllMessages(other.persistentDirectories_); + } + } + } + if (ephemeralDirectoriesBuilder_ == null) { + if (!other.ephemeralDirectories_.isEmpty()) { + if (ephemeralDirectories_.isEmpty()) { + ephemeralDirectories_ = other.ephemeralDirectories_; + bitField0_ = (bitField0_ & ~0x00008000); + } else { + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.addAll(other.ephemeralDirectories_); + } + onChanged(); + } + } else { + if (!other.ephemeralDirectories_.isEmpty()) { + if (ephemeralDirectoriesBuilder_.isEmpty()) { + ephemeralDirectoriesBuilder_.dispose(); + ephemeralDirectoriesBuilder_ = null; + ephemeralDirectories_ = other.ephemeralDirectories_; + bitField0_ = (bitField0_ & ~0x00008000); + ephemeralDirectoriesBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetEphemeralDirectoriesFieldBuilder() + : null; + } else { + ephemeralDirectoriesBuilder_.addAllMessages(other.ephemeralDirectories_); + } + } + } + if (other.hasContainer()) { + mergeContainer(other.getContainer()); + } + if (other.hasEncryptionKey()) { + mergeEncryptionKey(other.getEncryptionKey()); + } + if (readinessChecksBuilder_ == null) { + if (!other.readinessChecks_.isEmpty()) { + if (readinessChecks_.isEmpty()) { + readinessChecks_ = other.readinessChecks_; + bitField0_ = (bitField0_ & ~0x00040000); + } else { + ensureReadinessChecksIsMutable(); + readinessChecks_.addAll(other.readinessChecks_); + } + onChanged(); + } + } else { + if (!other.readinessChecks_.isEmpty()) { + if (readinessChecksBuilder_.isEmpty()) { + readinessChecksBuilder_.dispose(); + readinessChecksBuilder_ = null; + readinessChecks_ = other.readinessChecks_; + bitField0_ = (bitField0_ & ~0x00040000); + readinessChecksBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetReadinessChecksFieldBuilder() + : null; + } else { + readinessChecksBuilder_.addAllMessages(other.readinessChecks_); + } + } + } + if (!other.replicaZones_.isEmpty()) { + if (replicaZones_.isEmpty()) { + replicaZones_ = other.replicaZones_; + bitField0_ |= 0x00080000; + } else { + ensureReplicaZonesIsMutable(); + replicaZones_.addAll(other.replicaZones_); + } + onChanged(); + } + if (other.getDegraded() != false) { + setDegraded(other.getDegraded()); + } + if (conditionsBuilder_ == null) { + if (!other.conditions_.isEmpty()) { + if (conditions_.isEmpty()) { + conditions_ = other.conditions_; + bitField0_ = (bitField0_ & ~0x00200000); + } else { + ensureConditionsIsMutable(); + conditions_.addAll(other.conditions_); + } + onChanged(); + } + } else { + if (!other.conditions_.isEmpty()) { + if (conditionsBuilder_.isEmpty()) { + conditionsBuilder_.dispose(); + conditionsBuilder_ = null; + conditions_ = other.conditions_; + bitField0_ = (bitField0_ & ~0x00200000); + conditionsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetConditionsFieldBuilder() + : null; + } else { + conditionsBuilder_.addAllMessages(other.conditions_); + } + } + } + if (other.getEnableAuditAgent() != false) { + setEnableAuditAgent(other.getEnableAuditAgent()); + } + if (other.hasHttpOptions()) { + mergeHttpOptions(other.getHttpOptions()); + } + if (other.getDisableTcpConnections() != false) { + setDisableTcpConnections(other.getDisableTcpConnections()); + } + if (allowedPortsBuilder_ == null) { + if (!other.allowedPorts_.isEmpty()) { + if (allowedPorts_.isEmpty()) { + allowedPorts_ = other.allowedPorts_; + bitField0_ = (bitField0_ & ~0x02000000); + } else { + ensureAllowedPortsIsMutable(); + allowedPorts_.addAll(other.allowedPorts_); + } + onChanged(); + } + } else { + if (!other.allowedPorts_.isEmpty()) { + if (allowedPortsBuilder_.isEmpty()) { + allowedPortsBuilder_.dispose(); + allowedPortsBuilder_ = null; + allowedPorts_ = other.allowedPorts_; + bitField0_ = (bitField0_ & ~0x02000000); + allowedPortsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetAllowedPortsFieldBuilder() + : null; + } else { + allowedPortsBuilder_.addAllMessages(other.allowedPorts_); + } + } + } + if (other.getSatisfiesPzs() != false) { + setSatisfiesPzs(other.getSatisfiesPzs()); + } + if (other.getSatisfiesPzi() != false) { + setSatisfiesPzi(other.getSatisfiesPzi()); + } + if (other.getGrantWorkstationAdminRoleOnCreate() != false) { + setGrantWorkstationAdminRoleOnCreate(other.getGrantWorkstationAdminRoleOnCreate()); + } + if (other.getEnablePushingCredentials() != false) { + setEnablePushingCredentials(other.getEnablePushingCredentials()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; } - for (int i = 0; i < ephemeralDirectories_.size(); i++) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 22, ephemeralDirectories_.get(i)); + + @java.lang.Override + public final boolean isInitialized() { + return true; } - { - int dataSize = 0; - for (int i = 0; i < replicaZones_.size(); i++) { - dataSize += computeStringSizeNoTag(replicaZones_.getRaw(i)); + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); } - size += dataSize; - size += 2 * getReplicaZonesList().size(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + name_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + displayName_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + uid_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: + { + reconciling_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 42: + { + com.google.protobuf.MapEntry annotations__ = + input.readMessage( + AnnotationsDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableAnnotations() + .getMutableMap() + .put(annotations__.getKey(), annotations__.getValue()); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 50: + { + input.readMessage( + internalGetCreateTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000040; + break; + } // case 50 + case 58: + { + input.readMessage( + internalGetUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000080; + break; + } // case 58 + case 66: + { + input.readMessage( + internalGetDeleteTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000100; + break; + } // case 66 + case 74: + { + etag_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000200; + break; + } // case 74 + case 82: + { + input.readMessage( + internalGetIdleTimeoutFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000400; + break; + } // case 82 + case 90: + { + input.readMessage( + internalGetRunningTimeoutFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000800; + break; + } // case 90 + case 98: + { + input.readMessage(internalGetHostFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00002000; + break; + } // case 98 + case 106: + { + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory m = + input.readMessage( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .parser(), + extensionRegistry); + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(m); + } else { + persistentDirectoriesBuilder_.addMessage(m); + } + break; + } // case 106 + case 114: + { + input.readMessage( + internalGetContainerFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00010000; + break; + } // case 114 + case 120: + { + degraded_ = input.readBool(); + bitField0_ |= 0x00100000; + break; + } // case 120 + case 130: + { + com.google.rpc.Status m = + input.readMessage(com.google.rpc.Status.parser(), extensionRegistry); + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(m); + } else { + conditionsBuilder_.addMessage(m); + } + break; + } // case 130 + case 138: + { + input.readMessage( + internalGetEncryptionKeyFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00020000; + break; + } // case 138 + case 146: + { + com.google.protobuf.MapEntry labels__ = + input.readMessage( + LabelsDefaultEntryHolder.defaultEntry.getParserForType(), + extensionRegistry); + internalGetMutableLabels() + .getMutableMap() + .put(labels__.getKey(), labels__.getValue()); + bitField0_ |= 0x00000020; + break; + } // case 146 + case 154: + { + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck m = + input.readMessage( + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + .parser(), + extensionRegistry); + if (readinessChecksBuilder_ == null) { + ensureReadinessChecksIsMutable(); + readinessChecks_.add(m); + } else { + readinessChecksBuilder_.addMessage(m); + } + break; + } // case 154 + case 160: + { + enableAuditAgent_ = input.readBool(); + bitField0_ |= 0x00400000; + break; + } // case 160 + case 170: + { + input.readMessage( + internalGetHttpOptionsFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00800000; + break; + } // case 170 + case 178: + { + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory m = + input.readMessage( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .parser(), + extensionRegistry); + if (ephemeralDirectoriesBuilder_ == null) { + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.add(m); + } else { + ephemeralDirectoriesBuilder_.addMessage(m); + } + break; + } // case 178 + case 186: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureReplicaZonesIsMutable(); + replicaZones_.add(s); + break; + } // case 186 + case 192: + { + disableTcpConnections_ = input.readBool(); + bitField0_ |= 0x01000000; + break; + } // case 192 + case 202: + { + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange m = + input.readMessage( + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.parser(), + extensionRegistry); + if (allowedPortsBuilder_ == null) { + ensureAllowedPortsIsMutable(); + allowedPorts_.add(m); + } else { + allowedPortsBuilder_.addMessage(m); + } + break; + } // case 202 + case 208: + { + satisfiesPzs_ = input.readBool(); + bitField0_ |= 0x04000000; + break; + } // case 208 + case 216: + { + satisfiesPzi_ = input.readBool(); + bitField0_ |= 0x08000000; + break; + } // case 216 + case 224: + { + maxUsableWorkstations_ = input.readInt32(); + bitField0_ |= 0x00001000; + break; + } // case 224 + case 232: + { + grantWorkstationAdminRoleOnCreate_ = input.readBool(); + bitField0_ |= 0x10000000; + break; + } // case 232 + case 240: + { + enablePushingCredentials_ = input.readBool(); + bitField0_ |= 0x20000000; + break; + } // case 240 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; } - 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.cloud.workstations.v1beta.WorkstationConfig)) { - return super.equals(obj); - } - com.google.cloud.workstations.v1beta.WorkstationConfig other = - (com.google.cloud.workstations.v1beta.WorkstationConfig) obj; + private int bitField0_; - if (!getName().equals(other.getName())) return false; - if (!getDisplayName().equals(other.getDisplayName())) return false; - if (!getUid().equals(other.getUid())) return false; - if (getReconciling() != other.getReconciling()) return false; - if (!internalGetAnnotations().equals(other.internalGetAnnotations())) return false; - if (!internalGetLabels().equals(other.internalGetLabels())) return false; - if (hasCreateTime() != other.hasCreateTime()) return false; - if (hasCreateTime()) { - if (!getCreateTime().equals(other.getCreateTime())) return false; - } - if (hasUpdateTime() != other.hasUpdateTime()) return false; - if (hasUpdateTime()) { - if (!getUpdateTime().equals(other.getUpdateTime())) return false; - } - if (hasDeleteTime() != other.hasDeleteTime()) return false; - if (hasDeleteTime()) { - if (!getDeleteTime().equals(other.getDeleteTime())) return false; - } - if (!getEtag().equals(other.getEtag())) return false; - if (hasIdleTimeout() != other.hasIdleTimeout()) return false; - if (hasIdleTimeout()) { - if (!getIdleTimeout().equals(other.getIdleTimeout())) return false; - } - if (hasRunningTimeout() != other.hasRunningTimeout()) return false; - if (hasRunningTimeout()) { - if (!getRunningTimeout().equals(other.getRunningTimeout())) return false; - } - if (hasHost() != other.hasHost()) return false; - if (hasHost()) { - if (!getHost().equals(other.getHost())) return false; - } - if (!getPersistentDirectoriesList().equals(other.getPersistentDirectoriesList())) return false; - if (!getEphemeralDirectoriesList().equals(other.getEphemeralDirectoriesList())) return false; - if (hasContainer() != other.hasContainer()) return false; - if (hasContainer()) { - if (!getContainer().equals(other.getContainer())) return false; - } - if (hasEncryptionKey() != other.hasEncryptionKey()) return false; - if (hasEncryptionKey()) { - if (!getEncryptionKey().equals(other.getEncryptionKey())) return false; - } - if (!getReadinessChecksList().equals(other.getReadinessChecksList())) return false; - if (!getReplicaZonesList().equals(other.getReplicaZonesList())) return false; - if (getDegraded() != other.getDegraded()) return false; - if (!getConditionsList().equals(other.getConditionsList())) return false; - if (getEnableAuditAgent() != other.getEnableAuditAgent()) return false; - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + private java.lang.Object name_ = ""; - @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) + DISPLAY_NAME_FIELD_NUMBER; - hash = (53 * hash) + getDisplayName().hashCode(); - hash = (37 * hash) + UID_FIELD_NUMBER; - hash = (53 * hash) + getUid().hashCode(); - hash = (37 * hash) + RECONCILING_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReconciling()); - if (!internalGetAnnotations().getMap().isEmpty()) { - hash = (37 * hash) + ANNOTATIONS_FIELD_NUMBER; - hash = (53 * hash) + internalGetAnnotations().hashCode(); - } - if (!internalGetLabels().getMap().isEmpty()) { - hash = (37 * hash) + LABELS_FIELD_NUMBER; - hash = (53 * hash) + internalGetLabels().hashCode(); - } - if (hasCreateTime()) { - hash = (37 * hash) + CREATE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getCreateTime().hashCode(); - } - if (hasUpdateTime()) { - hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getUpdateTime().hashCode(); - } - if (hasDeleteTime()) { - hash = (37 * hash) + DELETE_TIME_FIELD_NUMBER; - hash = (53 * hash) + getDeleteTime().hashCode(); - } - hash = (37 * hash) + ETAG_FIELD_NUMBER; - hash = (53 * hash) + getEtag().hashCode(); - if (hasIdleTimeout()) { - hash = (37 * hash) + IDLE_TIMEOUT_FIELD_NUMBER; - hash = (53 * hash) + getIdleTimeout().hashCode(); - } - if (hasRunningTimeout()) { - hash = (37 * hash) + RUNNING_TIMEOUT_FIELD_NUMBER; - hash = (53 * hash) + getRunningTimeout().hashCode(); - } - if (hasHost()) { - hash = (37 * hash) + HOST_FIELD_NUMBER; - hash = (53 * hash) + getHost().hashCode(); - } - if (getPersistentDirectoriesCount() > 0) { - hash = (37 * hash) + PERSISTENT_DIRECTORIES_FIELD_NUMBER; - hash = (53 * hash) + getPersistentDirectoriesList().hashCode(); - } - if (getEphemeralDirectoriesCount() > 0) { - hash = (37 * hash) + EPHEMERAL_DIRECTORIES_FIELD_NUMBER; - hash = (53 * hash) + getEphemeralDirectoriesList().hashCode(); - } - if (hasContainer()) { - hash = (37 * hash) + CONTAINER_FIELD_NUMBER; - hash = (53 * hash) + getContainer().hashCode(); - } - if (hasEncryptionKey()) { - hash = (37 * hash) + ENCRYPTION_KEY_FIELD_NUMBER; - hash = (53 * hash) + getEncryptionKey().hashCode(); - } - if (getReadinessChecksCount() > 0) { - hash = (37 * hash) + READINESS_CHECKS_FIELD_NUMBER; - hash = (53 * hash) + getReadinessChecksList().hashCode(); - } - if (getReplicaZonesCount() > 0) { - hash = (37 * hash) + REPLICA_ZONES_FIELD_NUMBER; - hash = (53 * hash) + getReplicaZonesList().hashCode(); - } - hash = (37 * hash) + DEGRADED_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDegraded()); - if (getConditionsCount() > 0) { - hash = (37 * hash) + CONDITIONS_FIELD_NUMBER; - hash = (53 * hash) + getConditionsList().hashCode(); + /** + * + * + *
            +     * Identifier. Full name of this workstation configuration.
            +     * 
            + * + * 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; + } } - hash = (37 * hash) + ENABLE_AUDIT_AGENT_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getEnableAuditAgent()); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig 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.cloud.workstations.v1beta.WorkstationConfig parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.cloud.workstations.v1beta.WorkstationConfig parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static com.google.cloud.workstations.v1beta.WorkstationConfig parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + /** + * + * + *
            +     * Identifier. Full name of this workstation configuration.
            +     * 
            + * + * 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; + } + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +     * Identifier. Full name of this workstation configuration.
            +     * 
            + * + * 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; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); - } + /** + * + * + *
            +     * Identifier. Full name of this workstation configuration.
            +     * 
            + * + * 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; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +     * Identifier. Full name of this workstation configuration.
            +     * 
            + * + * 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; + } - public static com.google.cloud.workstations.v1beta.WorkstationConfig parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); - } + private java.lang.Object displayName_ = ""; - public static com.google.cloud.workstations.v1beta.WorkstationConfig parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessage.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
            +     * Optional. Human-readable name for this workstation configuration.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The displayName. + */ + public java.lang.String getDisplayName() { + java.lang.Object ref = displayName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + displayName_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } + /** + * + * + *
            +     * Optional. Human-readable name for this workstation configuration.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for displayName. + */ + public com.google.protobuf.ByteString getDisplayNameBytes() { + java.lang.Object ref = displayName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + displayName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + /** + * + * + *
            +     * Optional. Human-readable name for this workstation configuration.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The displayName to set. + * @return This builder for chaining. + */ + public Builder setDisplayName(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + displayName_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - public static Builder newBuilder( - com.google.cloud.workstations.v1beta.WorkstationConfig prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + /** + * + * + *
            +     * Optional. Human-readable name for this workstation configuration.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearDisplayName() { + displayName_ = getDefaultInstance().getDisplayName(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + /** + * + * + *
            +     * Optional. Human-readable name for this workstation configuration.
            +     * 
            + * + * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for displayName to set. + * @return This builder for chaining. + */ + public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + displayName_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - @java.lang.Override - protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } + private java.lang.Object uid_ = ""; - /** - * - * - *
            -   * A workstation configuration resource in the Cloud Workstations API.
            -   *
            -   * Workstation configurations act as templates for workstations. The workstation
            -   * configuration defines details such as the workstation virtual machine (VM)
            -   * instance type, persistent storage, container image defining environment,
            -   * which IDE or Code Editor to use, and more. Administrators and platform teams
            -   * can also use [Identity and Access Management
            -   * (IAM)](https://cloud.google.com/iam/docs/overview) rules to grant access to
            -   * teams or to individual developers.
            -   * 
            - * - * Protobuf type {@code google.cloud.workstations.v1beta.WorkstationConfig} - */ - public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder - implements - // @@protoc_insertion_point(builder_implements:google.cloud.workstations.v1beta.WorkstationConfig) - com.google.cloud.workstations.v1beta.WorkstationConfigOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_descriptor; + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * configuration.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The uid. + */ + public java.lang.String getUid() { + java.lang.Object ref = uid_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + uid_ = s; + return s; + } else { + return (java.lang.String) ref; + } } - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( - int number) { - switch (number) { - case 5: - return internalGetAnnotations(); - case 18: - return internalGetLabels(); - default: - throw new RuntimeException("Invalid map field number: " + number); + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * configuration.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return The bytes for uid. + */ + public com.google.protobuf.ByteString getUidBytes() { + java.lang.Object ref = uid_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } } - @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( - int number) { - switch (number) { - case 5: - return internalGetMutableAnnotations(); - case 18: - return internalGetMutableLabels(); - default: - throw new RuntimeException("Invalid map field number: " + number); + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * configuration.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @param value The uid to set. + * @return This builder for chaining. + */ + public Builder setUid(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } + uid_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; } - @java.lang.Override - protected com.google.protobuf.GeneratedMessage.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.cloud.workstations.v1beta.WorkstationConfig.class, - com.google.cloud.workstations.v1beta.WorkstationConfig.Builder.class); + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * configuration.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearUid() { + uid_ = getDefaultInstance().getUid(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; } - // Construct using com.google.cloud.workstations.v1beta.WorkstationConfig.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); + /** + * + * + *
            +     * Output only. A system-assigned unique identifier for this workstation
            +     * configuration.
            +     * 
            + * + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * + * + * @param value The bytes for uid to set. + * @return This builder for chaining. + */ + public Builder setUidBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + uid_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; } - private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); + private boolean reconciling_; + + /** + * + * + *
            +     * Output only. Indicates whether this workstation configuration is currently
            +     * being updated to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The reconciling. + */ + @java.lang.Override + public boolean getReconciling() { + return reconciling_; } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { - internalGetCreateTimeFieldBuilder(); - internalGetUpdateTimeFieldBuilder(); - internalGetDeleteTimeFieldBuilder(); - internalGetIdleTimeoutFieldBuilder(); - internalGetRunningTimeoutFieldBuilder(); - internalGetHostFieldBuilder(); - internalGetPersistentDirectoriesFieldBuilder(); - internalGetEphemeralDirectoriesFieldBuilder(); - internalGetContainerFieldBuilder(); - internalGetEncryptionKeyFieldBuilder(); - internalGetReadinessChecksFieldBuilder(); - internalGetConditionsFieldBuilder(); - } + /** + * + * + *
            +     * Output only. Indicates whether this workstation configuration is currently
            +     * being updated to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The reconciling to set. + * @return This builder for chaining. + */ + public Builder setReconciling(boolean value) { + + reconciling_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; } - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - name_ = ""; - displayName_ = ""; - uid_ = ""; - reconciling_ = false; - internalGetMutableAnnotations().clear(); - internalGetMutableLabels().clear(); - createTime_ = null; - if (createTimeBuilder_ != null) { - createTimeBuilder_.dispose(); - createTimeBuilder_ = null; - } - updateTime_ = null; - if (updateTimeBuilder_ != null) { - updateTimeBuilder_.dispose(); - updateTimeBuilder_ = null; - } - deleteTime_ = null; - if (deleteTimeBuilder_ != null) { - deleteTimeBuilder_.dispose(); - deleteTimeBuilder_ = null; - } - etag_ = ""; - idleTimeout_ = null; - if (idleTimeoutBuilder_ != null) { - idleTimeoutBuilder_.dispose(); - idleTimeoutBuilder_ = null; - } - runningTimeout_ = null; - if (runningTimeoutBuilder_ != null) { - runningTimeoutBuilder_.dispose(); - runningTimeoutBuilder_ = null; - } - host_ = null; - if (hostBuilder_ != null) { - hostBuilder_.dispose(); - hostBuilder_ = null; - } - if (persistentDirectoriesBuilder_ == null) { - persistentDirectories_ = java.util.Collections.emptyList(); - } else { - persistentDirectories_ = null; - persistentDirectoriesBuilder_.clear(); - } - bitField0_ = (bitField0_ & ~0x00002000); - if (ephemeralDirectoriesBuilder_ == null) { - ephemeralDirectories_ = java.util.Collections.emptyList(); - } else { - ephemeralDirectories_ = null; - ephemeralDirectoriesBuilder_.clear(); - } - bitField0_ = (bitField0_ & ~0x00004000); - container_ = null; - if (containerBuilder_ != null) { - containerBuilder_.dispose(); - containerBuilder_ = null; - } - encryptionKey_ = null; - if (encryptionKeyBuilder_ != null) { - encryptionKeyBuilder_.dispose(); - encryptionKeyBuilder_ = null; + /** + * + * + *
            +     * Output only. Indicates whether this workstation configuration is currently
            +     * being updated to match its intended state.
            +     * 
            + * + * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearReconciling() { + bitField0_ = (bitField0_ & ~0x00000008); + reconciling_ = false; + onChanged(); + return this; + } + + private com.google.protobuf.MapField annotations_; + + private com.google.protobuf.MapField + internalGetAnnotations() { + if (annotations_ == null) { + return com.google.protobuf.MapField.emptyMapField( + AnnotationsDefaultEntryHolder.defaultEntry); } - if (readinessChecksBuilder_ == null) { - readinessChecks_ = java.util.Collections.emptyList(); - } else { - readinessChecks_ = null; - readinessChecksBuilder_.clear(); + return annotations_; + } + + private com.google.protobuf.MapField + internalGetMutableAnnotations() { + if (annotations_ == null) { + annotations_ = + com.google.protobuf.MapField.newMapField(AnnotationsDefaultEntryHolder.defaultEntry); } - bitField0_ = (bitField0_ & ~0x00020000); - replicaZones_ = com.google.protobuf.LazyStringArrayList.emptyList(); - degraded_ = false; - if (conditionsBuilder_ == null) { - conditions_ = java.util.Collections.emptyList(); - } else { - conditions_ = null; - conditionsBuilder_.clear(); + if (!annotations_.isMutable()) { + annotations_ = annotations_.copy(); } - bitField0_ = (bitField0_ & ~0x00100000); - enableAuditAgent_ = false; - return this; + bitField0_ |= 0x00000010; + onChanged(); + return annotations_; + } + + public int getAnnotationsCount() { + return internalGetAnnotations().getMap().size(); } + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.cloud.workstations.v1beta.WorkstationsProto - .internal_static_google_cloud_workstations_v1beta_WorkstationConfig_descriptor; + public boolean containsAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetAnnotations().getMap().containsKey(key); } + /** Use {@link #getAnnotationsMap()} instead. */ @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig getDefaultInstanceForType() { - return com.google.cloud.workstations.v1beta.WorkstationConfig.getDefaultInstance(); + @java.lang.Deprecated + public java.util.Map getAnnotations() { + return getAnnotationsMap(); } + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig build() { - com.google.cloud.workstations.v1beta.WorkstationConfig result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; + public java.util.Map getAnnotationsMap() { + return internalGetAnnotations().getMap(); } + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ @java.lang.Override - public com.google.cloud.workstations.v1beta.WorkstationConfig buildPartial() { - com.google.cloud.workstations.v1beta.WorkstationConfig result = - new com.google.cloud.workstations.v1beta.WorkstationConfig(this); - buildPartialRepeatedFields(result); - if (bitField0_ != 0) { - buildPartial0(result); + public /* nullable */ java.lang.String getAnnotationsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); } - onBuilt(); - return result; + java.util.Map map = internalGetAnnotations().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; } - private void buildPartialRepeatedFields( - com.google.cloud.workstations.v1beta.WorkstationConfig result) { - if (persistentDirectoriesBuilder_ == null) { - if (((bitField0_ & 0x00002000) != 0)) { - persistentDirectories_ = java.util.Collections.unmodifiableList(persistentDirectories_); - bitField0_ = (bitField0_ & ~0x00002000); - } - result.persistentDirectories_ = persistentDirectories_; - } else { - result.persistentDirectories_ = persistentDirectoriesBuilder_.build(); - } - if (ephemeralDirectoriesBuilder_ == null) { - if (((bitField0_ & 0x00004000) != 0)) { - ephemeralDirectories_ = java.util.Collections.unmodifiableList(ephemeralDirectories_); - bitField0_ = (bitField0_ & ~0x00004000); - } - result.ephemeralDirectories_ = ephemeralDirectories_; - } else { - result.ephemeralDirectories_ = ephemeralDirectoriesBuilder_.build(); - } - if (readinessChecksBuilder_ == null) { - if (((bitField0_ & 0x00020000) != 0)) { - readinessChecks_ = java.util.Collections.unmodifiableList(readinessChecks_); - bitField0_ = (bitField0_ & ~0x00020000); - } - result.readinessChecks_ = readinessChecks_; - } else { - result.readinessChecks_ = readinessChecksBuilder_.build(); + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.lang.String getAnnotationsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - if (conditionsBuilder_ == null) { - if (((bitField0_ & 0x00100000) != 0)) { - conditions_ = java.util.Collections.unmodifiableList(conditions_); - bitField0_ = (bitField0_ & ~0x00100000); - } - result.conditions_ = conditions_; - } else { - result.conditions_ = conditionsBuilder_.build(); + java.util.Map map = internalGetAnnotations().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); } + return map.get(key); } - private void buildPartial0(com.google.cloud.workstations.v1beta.WorkstationConfig result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.name_ = name_; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.displayName_ = displayName_; - } - if (((from_bitField0_ & 0x00000004) != 0)) { - result.uid_ = uid_; - } - if (((from_bitField0_ & 0x00000008) != 0)) { - result.reconciling_ = reconciling_; - } - if (((from_bitField0_ & 0x00000010) != 0)) { - result.annotations_ = internalGetAnnotations(); - result.annotations_.makeImmutable(); - } - if (((from_bitField0_ & 0x00000020) != 0)) { - result.labels_ = internalGetLabels(); - result.labels_.makeImmutable(); - } - int to_bitField0_ = 0; - if (((from_bitField0_ & 0x00000040) != 0)) { - result.createTime_ = createTimeBuilder_ == null ? createTime_ : createTimeBuilder_.build(); - to_bitField0_ |= 0x00000001; - } - if (((from_bitField0_ & 0x00000080) != 0)) { - result.updateTime_ = updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build(); - to_bitField0_ |= 0x00000002; - } - if (((from_bitField0_ & 0x00000100) != 0)) { - result.deleteTime_ = deleteTimeBuilder_ == null ? deleteTime_ : deleteTimeBuilder_.build(); - to_bitField0_ |= 0x00000004; - } - if (((from_bitField0_ & 0x00000200) != 0)) { - result.etag_ = etag_; - } - if (((from_bitField0_ & 0x00000400) != 0)) { - result.idleTimeout_ = - idleTimeoutBuilder_ == null ? idleTimeout_ : idleTimeoutBuilder_.build(); - to_bitField0_ |= 0x00000008; - } - if (((from_bitField0_ & 0x00000800) != 0)) { - result.runningTimeout_ = - runningTimeoutBuilder_ == null ? runningTimeout_ : runningTimeoutBuilder_.build(); - to_bitField0_ |= 0x00000010; - } - if (((from_bitField0_ & 0x00001000) != 0)) { - result.host_ = hostBuilder_ == null ? host_ : hostBuilder_.build(); - to_bitField0_ |= 0x00000020; - } - if (((from_bitField0_ & 0x00008000) != 0)) { - result.container_ = containerBuilder_ == null ? container_ : containerBuilder_.build(); - to_bitField0_ |= 0x00000040; - } - if (((from_bitField0_ & 0x00010000) != 0)) { - result.encryptionKey_ = - encryptionKeyBuilder_ == null ? encryptionKey_ : encryptionKeyBuilder_.build(); - to_bitField0_ |= 0x00000080; - } - if (((from_bitField0_ & 0x00040000) != 0)) { - replicaZones_.makeImmutable(); - result.replicaZones_ = replicaZones_; + public Builder clearAnnotations() { + bitField0_ = (bitField0_ & ~0x00000010); + internalGetMutableAnnotations().getMutableMap().clear(); + return this; + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeAnnotations(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); } - if (((from_bitField0_ & 0x00080000) != 0)) { - result.degraded_ = degraded_; + internalGetMutableAnnotations().getMutableMap().remove(key); + return this; + } + + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableAnnotations() { + bitField0_ |= 0x00000010; + return internalGetMutableAnnotations().getMutableMap(); + } + + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAnnotations(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); } - if (((from_bitField0_ & 0x00200000) != 0)) { - result.enableAuditAgent_ = enableAuditAgent_; + if (value == null) { + throw new NullPointerException("map value"); } - result.bitField0_ |= to_bitField0_; + internalGetMutableAnnotations().getMutableMap().put(key, value); + bitField0_ |= 0x00000010; + return this; } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.cloud.workstations.v1beta.WorkstationConfig) { - return mergeFrom((com.google.cloud.workstations.v1beta.WorkstationConfig) other); - } else { - super.mergeFrom(other); - return this; - } + /** + * + * + *
            +     * Optional. Client-specified annotations.
            +     * 
            + * + * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder putAllAnnotations(java.util.Map values) { + internalGetMutableAnnotations().getMutableMap().putAll(values); + bitField0_ |= 0x00000010; + return this; } - public Builder mergeFrom(com.google.cloud.workstations.v1beta.WorkstationConfig other) { - if (other == com.google.cloud.workstations.v1beta.WorkstationConfig.getDefaultInstance()) - return this; - if (!other.getName().isEmpty()) { - name_ = other.name_; - bitField0_ |= 0x00000001; - onChanged(); - } - if (!other.getDisplayName().isEmpty()) { - displayName_ = other.displayName_; - bitField0_ |= 0x00000002; - onChanged(); + private com.google.protobuf.MapField labels_; + + private com.google.protobuf.MapField internalGetLabels() { + if (labels_ == null) { + return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); } - if (!other.getUid().isEmpty()) { - uid_ = other.uid_; - bitField0_ |= 0x00000004; - onChanged(); + return labels_; + } + + private com.google.protobuf.MapField + internalGetMutableLabels() { + if (labels_ == null) { + labels_ = com.google.protobuf.MapField.newMapField(LabelsDefaultEntryHolder.defaultEntry); } - if (other.getReconciling() != false) { - setReconciling(other.getReconciling()); + if (!labels_.isMutable()) { + labels_ = labels_.copy(); } - internalGetMutableAnnotations().mergeFrom(other.internalGetAnnotations()); - bitField0_ |= 0x00000010; - internalGetMutableLabels().mergeFrom(other.internalGetLabels()); bitField0_ |= 0x00000020; - if (other.hasCreateTime()) { - mergeCreateTime(other.getCreateTime()); - } - if (other.hasUpdateTime()) { - mergeUpdateTime(other.getUpdateTime()); - } - if (other.hasDeleteTime()) { - mergeDeleteTime(other.getDeleteTime()); - } - if (!other.getEtag().isEmpty()) { - etag_ = other.etag_; - bitField0_ |= 0x00000200; - onChanged(); - } - if (other.hasIdleTimeout()) { - mergeIdleTimeout(other.getIdleTimeout()); - } - if (other.hasRunningTimeout()) { - mergeRunningTimeout(other.getRunningTimeout()); - } - if (other.hasHost()) { - mergeHost(other.getHost()); - } - if (persistentDirectoriesBuilder_ == null) { - if (!other.persistentDirectories_.isEmpty()) { - if (persistentDirectories_.isEmpty()) { - persistentDirectories_ = other.persistentDirectories_; - bitField0_ = (bitField0_ & ~0x00002000); - } else { - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.addAll(other.persistentDirectories_); - } - onChanged(); - } - } else { - if (!other.persistentDirectories_.isEmpty()) { - if (persistentDirectoriesBuilder_.isEmpty()) { - persistentDirectoriesBuilder_.dispose(); - persistentDirectoriesBuilder_ = null; - persistentDirectories_ = other.persistentDirectories_; - bitField0_ = (bitField0_ & ~0x00002000); - persistentDirectoriesBuilder_ = - com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders - ? internalGetPersistentDirectoriesFieldBuilder() - : null; - } else { - persistentDirectoriesBuilder_.addAllMessages(other.persistentDirectories_); - } - } - } - if (ephemeralDirectoriesBuilder_ == null) { - if (!other.ephemeralDirectories_.isEmpty()) { - if (ephemeralDirectories_.isEmpty()) { - ephemeralDirectories_ = other.ephemeralDirectories_; - bitField0_ = (bitField0_ & ~0x00004000); - } else { - ensureEphemeralDirectoriesIsMutable(); - ephemeralDirectories_.addAll(other.ephemeralDirectories_); - } - onChanged(); - } - } else { - if (!other.ephemeralDirectories_.isEmpty()) { - if (ephemeralDirectoriesBuilder_.isEmpty()) { - ephemeralDirectoriesBuilder_.dispose(); - ephemeralDirectoriesBuilder_ = null; - ephemeralDirectories_ = other.ephemeralDirectories_; - bitField0_ = (bitField0_ & ~0x00004000); - ephemeralDirectoriesBuilder_ = - com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders - ? internalGetEphemeralDirectoriesFieldBuilder() - : null; - } else { - ephemeralDirectoriesBuilder_.addAllMessages(other.ephemeralDirectories_); - } - } - } - if (other.hasContainer()) { - mergeContainer(other.getContainer()); - } - if (other.hasEncryptionKey()) { - mergeEncryptionKey(other.getEncryptionKey()); - } - if (readinessChecksBuilder_ == null) { - if (!other.readinessChecks_.isEmpty()) { - if (readinessChecks_.isEmpty()) { - readinessChecks_ = other.readinessChecks_; - bitField0_ = (bitField0_ & ~0x00020000); - } else { - ensureReadinessChecksIsMutable(); - readinessChecks_.addAll(other.readinessChecks_); - } - onChanged(); - } - } else { - if (!other.readinessChecks_.isEmpty()) { - if (readinessChecksBuilder_.isEmpty()) { - readinessChecksBuilder_.dispose(); - readinessChecksBuilder_ = null; - readinessChecks_ = other.readinessChecks_; - bitField0_ = (bitField0_ & ~0x00020000); - readinessChecksBuilder_ = - com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders - ? internalGetReadinessChecksFieldBuilder() - : null; - } else { - readinessChecksBuilder_.addAllMessages(other.readinessChecks_); - } - } - } - if (!other.replicaZones_.isEmpty()) { - if (replicaZones_.isEmpty()) { - replicaZones_ = other.replicaZones_; - bitField0_ |= 0x00040000; - } else { - ensureReplicaZonesIsMutable(); - replicaZones_.addAll(other.replicaZones_); - } - onChanged(); - } - if (other.getDegraded() != false) { - setDegraded(other.getDegraded()); - } - if (conditionsBuilder_ == null) { - if (!other.conditions_.isEmpty()) { - if (conditions_.isEmpty()) { - conditions_ = other.conditions_; - bitField0_ = (bitField0_ & ~0x00100000); - } else { - ensureConditionsIsMutable(); - conditions_.addAll(other.conditions_); - } - onChanged(); - } - } else { - if (!other.conditions_.isEmpty()) { - if (conditionsBuilder_.isEmpty()) { - conditionsBuilder_.dispose(); - conditionsBuilder_ = null; - conditions_ = other.conditions_; - bitField0_ = (bitField0_ & ~0x00100000); - conditionsBuilder_ = - com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders - ? internalGetConditionsFieldBuilder() - : null; - } else { - conditionsBuilder_.addAllMessages(other.conditions_); - } - } - } - if (other.getEnableAuditAgent() != false) { - setEnableAuditAgent(other.getEnableAuditAgent()); - } - this.mergeUnknownFields(other.getUnknownFields()); onChanged(); - return this; + return labels_; + } + + public int getLabelsCount() { + return internalGetLabels().getMap().size(); + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation configuration and that are also propagated
            +     * to the underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public boolean containsLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + return internalGetLabels().getMap().containsKey(key); + } + + /** Use {@link #getLabelsMap()} instead. */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getLabels() { + return getLabelsMap(); } + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation configuration and that are also propagated
            +     * to the underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ @java.lang.Override - public final boolean isInitialized() { - return true; + public java.util.Map getLabelsMap() { + return internalGetLabels().getMap(); } + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation configuration and that are also propagated
            +     * to the underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); + public /* nullable */ java.lang.String getLabelsOrDefault( + java.lang.String key, + /* nullable */ + java.lang.String defaultValue) { + if (key == null) { + throw new NullPointerException("map key"); } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - name_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - displayName_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 18 - case 26: - { - uid_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000004; - break; - } // case 26 - case 32: - { - reconciling_ = input.readBool(); - bitField0_ |= 0x00000008; - break; - } // case 32 - case 42: - { - com.google.protobuf.MapEntry annotations__ = - input.readMessage( - AnnotationsDefaultEntryHolder.defaultEntry.getParserForType(), - extensionRegistry); - internalGetMutableAnnotations() - .getMutableMap() - .put(annotations__.getKey(), annotations__.getValue()); - bitField0_ |= 0x00000010; - break; - } // case 42 - case 50: - { - input.readMessage( - internalGetCreateTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000040; - break; - } // case 50 - case 58: - { - input.readMessage( - internalGetUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000080; - break; - } // case 58 - case 66: - { - input.readMessage( - internalGetDeleteTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000100; - break; - } // case 66 - case 74: - { - etag_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000200; - break; - } // case 74 - case 82: - { - input.readMessage( - internalGetIdleTimeoutFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000400; - break; - } // case 82 - case 90: - { - input.readMessage( - internalGetRunningTimeoutFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000800; - break; - } // case 90 - case 98: - { - input.readMessage(internalGetHostFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00001000; - break; - } // case 98 - case 106: - { - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory m = - input.readMessage( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .parser(), - extensionRegistry); - if (persistentDirectoriesBuilder_ == null) { - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.add(m); - } else { - persistentDirectoriesBuilder_.addMessage(m); - } - break; - } // case 106 - case 114: - { - input.readMessage( - internalGetContainerFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00008000; - break; - } // case 114 - case 120: - { - degraded_ = input.readBool(); - bitField0_ |= 0x00080000; - break; - } // case 120 - case 130: - { - com.google.rpc.Status m = - input.readMessage(com.google.rpc.Status.parser(), extensionRegistry); - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.add(m); - } else { - conditionsBuilder_.addMessage(m); - } - break; - } // case 130 - case 138: - { - input.readMessage( - internalGetEncryptionKeyFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00010000; - break; - } // case 138 - case 146: - { - com.google.protobuf.MapEntry labels__ = - input.readMessage( - LabelsDefaultEntryHolder.defaultEntry.getParserForType(), - extensionRegistry); - internalGetMutableLabels() - .getMutableMap() - .put(labels__.getKey(), labels__.getValue()); - bitField0_ |= 0x00000020; - break; - } // case 146 - case 154: - { - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck m = - input.readMessage( - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck - .parser(), - extensionRegistry); - if (readinessChecksBuilder_ == null) { - ensureReadinessChecksIsMutable(); - readinessChecks_.add(m); - } else { - readinessChecksBuilder_.addMessage(m); - } - break; - } // case 154 - case 160: - { - enableAuditAgent_ = input.readBool(); - bitField0_ |= 0x00200000; - break; - } // case 160 - case 178: - { - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory m = - input.readMessage( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .parser(), - extensionRegistry); - if (ephemeralDirectoriesBuilder_ == null) { - ensureEphemeralDirectoriesIsMutable(); - ephemeralDirectories_.add(m); - } else { - ephemeralDirectoriesBuilder_.addMessage(m); - } - break; - } // case 178 - case 186: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureReplicaZonesIsMutable(); - replicaZones_.add(s); - break; - } // case 186 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally + java.util.Map map = internalGetLabels().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation configuration and that are also propagated
            +     * to the underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public java.lang.String getLabelsOrThrow(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + java.util.Map map = internalGetLabels().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public Builder clearLabels() { + bitField0_ = (bitField0_ & ~0x00000020); + internalGetMutableLabels().getMutableMap().clear(); return this; } - private int bitField0_; + /** + * + * + *
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation configuration and that are also propagated
            +     * to the underlying Compute Engine resources.
            +     * 
            + * + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder removeLabels(java.lang.String key) { + if (key == null) { + throw new NullPointerException("map key"); + } + internalGetMutableLabels().getMutableMap().remove(key); + return this; + } - private java.lang.Object name_ = ""; + /** Use alternate mutation accessors instead. */ + @java.lang.Deprecated + public java.util.Map getMutableLabels() { + bitField0_ |= 0x00000020; + return internalGetMutableLabels().getMutableMap(); + } /** * * *
            -     * Full name of this workstation configuration.
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation configuration and that are also propagated
            +     * to the underlying Compute Engine resources.
                  * 
            * - * string name = 1; - * - * @return The name. + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; */ - 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; + public Builder putLabels(java.lang.String key, java.lang.String value) { + if (key == null) { + throw new NullPointerException("map key"); } + if (value == null) { + throw new NullPointerException("map value"); + } + internalGetMutableLabels().getMutableMap().put(key, value); + bitField0_ |= 0x00000020; + return this; } /** * * *
            -     * Full name of this workstation configuration.
            +     * Optional.
            +     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            +     * are applied to the workstation configuration and that are also propagated
            +     * to the underlying Compute Engine resources.
                  * 
            * - * string name = 1; + * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder putAllLabels(java.util.Map values) { + internalGetMutableLabels().getMutableMap().putAll(values); + bitField0_ |= 0x00000020; + return this; + } + + private com.google.protobuf.Timestamp createTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + createTimeBuilder_; + + /** + * * - * @return The bytes for name. + *
            +     * Output only. Time when this workstation configuration was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the createTime field is set. */ - 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; + public boolean hasCreateTime() { + return ((bitField0_ & 0x00000040) != 0); + } + + /** + * + * + *
            +     * Output only. Time when this workstation configuration was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The createTime. + */ + public com.google.protobuf.Timestamp getCreateTime() { + if (createTimeBuilder_ == null) { + return createTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : createTime_; } else { - return (com.google.protobuf.ByteString) ref; + return createTimeBuilder_.getMessage(); } } @@ -19466,20 +32241,23 @@ public com.google.protobuf.ByteString getNameBytes() { * * *
            -     * Full name of this workstation configuration.
            +     * Output only. Time when this workstation configuration was created.
                  * 
            * - * string name = 1; - * - * @param value The name to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setName(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder setCreateTime(com.google.protobuf.Timestamp value) { + if (createTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + createTime_ = value; + } else { + createTimeBuilder_.setMessage(value); } - name_ = value; - bitField0_ |= 0x00000001; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -19488,16 +32266,20 @@ public Builder setName(java.lang.String value) { * * *
            -     * Full name of this workstation configuration.
            +     * Output only. Time when this workstation configuration was created.
                  * 
            * - * string name = 1; - * - * @return This builder for chaining. + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearName() { - name_ = getDefaultInstance().getName(); - bitField0_ = (bitField0_ & ~0x00000001); + public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (createTimeBuilder_ == null) { + createTime_ = builderForValue.build(); + } else { + createTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -19506,47 +32288,89 @@ public Builder clearName() { * * *
            -     * Full name of this workstation configuration.
            +     * Output only. Time when this workstation configuration was created.
                  * 
            * - * string name = 1; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { + if (createTimeBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0) + && createTime_ != null + && createTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getCreateTimeBuilder().mergeFrom(value); + } else { + createTime_ = value; + } + } else { + createTimeBuilder_.mergeFrom(value); + } + if (createTime_ != null) { + bitField0_ |= 0x00000040; + onChanged(); + } + return this; + } + + /** + * * - * @param value The bytes for name to set. - * @return This builder for chaining. + *
            +     * Output only. Time when this workstation configuration was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setNameBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder clearCreateTime() { + bitField0_ = (bitField0_ & ~0x00000040); + createTime_ = null; + if (createTimeBuilder_ != null) { + createTimeBuilder_.dispose(); + createTimeBuilder_ = null; } - checkByteStringIsUtf8(value); - name_ = value; - bitField0_ |= 0x00000001; onChanged(); return this; } - private java.lang.Object displayName_ = ""; - /** * * *
            -     * Optional. Human-readable name for this workstation configuration.
            +     * Output only. Time when this workstation configuration was created.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { + bitField0_ |= 0x00000040; + onChanged(); + return internalGetCreateTimeFieldBuilder().getBuilder(); + } + + /** * - * @return The displayName. + * + *
            +     * Output only. Time when this workstation configuration was created.
            +     * 
            + * + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getDisplayName() { - java.lang.Object ref = displayName_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - displayName_ = s; - return s; + public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { + if (createTimeBuilder_ != null) { + return createTimeBuilder_.getMessageOrBuilder(); } else { - return (java.lang.String) ref; + return createTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : createTime_; } } @@ -19554,157 +32378,178 @@ public java.lang.String getDisplayName() { * * *
            -     * Optional. Human-readable name for this workstation configuration.
            +     * Output only. Time when this workstation configuration was created.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for displayName. + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getDisplayNameBytes() { - java.lang.Object ref = displayName_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - displayName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetCreateTimeFieldBuilder() { + if (createTimeBuilder_ == null) { + createTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getCreateTime(), getParentForChildren(), isClean()); + createTime_ = null; } + return createTimeBuilder_; } + private com.google.protobuf.Timestamp updateTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + updateTimeBuilder_; + /** * * *
            -     * Optional. Human-readable name for this workstation configuration.
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The displayName to set. - * @return This builder for chaining. + * @return Whether the updateTime field is set. */ - public Builder setDisplayName(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - displayName_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000080) != 0); } /** * * *
            -     * Optional. Human-readable name for this workstation configuration.
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return This builder for chaining. + * @return The updateTime. */ - public Builder clearDisplayName() { - displayName_ = getDefaultInstance().getDisplayName(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - return this; + public com.google.protobuf.Timestamp getUpdateTime() { + if (updateTimeBuilder_ == null) { + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; + } else { + return updateTimeBuilder_.getMessage(); + } } /** * * *
            -     * Optional. Human-readable name for this workstation configuration.
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
                  * 
            * - * string display_name = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for displayName to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder setUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + updateTime_ = value; + } else { + updateTimeBuilder_.setMessage(value); } - checkByteStringIsUtf8(value); - displayName_ = value; - bitField0_ |= 0x00000002; + bitField0_ |= 0x00000080; onChanged(); return this; } - private java.lang.Object uid_ = ""; - /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * configuration.
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The uid. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getUid() { - java.lang.Object ref = uid_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - uid_ = s; - return s; + public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (updateTimeBuilder_ == null) { + updateTime_ = builderForValue.build(); } else { - return (java.lang.String) ref; + updateTimeBuilder_.setMessage(builderForValue.build()); } + bitField0_ |= 0x00000080; + onChanged(); + return this; } /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * configuration.
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The bytes for uid. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getUidBytes() { - java.lang.Object ref = uid_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - uid_ = b; - return b; + public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (((bitField0_ & 0x00000080) != 0) + && updateTime_ != null + && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getUpdateTimeBuilder().mergeFrom(value); + } else { + updateTime_ = value; + } } else { - return (com.google.protobuf.ByteString) ref; + updateTimeBuilder_.mergeFrom(value); + } + if (updateTime_ != null) { + bitField0_ |= 0x00000080; + onChanged(); } + return this; } /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * configuration.
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The uid to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setUid(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder clearUpdateTime() { + bitField0_ = (bitField0_ & ~0x00000080); + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; } - uid_ = value; - bitField0_ |= 0x00000004; onChanged(); return this; } @@ -19713,220 +32558,214 @@ public Builder setUid(java.lang.String value) { * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * configuration.
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearUid() { - uid_ = getDefaultInstance().getUid(); - bitField0_ = (bitField0_ & ~0x00000004); + public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { + bitField0_ |= 0x00000080; onChanged(); - return this; + return internalGetUpdateTimeFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. A system-assigned unique identifier for this workstation
            -     * configuration.
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
                  * 
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @param value The bytes for uid to set. - * @return This builder for chaining. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setUidBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + if (updateTimeBuilder_ != null) { + return updateTimeBuilder_.getMessageOrBuilder(); + } else { + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; } - checkByteStringIsUtf8(value); - uid_ = value; - bitField0_ |= 0x00000004; - onChanged(); - return this; } - private boolean reconciling_; - /** * * *
            -     * Output only. Indicates whether this workstation configuration is currently
            -     * being updated to match its intended state.
            +     * Output only. Time when this workstation configuration was most recently
            +     * updated.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * - * @return The reconciling. + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public boolean getReconciling() { - return reconciling_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetUpdateTimeFieldBuilder() { + if (updateTimeBuilder_ == null) { + updateTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getUpdateTime(), getParentForChildren(), isClean()); + updateTime_ = null; + } + return updateTimeBuilder_; } + private com.google.protobuf.Timestamp deleteTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + deleteTimeBuilder_; + /** * * *
            -     * Output only. Indicates whether this workstation configuration is currently
            -     * being updated to match its intended state.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The reconciling to set. - * @return This builder for chaining. + * @return Whether the deleteTime field is set. */ - public Builder setReconciling(boolean value) { - - reconciling_ = value; - bitField0_ |= 0x00000008; - onChanged(); - return this; + public boolean hasDeleteTime() { + return ((bitField0_ & 0x00000100) != 0); } /** * * *
            -     * Output only. Indicates whether this workstation configuration is currently
            -     * being updated to match its intended state.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * bool reconciling = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return This builder for chaining. + * @return The deleteTime. */ - public Builder clearReconciling() { - bitField0_ = (bitField0_ & ~0x00000008); - reconciling_ = false; - onChanged(); - return this; - } - - private com.google.protobuf.MapField annotations_; - - private com.google.protobuf.MapField - internalGetAnnotations() { - if (annotations_ == null) { - return com.google.protobuf.MapField.emptyMapField( - AnnotationsDefaultEntryHolder.defaultEntry); - } - return annotations_; - } - - private com.google.protobuf.MapField - internalGetMutableAnnotations() { - if (annotations_ == null) { - annotations_ = - com.google.protobuf.MapField.newMapField(AnnotationsDefaultEntryHolder.defaultEntry); - } - if (!annotations_.isMutable()) { - annotations_ = annotations_.copy(); + public com.google.protobuf.Timestamp getDeleteTime() { + if (deleteTimeBuilder_ == null) { + return deleteTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : deleteTime_; + } else { + return deleteTimeBuilder_.getMessage(); } - bitField0_ |= 0x00000010; - onChanged(); - return annotations_; - } - - public int getAnnotationsCount() { - return internalGetAnnotations().getMap().size(); } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - @java.lang.Override - public boolean containsAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder setDeleteTime(com.google.protobuf.Timestamp value) { + if (deleteTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deleteTime_ = value; + } else { + deleteTimeBuilder_.setMessage(value); } - return internalGetAnnotations().getMap().containsKey(key); - } - - /** Use {@link #getAnnotationsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getAnnotations() { - return getAnnotationsMap(); + bitField0_ |= 0x00000100; + onChanged(); + return this; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - @java.lang.Override - public java.util.Map getAnnotationsMap() { - return internalGetAnnotations().getMap(); + public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (deleteTimeBuilder_ == null) { + deleteTime_ = builderForValue.build(); + } else { + deleteTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - @java.lang.Override - public /* nullable */ java.lang.String getAnnotationsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { + if (deleteTimeBuilder_ == null) { + if (((bitField0_ & 0x00000100) != 0) + && deleteTime_ != null + && deleteTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getDeleteTimeBuilder().mergeFrom(value); + } else { + deleteTime_ = value; + } + } else { + deleteTimeBuilder_.mergeFrom(value); } - java.util.Map map = internalGetAnnotations().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; + if (deleteTime_ != null) { + bitField0_ |= 0x00000100; + onChanged(); + } + return this; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - @java.lang.Override - public java.lang.String getAnnotationsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetAnnotations().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); + public Builder clearDeleteTime() { + bitField0_ = (bitField0_ & ~0x00000100); + deleteTime_ = null; + if (deleteTimeBuilder_ != null) { + deleteTimeBuilder_.dispose(); + deleteTimeBuilder_ = null; } - return map.get(key); - } - - public Builder clearAnnotations() { - bitField0_ = (bitField0_ & ~0x00000010); - internalGetMutableAnnotations().getMutableMap().clear(); + onChanged(); return this; } @@ -19934,186 +32773,161 @@ public Builder clearAnnotations() { * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder removeAnnotations(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - internalGetMutableAnnotations().getMutableMap().remove(key); - return this; - } - - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableAnnotations() { - bitField0_ |= 0x00000010; - return internalGetMutableAnnotations().getMutableMap(); + public com.google.protobuf.Timestamp.Builder getDeleteTimeBuilder() { + bitField0_ |= 0x00000100; + onChanged(); + return internalGetDeleteTimeFieldBuilder().getBuilder(); } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder putAnnotations(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); - } - if (value == null) { - throw new NullPointerException("map value"); + public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { + if (deleteTimeBuilder_ != null) { + return deleteTimeBuilder_.getMessageOrBuilder(); + } else { + return deleteTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : deleteTime_; } - internalGetMutableAnnotations().getMutableMap().put(key, value); - bitField0_ |= 0x00000010; - return this; } /** * * *
            -     * Optional. Client-specified annotations.
            +     * Output only. Time when this workstation configuration was soft-deleted.
                  * 
            * - * map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder putAllAnnotations(java.util.Map values) { - internalGetMutableAnnotations().getMutableMap().putAll(values); - bitField0_ |= 0x00000010; - return this; - } - - private com.google.protobuf.MapField labels_; - - private com.google.protobuf.MapField internalGetLabels() { - if (labels_ == null) { - return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry); - } - return labels_; - } - - private com.google.protobuf.MapField - internalGetMutableLabels() { - if (labels_ == null) { - labels_ = com.google.protobuf.MapField.newMapField(LabelsDefaultEntryHolder.defaultEntry); - } - if (!labels_.isMutable()) { - labels_ = labels_.copy(); + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetDeleteTimeFieldBuilder() { + if (deleteTimeBuilder_ == null) { + deleteTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getDeleteTime(), getParentForChildren(), isClean()); + deleteTime_ = null; } - bitField0_ |= 0x00000020; - onChanged(); - return labels_; + return deleteTimeBuilder_; } - public int getLabelsCount() { - return internalGetLabels().getMap().size(); - } + private java.lang.Object etag_ = ""; /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation configuration and that are also propagated
            -     * to the underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The etag. */ - @java.lang.Override - public boolean containsLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public java.lang.String getEtag() { + java.lang.Object ref = etag_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + etag_ = s; + return s; + } else { + return (java.lang.String) ref; } - return internalGetLabels().getMap().containsKey(key); - } - - /** Use {@link #getLabelsMap()} instead. */ - @java.lang.Override - @java.lang.Deprecated - public java.util.Map getLabels() { - return getLabelsMap(); } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation configuration and that are also propagated
            -     * to the underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for etag. */ - @java.lang.Override - public java.util.Map getLabelsMap() { - return internalGetLabels().getMap(); + public com.google.protobuf.ByteString getEtagBytes() { + java.lang.Object ref = etag_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + etag_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation configuration and that are also propagated
            -     * to the underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The etag to set. + * @return This builder for chaining. */ - @java.lang.Override - public /* nullable */ java.lang.String getLabelsOrDefault( - java.lang.String key, - /* nullable */ - java.lang.String defaultValue) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder setEtag(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - java.util.Map map = internalGetLabels().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; + etag_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation configuration and that are also propagated
            -     * to the underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. */ - @java.lang.Override - public java.lang.String getLabelsOrThrow(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); - } - java.util.Map map = internalGetLabels().getMap(); - if (!map.containsKey(key)) { - throw new java.lang.IllegalArgumentException(); - } - return map.get(key); - } - - public Builder clearLabels() { - bitField0_ = (bitField0_ & ~0x00000020); - internalGetMutableLabels().getMutableMap().clear(); + public Builder clearEtag() { + etag_ = getDefaultInstance().getEtag(); + bitField0_ = (bitField0_ & ~0x00000200); + onChanged(); return this; } @@ -20121,139 +32935,211 @@ public Builder clearLabels() { * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation configuration and that are also propagated
            -     * to the underlying Compute Engine resources.
            +     * Optional. Checksum computed by the server. May be sent on update and delete
            +     * requests to make sure that the client has an up-to-date value before
            +     * proceeding.
                  * 
            * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for etag to set. + * @return This builder for chaining. */ - public Builder removeLabels(java.lang.String key) { - if (key == null) { - throw new NullPointerException("map key"); + public Builder setEtagBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - internalGetMutableLabels().getMutableMap().remove(key); + checkByteStringIsUtf8(value); + etag_ = value; + bitField0_ |= 0x00000200; + onChanged(); return this; } - /** Use alternate mutation accessors instead. */ - @java.lang.Deprecated - public java.util.Map getMutableLabels() { - bitField0_ |= 0x00000020; - return internalGetMutableLabels().getMutableMap(); - } + private com.google.protobuf.Duration idleTimeout_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + idleTimeoutBuilder_; /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation configuration and that are also propagated
            -     * to the underlying Compute Engine resources.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the idleTimeout field is set. */ - public Builder putLabels(java.lang.String key, java.lang.String value) { - if (key == null) { - throw new NullPointerException("map key"); - } - if (value == null) { - throw new NullPointerException("map value"); - } - internalGetMutableLabels().getMutableMap().put(key, value); - bitField0_ |= 0x00000020; - return this; + public boolean hasIdleTimeout() { + return ((bitField0_ & 0x00000400) != 0); } /** * * *
            -     * Optional.
            -     * [Labels](https://cloud.google.com/workstations/docs/label-resources) that
            -     * are applied to the workstation configuration and that are also propagated
            -     * to the underlying Compute Engine resources.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * map<string, string> labels = 18 [(.google.api.field_behavior) = OPTIONAL]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The idleTimeout. */ - public Builder putAllLabels(java.util.Map values) { - internalGetMutableLabels().getMutableMap().putAll(values); - bitField0_ |= 0x00000020; - return this; + public com.google.protobuf.Duration getIdleTimeout() { + if (idleTimeoutBuilder_ == null) { + return idleTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : idleTimeout_; + } else { + return idleTimeoutBuilder_.getMessage(); + } } - private com.google.protobuf.Timestamp createTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - createTimeBuilder_; + /** + * + * + *
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
            +     * 
            + * + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setIdleTimeout(com.google.protobuf.Duration value) { + if (idleTimeoutBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + idleTimeout_ = value; + } else { + idleTimeoutBuilder_.setMessage(value); + } + bitField0_ |= 0x00000400; + onChanged(); + return this; + } /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the createTime field is set. */ - public boolean hasCreateTime() { - return ((bitField0_ & 0x00000040) != 0); + public Builder setIdleTimeout(com.google.protobuf.Duration.Builder builderForValue) { + if (idleTimeoutBuilder_ == null) { + idleTimeout_ = builderForValue.build(); + } else { + idleTimeoutBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000400; + onChanged(); + return this; } /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The createTime. */ - public com.google.protobuf.Timestamp getCreateTime() { - if (createTimeBuilder_ == null) { - return createTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : createTime_; + public Builder mergeIdleTimeout(com.google.protobuf.Duration value) { + if (idleTimeoutBuilder_ == null) { + if (((bitField0_ & 0x00000400) != 0) + && idleTimeout_ != null + && idleTimeout_ != com.google.protobuf.Duration.getDefaultInstance()) { + getIdleTimeoutBuilder().mergeFrom(value); + } else { + idleTimeout_ = value; + } } else { - return createTimeBuilder_.getMessage(); + idleTimeoutBuilder_.mergeFrom(value); + } + if (idleTimeout_ != null) { + bitField0_ |= 0x00000400; + onChanged(); } + return this; } /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setCreateTime(com.google.protobuf.Timestamp value) { - if (createTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - createTime_ = value; - } else { - createTimeBuilder_.setMessage(value); + public Builder clearIdleTimeout() { + bitField0_ = (bitField0_ & ~0x00000400); + idleTimeout_ = null; + if (idleTimeoutBuilder_ != null) { + idleTimeoutBuilder_.dispose(); + idleTimeoutBuilder_ = null; } - bitField0_ |= 0x00000040; onChanged(); return this; } @@ -20262,111 +33148,175 @@ public Builder setCreateTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (createTimeBuilder_ == null) { - createTime_ = builderForValue.build(); - } else { - createTimeBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000040; + public com.google.protobuf.Duration.Builder getIdleTimeoutBuilder() { + bitField0_ |= 0x00000400; onChanged(); - return this; + return internalGetIdleTimeoutFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { - if (createTimeBuilder_ == null) { - if (((bitField0_ & 0x00000040) != 0) - && createTime_ != null - && createTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getCreateTimeBuilder().mergeFrom(value); - } else { - createTime_ = value; - } + public com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder() { + if (idleTimeoutBuilder_ != null) { + return idleTimeoutBuilder_.getMessageOrBuilder(); } else { - createTimeBuilder_.mergeFrom(value); - } - if (createTime_ != null) { - bitField0_ |= 0x00000040; - onChanged(); + return idleTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : idleTimeout_; } - return this; } /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds to wait before automatically stopping a
            +     * workstation after it last received user traffic.
            +     *
            +     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            +     * configuration should never time out due to idleness.
            +     * Provide
            +     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            +     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            +     * The default is `"1200s"` (20 minutes).
                  * 
            * - * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearCreateTime() { - bitField0_ = (bitField0_ & ~0x00000040); - createTime_ = null; - if (createTimeBuilder_ != null) { - createTimeBuilder_.dispose(); - createTimeBuilder_ = null; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + internalGetIdleTimeoutFieldBuilder() { + if (idleTimeoutBuilder_ == null) { + idleTimeoutBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder>( + getIdleTimeout(), getParentForChildren(), isClean()); + idleTimeout_ = null; } - onChanged(); - return this; + return idleTimeoutBuilder_; } + private com.google.protobuf.Duration runningTimeout_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + runningTimeoutBuilder_; + /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return Whether the runningTimeout field is set. */ - public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { - bitField0_ |= 0x00000040; - onChanged(); - return internalGetCreateTimeFieldBuilder().getBuilder(); + public boolean hasRunningTimeout() { + return ((bitField0_ & 0x00000800) != 0); } /** * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The runningTimeout. */ - public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { - if (createTimeBuilder_ != null) { - return createTimeBuilder_.getMessageOrBuilder(); + public com.google.protobuf.Duration getRunningTimeout() { + if (runningTimeoutBuilder_ == null) { + return runningTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : runningTimeout_; } else { - return createTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : createTime_; + return runningTimeoutBuilder_.getMessage(); } } @@ -20374,101 +33324,181 @@ public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { * * *
            -     * Output only. Time when this workstation configuration was created.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetCreateTimeFieldBuilder() { - if (createTimeBuilder_ == null) { - createTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getCreateTime(), getParentForChildren(), isClean()); - createTime_ = null; + public Builder setRunningTimeout(com.google.protobuf.Duration value) { + if (runningTimeoutBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + runningTimeout_ = value; + } else { + runningTimeoutBuilder_.setMessage(value); } - return createTimeBuilder_; + bitField0_ |= 0x00000800; + onChanged(); + return this; } - private com.google.protobuf.Timestamp updateTime_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - updateTimeBuilder_; - /** * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the updateTime field is set. */ - public boolean hasUpdateTime() { - return ((bitField0_ & 0x00000080) != 0); + public Builder setRunningTimeout(com.google.protobuf.Duration.Builder builderForValue) { + if (runningTimeoutBuilder_ == null) { + runningTimeout_ = builderForValue.build(); + } else { + runningTimeoutBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000800; + onChanged(); + return this; } /** * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The updateTime. */ - public com.google.protobuf.Timestamp getUpdateTime() { - if (updateTimeBuilder_ == null) { - return updateTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : updateTime_; + public Builder mergeRunningTimeout(com.google.protobuf.Duration value) { + if (runningTimeoutBuilder_ == null) { + if (((bitField0_ & 0x00000800) != 0) + && runningTimeout_ != null + && runningTimeout_ != com.google.protobuf.Duration.getDefaultInstance()) { + getRunningTimeoutBuilder().mergeFrom(value); + } else { + runningTimeout_ = value; + } } else { - return updateTimeBuilder_.getMessage(); + runningTimeoutBuilder_.mergeFrom(value); + } + if (runningTimeout_ != null) { + bitField0_ |= 0x00000800; + onChanged(); } + return this; } /** * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setUpdateTime(com.google.protobuf.Timestamp value) { - if (updateTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - updateTime_ = value; - } else { - updateTimeBuilder_.setMessage(value); + public Builder clearRunningTimeout() { + bitField0_ = (bitField0_ & ~0x00000800); + runningTimeout_ = null; + if (runningTimeoutBuilder_ != null) { + runningTimeoutBuilder_.dispose(); + runningTimeoutBuilder_ = null; } - bitField0_ |= 0x00000080; onChanged(); return this; } @@ -20477,192 +33507,270 @@ public Builder setUpdateTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (updateTimeBuilder_ == null) { - updateTime_ = builderForValue.build(); - } else { - updateTimeBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000080; + public com.google.protobuf.Duration.Builder getRunningTimeoutBuilder() { + bitField0_ |= 0x00000800; onChanged(); - return this; + return internalGetRunningTimeoutFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { - if (updateTimeBuilder_ == null) { - if (((bitField0_ & 0x00000080) != 0) - && updateTime_ != null - && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getUpdateTimeBuilder().mergeFrom(value); - } else { - updateTime_ = value; - } + public com.google.protobuf.DurationOrBuilder getRunningTimeoutOrBuilder() { + if (runningTimeoutBuilder_ != null) { + return runningTimeoutBuilder_.getMessageOrBuilder(); } else { - updateTimeBuilder_.mergeFrom(value); - } - if (updateTime_ != null) { - bitField0_ |= 0x00000080; - onChanged(); + return runningTimeout_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : runningTimeout_; } - return this; } /** * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Number of seconds that a workstation can run until it is
            +     * automatically shut down. We recommend that workstations be shut down daily
            +     * to reduce costs and so that security updates can be applied upon restart.
            +     * The
            +     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            +     * and
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * fields are independent of each other. Note that the
            +     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            +     * field shuts down VMs after the specified time, regardless of whether or not
            +     * the VMs are idle.
            +     *
            +     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            +     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            +     * that workstations using this configuration should never time out. If
            +     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            +     * is set, it must be greater than `"0s"` and less than
            +     * `"86400s"` (24 hours).
            +     *
            +     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            +     * with this configuration have no maximum running time. This is strongly
            +     * discouraged because you incur costs and will not pick up security updates.
                  * 
            * * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearUpdateTime() { - bitField0_ = (bitField0_ & ~0x00000080); - updateTime_ = null; - if (updateTimeBuilder_ != null) { - updateTimeBuilder_.dispose(); - updateTimeBuilder_ = null; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + internalGetRunningTimeoutFieldBuilder() { + if (runningTimeoutBuilder_ == null) { + runningTimeoutBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder>( + getRunningTimeout(), getParentForChildren(), isClean()); + runningTimeout_ = null; } - onChanged(); - return this; + return runningTimeoutBuilder_; } + private int maxUsableWorkstations_; + /** * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Maximum number of workstations under this configuration a user
            +     * can have `workstations.workstation.use` permission on.
            +     *
            +     * Only enforced on CreateWorkstation API calls on the user issuing the API
            +     * request. Can be overridden by:
            +     *
            +     * - granting a user
            +     * workstations.workstationConfigs.exemptMaxUsableWorkstationLimit permission,
            +     * or
            +     * - having a user with that permission create a workstation and
            +     * granting another user `workstations.workstation.use` permission on
            +     * that workstation.
            +     *
            +     * If not specified, defaults to `0`, which indicates unlimited.
                  * 
            * - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * int32 max_usable_workstations = 28 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxUsableWorkstations. */ - public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { - bitField0_ |= 0x00000080; - onChanged(); - return internalGetUpdateTimeFieldBuilder().getBuilder(); + @java.lang.Override + public int getMaxUsableWorkstations() { + return maxUsableWorkstations_; } /** * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Maximum number of workstations under this configuration a user
            +     * can have `workstations.workstation.use` permission on.
            +     *
            +     * Only enforced on CreateWorkstation API calls on the user issuing the API
            +     * request. Can be overridden by:
            +     *
            +     * - granting a user
            +     * workstations.workstationConfigs.exemptMaxUsableWorkstationLimit permission,
            +     * or
            +     * - having a user with that permission create a workstation and
            +     * granting another user `workstations.workstation.use` permission on
            +     * that workstation.
            +     *
            +     * If not specified, defaults to `0`, which indicates unlimited.
                  * 
            * - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * int32 max_usable_workstations = 28 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The maxUsableWorkstations to set. + * @return This builder for chaining. */ - public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { - if (updateTimeBuilder_ != null) { - return updateTimeBuilder_.getMessageOrBuilder(); - } else { - return updateTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : updateTime_; - } + public Builder setMaxUsableWorkstations(int value) { + + maxUsableWorkstations_ = value; + bitField0_ |= 0x00001000; + onChanged(); + return this; } /** * * *
            -     * Output only. Time when this workstation configuration was most recently
            -     * updated.
            +     * Optional. Maximum number of workstations under this configuration a user
            +     * can have `workstations.workstation.use` permission on.
            +     *
            +     * Only enforced on CreateWorkstation API calls on the user issuing the API
            +     * request. Can be overridden by:
            +     *
            +     * - granting a user
            +     * workstations.workstationConfigs.exemptMaxUsableWorkstationLimit permission,
            +     * or
            +     * - having a user with that permission create a workstation and
            +     * granting another user `workstations.workstation.use` permission on
            +     * that workstation.
            +     *
            +     * If not specified, defaults to `0`, which indicates unlimited.
                  * 
            * - * - * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; - * + * int32 max_usable_workstations = 28 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetUpdateTimeFieldBuilder() { - if (updateTimeBuilder_ == null) { - updateTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getUpdateTime(), getParentForChildren(), isClean()); - updateTime_ = null; - } - return updateTimeBuilder_; + public Builder clearMaxUsableWorkstations() { + bitField0_ = (bitField0_ & ~0x00001000); + maxUsableWorkstations_ = 0; + onChanged(); + return this; } - private com.google.protobuf.Timestamp deleteTime_; + private com.google.cloud.workstations.v1beta.WorkstationConfig.Host host_; private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - deleteTimeBuilder_; + com.google.cloud.workstations.v1beta.WorkstationConfig.Host, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.HostOrBuilder> + hostBuilder_; /** * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return Whether the deleteTime field is set. + * @return Whether the host field is set. */ - public boolean hasDeleteTime() { - return ((bitField0_ & 0x00000100) != 0); + public boolean hasHost() { + return ((bitField0_ & 0x00002000) != 0); } /** * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return The deleteTime. + * @return The host. */ - public com.google.protobuf.Timestamp getDeleteTime() { - if (deleteTimeBuilder_ == null) { - return deleteTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : deleteTime_; + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host getHost() { + if (hostBuilder_ == null) { + return host_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.getDefaultInstance() + : host_; } else { - return deleteTimeBuilder_.getMessage(); + return hostBuilder_.getMessage(); } } @@ -20670,23 +33778,23 @@ public com.google.protobuf.Timestamp getDeleteTime() { * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setDeleteTime(com.google.protobuf.Timestamp value) { - if (deleteTimeBuilder_ == null) { + public Builder setHost(com.google.cloud.workstations.v1beta.WorkstationConfig.Host value) { + if (hostBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - deleteTime_ = value; + host_ = value; } else { - deleteTimeBuilder_.setMessage(value); + hostBuilder_.setMessage(value); } - bitField0_ |= 0x00000100; + bitField0_ |= 0x00002000; onChanged(); return this; } @@ -20695,20 +33803,21 @@ public Builder setDeleteTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (deleteTimeBuilder_ == null) { - deleteTime_ = builderForValue.build(); + public Builder setHost( + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.Builder builderForValue) { + if (hostBuilder_ == null) { + host_ = builderForValue.build(); } else { - deleteTimeBuilder_.setMessage(builderForValue.build()); + hostBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00000100; + bitField0_ |= 0x00002000; onChanged(); return this; } @@ -20717,27 +33826,29 @@ public Builder setDeleteTime(com.google.protobuf.Timestamp.Builder builderForVal * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { - if (deleteTimeBuilder_ == null) { - if (((bitField0_ & 0x00000100) != 0) - && deleteTime_ != null - && deleteTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getDeleteTimeBuilder().mergeFrom(value); + public Builder mergeHost(com.google.cloud.workstations.v1beta.WorkstationConfig.Host value) { + if (hostBuilder_ == null) { + if (((bitField0_ & 0x00002000) != 0) + && host_ != null + && host_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.Host + .getDefaultInstance()) { + getHostBuilder().mergeFrom(value); } else { - deleteTime_ = value; + host_ = value; } } else { - deleteTimeBuilder_.mergeFrom(value); + hostBuilder_.mergeFrom(value); } - if (deleteTime_ != null) { - bitField0_ |= 0x00000100; + if (host_ != null) { + bitField0_ |= 0x00002000; onChanged(); } return this; @@ -20747,19 +33858,19 @@ public Builder mergeDeleteTime(com.google.protobuf.Timestamp value) { * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearDeleteTime() { - bitField0_ = (bitField0_ & ~0x00000100); - deleteTime_ = null; - if (deleteTimeBuilder_ != null) { - deleteTimeBuilder_.dispose(); - deleteTimeBuilder_ = null; + public Builder clearHost() { + bitField0_ = (bitField0_ & ~0x00002000); + host_ = null; + if (hostBuilder_ != null) { + hostBuilder_.dispose(); + hostBuilder_ = null; } onChanged(); return this; @@ -20769,37 +33880,37 @@ public Builder clearDeleteTime() { * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.Timestamp.Builder getDeleteTimeBuilder() { - bitField0_ |= 0x00000100; + public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.Builder getHostBuilder() { + bitField0_ |= 0x00002000; onChanged(); - return internalGetDeleteTimeFieldBuilder().getBuilder(); + return internalGetHostFieldBuilder().getBuilder(); } /** * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { - if (deleteTimeBuilder_ != null) { - return deleteTimeBuilder_.getMessageOrBuilder(); + public com.google.cloud.workstations.v1beta.WorkstationConfig.HostOrBuilder getHostOrBuilder() { + if (hostBuilder_ != null) { + return hostBuilder_.getMessageOrBuilder(); } else { - return deleteTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : deleteTime_; + return host_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.getDefaultInstance() + : host_; } } @@ -20807,79 +33918,68 @@ public com.google.protobuf.TimestampOrBuilder getDeleteTimeOrBuilder() { * * *
            -     * Output only. Time when this workstation configuration was soft-deleted.
            +     * Optional. Runtime host for the workstation.
                  * 
            * * - * .google.protobuf.Timestamp delete_time = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; * */ private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - internalGetDeleteTimeFieldBuilder() { - if (deleteTimeBuilder_ == null) { - deleteTimeBuilder_ = + com.google.cloud.workstations.v1beta.WorkstationConfig.Host, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.HostOrBuilder> + internalGetHostFieldBuilder() { + if (hostBuilder_ == null) { + hostBuilder_ = new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getDeleteTime(), getParentForChildren(), isClean()); - deleteTime_ = null; + com.google.cloud.workstations.v1beta.WorkstationConfig.Host, + com.google.cloud.workstations.v1beta.WorkstationConfig.Host.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.HostOrBuilder>( + getHost(), getParentForChildren(), isClean()); + host_ = null; } - return deleteTimeBuilder_; + return hostBuilder_; } - private java.lang.Object etag_ = ""; + private java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory> + persistentDirectories_ = java.util.Collections.emptyList(); - /** - * - * - *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            -     * 
            - * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The etag. - */ - public java.lang.String getEtag() { - java.lang.Object ref = etag_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - etag_ = s; - return s; - } else { - return (java.lang.String) ref; + private void ensurePersistentDirectoriesIsMutable() { + if (!((bitField0_ & 0x00004000) != 0)) { + persistentDirectories_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory>( + persistentDirectories_); + bitField0_ |= 0x00004000; } } + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectoryOrBuilder> + persistentDirectoriesBuilder_; + /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for etag. + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public com.google.protobuf.ByteString getEtagBytes() { - java.lang.Object ref = etag_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - etag_ = b; - return b; + public java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory> + getPersistentDirectoriesList() { + if (persistentDirectoriesBuilder_ == null) { + return java.util.Collections.unmodifiableList(persistentDirectories_); } else { - return (com.google.protobuf.ByteString) ref; + return persistentDirectoriesBuilder_.getMessageList(); } } @@ -20887,161 +33987,143 @@ public com.google.protobuf.ByteString getEtagBytes() { * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The etag to set. - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setEtag(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public int getPersistentDirectoriesCount() { + if (persistentDirectoriesBuilder_ == null) { + return persistentDirectories_.size(); + } else { + return persistentDirectoriesBuilder_.getCount(); } - etag_ = value; - bitField0_ |= 0x00000200; - onChanged(); - return this; } /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder clearEtag() { - etag_ = getDefaultInstance().getEtag(); - bitField0_ = (bitField0_ & ~0x00000200); - onChanged(); - return this; + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + getPersistentDirectories(int index) { + if (persistentDirectoriesBuilder_ == null) { + return persistentDirectories_.get(index); + } else { + return persistentDirectoriesBuilder_.getMessage(index); + } } /** * * *
            -     * Optional. Checksum computed by the server. May be sent on update and delete
            -     * requests to make sure that the client has an up-to-date value before
            -     * proceeding.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * string etag = 9 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for etag to set. - * @return This builder for chaining. + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * */ - public Builder setEtagBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder setPersistentDirectories( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory value) { + if (persistentDirectoriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.set(index, value); + onChanged(); + } else { + persistentDirectoriesBuilder_.setMessage(index, value); } - checkByteStringIsUtf8(value); - etag_ = value; - bitField0_ |= 0x00000200; - onChanged(); return this; } - private com.google.protobuf.Duration idleTimeout_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Duration, - com.google.protobuf.Duration.Builder, - com.google.protobuf.DurationOrBuilder> - idleTimeoutBuilder_; - /** * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the idleTimeout field is set. */ - public boolean hasIdleTimeout() { - return ((bitField0_ & 0x00000400) != 0); + public Builder setPersistentDirectories( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder + builderForValue) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.set(index, builderForValue.build()); + onChanged(); + } else { + persistentDirectoriesBuilder_.setMessage(index, builderForValue.build()); + } + return this; } /** * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The idleTimeout. */ - public com.google.protobuf.Duration getIdleTimeout() { - if (idleTimeoutBuilder_ == null) { - return idleTimeout_ == null - ? com.google.protobuf.Duration.getDefaultInstance() - : idleTimeout_; + public Builder addPersistentDirectories( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory value) { + if (persistentDirectoriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(value); + onChanged(); } else { - return idleTimeoutBuilder_.getMessage(); + persistentDirectoriesBuilder_.addMessage(value); } + return this; } /** * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setIdleTimeout(com.google.protobuf.Duration value) { - if (idleTimeoutBuilder_ == null) { + public Builder addPersistentDirectories( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory value) { + if (persistentDirectoriesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - idleTimeout_ = value; + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(index, value); + onChanged(); } else { - idleTimeoutBuilder_.setMessage(value); + persistentDirectoriesBuilder_.addMessage(index, value); } - bitField0_ |= 0x00000400; - onChanged(); return this; } @@ -21049,28 +34131,23 @@ public Builder setIdleTimeout(com.google.protobuf.Duration value) { * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setIdleTimeout(com.google.protobuf.Duration.Builder builderForValue) { - if (idleTimeoutBuilder_ == null) { - idleTimeout_ = builderForValue.build(); + public Builder addPersistentDirectories( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder + builderForValue) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(builderForValue.build()); + onChanged(); } else { - idleTimeoutBuilder_.setMessage(builderForValue.build()); + persistentDirectoriesBuilder_.addMessage(builderForValue.build()); } - bitField0_ |= 0x00000400; - onChanged(); return this; } @@ -21078,35 +34155,23 @@ public Builder setIdleTimeout(com.google.protobuf.Duration.Builder builderForVal * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeIdleTimeout(com.google.protobuf.Duration value) { - if (idleTimeoutBuilder_ == null) { - if (((bitField0_ & 0x00000400) != 0) - && idleTimeout_ != null - && idleTimeout_ != com.google.protobuf.Duration.getDefaultInstance()) { - getIdleTimeoutBuilder().mergeFrom(value); - } else { - idleTimeout_ = value; - } - } else { - idleTimeoutBuilder_.mergeFrom(value); - } - if (idleTimeout_ != null) { - bitField0_ |= 0x00000400; + public Builder addPersistentDirectories( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder + builderForValue) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.add(index, builderForValue.build()); onChanged(); + } else { + persistentDirectoriesBuilder_.addMessage(index, builderForValue.build()); } return this; } @@ -21115,28 +34180,25 @@ public Builder mergeIdleTimeout(com.google.protobuf.Duration value) { * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearIdleTimeout() { - bitField0_ = (bitField0_ & ~0x00000400); - idleTimeout_ = null; - if (idleTimeoutBuilder_ != null) { - idleTimeoutBuilder_.dispose(); - idleTimeoutBuilder_ = null; + public Builder addAllPersistentDirectories( + java.lang.Iterable< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory> + values) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, persistentDirectories_); + onChanged(); + } else { + persistentDirectoriesBuilder_.addAllMessages(values); } - onChanged(); return this; } @@ -21144,175 +34206,101 @@ public Builder clearIdleTimeout() { * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.Duration.Builder getIdleTimeoutBuilder() { - bitField0_ |= 0x00000400; - onChanged(); - return internalGetIdleTimeoutFieldBuilder().getBuilder(); + public Builder clearPersistentDirectories() { + if (persistentDirectoriesBuilder_ == null) { + persistentDirectories_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00004000); + onChanged(); + } else { + persistentDirectoriesBuilder_.clear(); + } + return this; } /** * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder() { - if (idleTimeoutBuilder_ != null) { - return idleTimeoutBuilder_.getMessageOrBuilder(); + public Builder removePersistentDirectories(int index) { + if (persistentDirectoriesBuilder_ == null) { + ensurePersistentDirectoriesIsMutable(); + persistentDirectories_.remove(index); + onChanged(); } else { - return idleTimeout_ == null - ? com.google.protobuf.Duration.getDefaultInstance() - : idleTimeout_; + persistentDirectoriesBuilder_.remove(index); } + return this; } /** * * *
            -     * Optional. Number of seconds to wait before automatically stopping a
            -     * workstation after it last received user traffic.
            -     *
            -     * A value of `"0s"` indicates that Cloud Workstations VMs created with this
            -     * configuration should never time out due to idleness.
            -     * Provide
            -     * [duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)
            -     * terminated by `s` for seconds—for example, `"7200s"` (2 hours).
            -     * The default is `"1200s"` (20 minutes).
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * - * .google.protobuf.Duration idle_timeout = 10 [(.google.api.field_behavior) = OPTIONAL]; + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Duration, - com.google.protobuf.Duration.Builder, - com.google.protobuf.DurationOrBuilder> - internalGetIdleTimeoutFieldBuilder() { - if (idleTimeoutBuilder_ == null) { - idleTimeoutBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Duration, - com.google.protobuf.Duration.Builder, - com.google.protobuf.DurationOrBuilder>( - getIdleTimeout(), getParentForChildren(), isClean()); - idleTimeout_ = null; - } - return idleTimeoutBuilder_; + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder + getPersistentDirectoriesBuilder(int index) { + return internalGetPersistentDirectoriesFieldBuilder().getBuilder(index); } - private com.google.protobuf.Duration runningTimeout_; - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Duration, - com.google.protobuf.Duration.Builder, - com.google.protobuf.DurationOrBuilder> - runningTimeoutBuilder_; - /** * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the runningTimeout field is set. */ - public boolean hasRunningTimeout() { - return ((bitField0_ & 0x00000800) != 0); + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectoryOrBuilder + getPersistentDirectoriesOrBuilder(int index) { + if (persistentDirectoriesBuilder_ == null) { + return persistentDirectories_.get(index); + } else { + return persistentDirectoriesBuilder_.getMessageOrBuilder(index); + } } - /** - * - * - *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            +    /**
                  *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     *
            +     * 
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The runningTimeout. */ - public com.google.protobuf.Duration getRunningTimeout() { - if (runningTimeoutBuilder_ == null) { - return runningTimeout_ == null - ? com.google.protobuf.Duration.getDefaultInstance() - : runningTimeout_; + public java.util.List< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectoryOrBuilder> + getPersistentDirectoriesOrBuilderList() { + if (persistentDirectoriesBuilder_ != null) { + return persistentDirectoriesBuilder_.getMessageOrBuilderList(); } else { - return runningTimeoutBuilder_.getMessage(); + return java.util.Collections.unmodifiableList(persistentDirectories_); } } @@ -21320,262 +34308,158 @@ public com.google.protobuf.Duration getRunningTimeout() { * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setRunningTimeout(com.google.protobuf.Duration value) { - if (runningTimeoutBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - runningTimeout_ = value; - } else { - runningTimeoutBuilder_.setMessage(value); - } - bitField0_ |= 0x00000800; - onChanged(); - return this; + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder + addPersistentDirectoriesBuilder() { + return internalGetPersistentDirectoriesFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .getDefaultInstance()); } /** * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setRunningTimeout(com.google.protobuf.Duration.Builder builderForValue) { - if (runningTimeoutBuilder_ == null) { - runningTimeout_ = builderForValue.build(); - } else { - runningTimeoutBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000800; - onChanged(); - return this; + public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder + addPersistentDirectoriesBuilder(int index) { + return internalGetPersistentDirectoriesFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory + .getDefaultInstance()); } /** * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Directories to persist across workstation sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeRunningTimeout(com.google.protobuf.Duration value) { - if (runningTimeoutBuilder_ == null) { - if (((bitField0_ & 0x00000800) != 0) - && runningTimeout_ != null - && runningTimeout_ != com.google.protobuf.Duration.getDefaultInstance()) { - getRunningTimeoutBuilder().mergeFrom(value); - } else { - runningTimeout_ = value; - } - } else { - runningTimeoutBuilder_.mergeFrom(value); + public java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder> + getPersistentDirectoriesBuilderList() { + return internalGetPersistentDirectoriesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectoryOrBuilder> + internalGetPersistentDirectoriesFieldBuilder() { + if (persistentDirectoriesBuilder_ == null) { + persistentDirectoriesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory, + com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig + .PersistentDirectoryOrBuilder>( + persistentDirectories_, + ((bitField0_ & 0x00004000) != 0), + getParentForChildren(), + isClean()); + persistentDirectories_ = null; } - if (runningTimeout_ != null) { - bitField0_ |= 0x00000800; - onChanged(); + return persistentDirectoriesBuilder_; + } + + private java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory> + ephemeralDirectories_ = java.util.Collections.emptyList(); + + private void ensureEphemeralDirectoriesIsMutable() { + if (!((bitField0_ & 0x00008000) != 0)) { + ephemeralDirectories_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory>( + ephemeralDirectories_); + bitField0_ |= 0x00008000; } - return this; } + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder> + ephemeralDirectoriesBuilder_; + /** * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearRunningTimeout() { - bitField0_ = (bitField0_ & ~0x00000800); - runningTimeout_ = null; - if (runningTimeoutBuilder_ != null) { - runningTimeoutBuilder_.dispose(); - runningTimeoutBuilder_ = null; + public java.util.List + getEphemeralDirectoriesList() { + if (ephemeralDirectoriesBuilder_ == null) { + return java.util.Collections.unmodifiableList(ephemeralDirectories_); + } else { + return ephemeralDirectoriesBuilder_.getMessageList(); } - onChanged(); - return this; } /** * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.Duration.Builder getRunningTimeoutBuilder() { - bitField0_ |= 0x00000800; - onChanged(); - return internalGetRunningTimeoutFieldBuilder().getBuilder(); + public int getEphemeralDirectoriesCount() { + if (ephemeralDirectoriesBuilder_ == null) { + return ephemeralDirectories_.size(); + } else { + return ephemeralDirectoriesBuilder_.getCount(); + } } /** * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.protobuf.DurationOrBuilder getRunningTimeoutOrBuilder() { - if (runningTimeoutBuilder_ != null) { - return runningTimeoutBuilder_.getMessageOrBuilder(); + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + getEphemeralDirectories(int index) { + if (ephemeralDirectoriesBuilder_ == null) { + return ephemeralDirectories_.get(index); } else { - return runningTimeout_ == null - ? com.google.protobuf.Duration.getDefaultInstance() - : runningTimeout_; + return ephemeralDirectoriesBuilder_.getMessage(index); } } @@ -21583,120 +34467,108 @@ public com.google.protobuf.DurationOrBuilder getRunningTimeoutOrBuilder() { * * *
            -     * Optional. Number of seconds that a workstation can run until it is
            -     * automatically shut down. We recommend that workstations be shut down daily
            -     * to reduce costs and so that security updates can be applied upon restart.
            -     * The
            -     * [idle_timeout][google.cloud.workstations.v1beta.WorkstationConfig.idle_timeout]
            -     * and
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * fields are independent of each other. Note that the
            -     * [running_timeout][google.cloud.workstations.v1beta.WorkstationConfig.running_timeout]
            -     * field shuts down VMs after the specified time, regardless of whether or not
            -     * the VMs are idle.
            -     *
            -     * Provide duration terminated by `s` for seconds—for example, `"54000s"`
            -     * (15 hours). Defaults to `"43200s"` (12 hours). A value of `"0s"` indicates
            -     * that workstations using this configuration should never time out. If
            -     * [encryption_key][google.cloud.workstations.v1beta.WorkstationConfig.encryption_key]
            -     * is set, it must be greater than `"0s"` and less than
            -     * `"86400s"` (24 hours).
            -     *
            -     * Warning: A value of `"0s"` indicates that Cloud Workstations VMs created
            -     * with this configuration have no maximum running time. This is strongly
            -     * discouraged because you incur costs and will not pick up security updates.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.protobuf.Duration running_timeout = 11 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Duration, - com.google.protobuf.Duration.Builder, - com.google.protobuf.DurationOrBuilder> - internalGetRunningTimeoutFieldBuilder() { - if (runningTimeoutBuilder_ == null) { - runningTimeoutBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.protobuf.Duration, - com.google.protobuf.Duration.Builder, - com.google.protobuf.DurationOrBuilder>( - getRunningTimeout(), getParentForChildren(), isClean()); - runningTimeout_ = null; + public Builder setEphemeralDirectories( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory value) { + if (ephemeralDirectoriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.set(index, value); + onChanged(); + } else { + ephemeralDirectoriesBuilder_.setMessage(index, value); } - return runningTimeoutBuilder_; + return this; } - private com.google.cloud.workstations.v1beta.WorkstationConfig.Host host_; - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.HostOrBuilder> - hostBuilder_; - /** * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the host field is set. */ - public boolean hasHost() { - return ((bitField0_ & 0x00001000) != 0); + public Builder setEphemeralDirectories( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder + builderForValue) { + if (ephemeralDirectoriesBuilder_ == null) { + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.set(index, builderForValue.build()); + onChanged(); + } else { + ephemeralDirectoriesBuilder_.setMessage(index, builderForValue.build()); + } + return this; } /** * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The host. */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host getHost() { - if (hostBuilder_ == null) { - return host_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.getDefaultInstance() - : host_; + public Builder addEphemeralDirectories( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory value) { + if (ephemeralDirectoriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.add(value); + onChanged(); } else { - return hostBuilder_.getMessage(); + ephemeralDirectoriesBuilder_.addMessage(value); } + return this; } /** * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setHost(com.google.cloud.workstations.v1beta.WorkstationConfig.Host value) { - if (hostBuilder_ == null) { + public Builder addEphemeralDirectories( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory value) { + if (ephemeralDirectoriesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - host_ = value; + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.add(index, value); + onChanged(); } else { - hostBuilder_.setMessage(value); + ephemeralDirectoriesBuilder_.addMessage(index, value); } - bitField0_ |= 0x00001000; - onChanged(); return this; } @@ -21704,22 +34576,24 @@ public Builder setHost(com.google.cloud.workstations.v1beta.WorkstationConfig.Ho * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setHost( - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.Builder builderForValue) { - if (hostBuilder_ == null) { - host_ = builderForValue.build(); + public Builder addEphemeralDirectories( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder + builderForValue) { + if (ephemeralDirectoriesBuilder_ == null) { + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.add(builderForValue.build()); + onChanged(); } else { - hostBuilder_.setMessage(builderForValue.build()); + ephemeralDirectoriesBuilder_.addMessage(builderForValue.build()); } - bitField0_ |= 0x00001000; - onChanged(); return this; } @@ -21727,30 +34601,50 @@ public Builder setHost( * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeHost(com.google.cloud.workstations.v1beta.WorkstationConfig.Host value) { - if (hostBuilder_ == null) { - if (((bitField0_ & 0x00001000) != 0) - && host_ != null - && host_ - != com.google.cloud.workstations.v1beta.WorkstationConfig.Host - .getDefaultInstance()) { - getHostBuilder().mergeFrom(value); - } else { - host_ = value; - } + public Builder addEphemeralDirectories( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder + builderForValue) { + if (ephemeralDirectoriesBuilder_ == null) { + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.add(index, builderForValue.build()); + onChanged(); } else { - hostBuilder_.mergeFrom(value); + ephemeralDirectoriesBuilder_.addMessage(index, builderForValue.build()); } - if (host_ != null) { - bitField0_ |= 0x00001000; + return this; + } + + /** + * + * + *
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
            +     * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllEphemeralDirectories( + java.lang.Iterable< + ? extends com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory> + values) { + if (ephemeralDirectoriesBuilder_ == null) { + ensureEphemeralDirectoriesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, ephemeralDirectories_); onChanged(); + } else { + ephemeralDirectoriesBuilder_.addAllMessages(values); } return this; } @@ -21759,21 +34653,22 @@ public Builder mergeHost(com.google.cloud.workstations.v1beta.WorkstationConfig. * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearHost() { - bitField0_ = (bitField0_ & ~0x00001000); - host_ = null; - if (hostBuilder_ != null) { - hostBuilder_.dispose(); - hostBuilder_ = null; + public Builder clearEphemeralDirectories() { + if (ephemeralDirectoriesBuilder_ == null) { + ephemeralDirectories_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00008000); + onChanged(); + } else { + ephemeralDirectoriesBuilder_.clear(); } - onChanged(); return this; } @@ -21781,106 +34676,83 @@ public Builder clearHost() { * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Host.Builder getHostBuilder() { - bitField0_ |= 0x00001000; - onChanged(); - return internalGetHostFieldBuilder().getBuilder(); + public Builder removeEphemeralDirectories(int index) { + if (ephemeralDirectoriesBuilder_ == null) { + ensureEphemeralDirectoriesIsMutable(); + ephemeralDirectories_.remove(index); + onChanged(); + } else { + ephemeralDirectoriesBuilder_.remove(index); + } + return this; } /** * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.HostOrBuilder getHostOrBuilder() { - if (hostBuilder_ != null) { - return hostBuilder_.getMessageOrBuilder(); - } else { - return host_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Host.getDefaultInstance() - : host_; - } + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder + getEphemeralDirectoriesBuilder(int index) { + return internalGetEphemeralDirectoriesFieldBuilder().getBuilder(index); } /** * * *
            -     * Optional. Runtime host for the workstation.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Host host = 12 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.HostOrBuilder> - internalGetHostFieldBuilder() { - if (hostBuilder_ == null) { - hostBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Host, - com.google.cloud.workstations.v1beta.WorkstationConfig.Host.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.HostOrBuilder>( - getHost(), getParentForChildren(), isClean()); - host_ = null; - } - return hostBuilder_; - } - - private java.util.List< - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory> - persistentDirectories_ = java.util.Collections.emptyList(); - - private void ensurePersistentDirectoriesIsMutable() { - if (!((bitField0_ & 0x00002000) != 0)) { - persistentDirectories_ = - new java.util.ArrayList< - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory>( - persistentDirectories_); - bitField0_ |= 0x00002000; + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder + getEphemeralDirectoriesOrBuilder(int index) { + if (ephemeralDirectoriesBuilder_ == null) { + return ephemeralDirectories_.get(index); + } else { + return ephemeralDirectoriesBuilder_.getMessageOrBuilder(index); } } - private com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectoryOrBuilder> - persistentDirectoriesBuilder_; - /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ public java.util.List< - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory> - getPersistentDirectoriesList() { - if (persistentDirectoriesBuilder_ == null) { - return java.util.Collections.unmodifiableList(persistentDirectories_); + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder> + getEphemeralDirectoriesOrBuilderList() { + if (ephemeralDirectoriesBuilder_ != null) { + return ephemeralDirectoriesBuilder_.getMessageOrBuilderList(); } else { - return persistentDirectoriesBuilder_.getMessageList(); + return java.util.Collections.unmodifiableList(ephemeralDirectories_); } } @@ -21888,143 +34760,154 @@ private void ensurePersistentDirectoriesIsMutable() { * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public int getPersistentDirectoriesCount() { - if (persistentDirectoriesBuilder_ == null) { - return persistentDirectories_.size(); - } else { - return persistentDirectoriesBuilder_.getCount(); - } + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder + addEphemeralDirectoriesBuilder() { + return internalGetEphemeralDirectoriesFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .getDefaultInstance()); } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - getPersistentDirectories(int index) { - if (persistentDirectoriesBuilder_ == null) { - return persistentDirectories_.get(index); - } else { - return persistentDirectoriesBuilder_.getMessage(index); - } + public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder + addEphemeralDirectoriesBuilder(int index) { + return internalGetEphemeralDirectoriesFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory + .getDefaultInstance()); } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Ephemeral directories which won't persist across workstation
            +     * sessions.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setPersistentDirectories( - int index, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory value) { - if (persistentDirectoriesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.set(index, value); - onChanged(); - } else { - persistentDirectoriesBuilder_.setMessage(index, value); + public java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder> + getEphemeralDirectoriesBuilderList() { + return internalGetEphemeralDirectoriesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder> + internalGetEphemeralDirectoriesFieldBuilder() { + if (ephemeralDirectoriesBuilder_ == null) { + ephemeralDirectoriesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder>( + ephemeralDirectories_, + ((bitField0_ & 0x00008000) != 0), + getParentForChildren(), + isClean()); + ephemeralDirectories_ = null; } - return this; + return ephemeralDirectoriesBuilder_; } + private com.google.cloud.workstations.v1beta.WorkstationConfig.Container container_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Container, + com.google.cloud.workstations.v1beta.WorkstationConfig.Container.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.ContainerOrBuilder> + containerBuilder_; + /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return Whether the container field is set. */ - public Builder setPersistentDirectories( - int index, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder - builderForValue) { - if (persistentDirectoriesBuilder_ == null) { - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.set(index, builderForValue.build()); - onChanged(); - } else { - persistentDirectoriesBuilder_.setMessage(index, builderForValue.build()); - } - return this; + public boolean hasContainer() { + return ((bitField0_ & 0x00010000) != 0); } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The container. */ - public Builder addPersistentDirectories( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory value) { - if (persistentDirectoriesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.add(value); - onChanged(); + public com.google.cloud.workstations.v1beta.WorkstationConfig.Container getContainer() { + if (containerBuilder_ == null) { + return container_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Container.getDefaultInstance() + : container_; } else { - persistentDirectoriesBuilder_.addMessage(value); + return containerBuilder_.getMessage(); } - return this; } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addPersistentDirectories( - int index, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory value) { - if (persistentDirectoriesBuilder_ == null) { + public Builder setContainer( + com.google.cloud.workstations.v1beta.WorkstationConfig.Container value) { + if (containerBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.add(index, value); - onChanged(); + container_ = value; } else { - persistentDirectoriesBuilder_.addMessage(index, value); + containerBuilder_.setMessage(value); } + bitField0_ |= 0x00010000; + onChanged(); return this; } @@ -22032,23 +34915,23 @@ public Builder addPersistentDirectories( * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addPersistentDirectories( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder - builderForValue) { - if (persistentDirectoriesBuilder_ == null) { - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.add(builderForValue.build()); - onChanged(); + public Builder setContainer( + com.google.cloud.workstations.v1beta.WorkstationConfig.Container.Builder builderForValue) { + if (containerBuilder_ == null) { + container_ = builderForValue.build(); } else { - persistentDirectoriesBuilder_.addMessage(builderForValue.build()); + containerBuilder_.setMessage(builderForValue.build()); } + bitField0_ |= 0x00010000; + onChanged(); return this; } @@ -22056,23 +34939,32 @@ public Builder addPersistentDirectories( * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addPersistentDirectories( - int index, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder - builderForValue) { - if (persistentDirectoriesBuilder_ == null) { - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.add(index, builderForValue.build()); - onChanged(); + public Builder mergeContainer( + com.google.cloud.workstations.v1beta.WorkstationConfig.Container value) { + if (containerBuilder_ == null) { + if (((bitField0_ & 0x00010000) != 0) + && container_ != null + && container_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.Container + .getDefaultInstance()) { + getContainerBuilder().mergeFrom(value); + } else { + container_ = value; + } } else { - persistentDirectoriesBuilder_.addMessage(index, builderForValue.build()); + containerBuilder_.mergeFrom(value); + } + if (container_ != null) { + bitField0_ |= 0x00010000; + onChanged(); } return this; } @@ -22081,25 +34973,22 @@ public Builder addPersistentDirectories( * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addAllPersistentDirectories( - java.lang.Iterable< - ? extends - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory> - values) { - if (persistentDirectoriesBuilder_ == null) { - ensurePersistentDirectoriesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, persistentDirectories_); - onChanged(); - } else { - persistentDirectoriesBuilder_.addAllMessages(values); + public Builder clearContainer() { + bitField0_ = (bitField0_ & ~0x00010000); + container_ = null; + if (containerBuilder_ != null) { + containerBuilder_.dispose(); + containerBuilder_ = null; } + onChanged(); return this; } @@ -22107,101 +34996,154 @@ public Builder addAllPersistentDirectories( * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearPersistentDirectories() { - if (persistentDirectoriesBuilder_ == null) { - persistentDirectories_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00002000); - onChanged(); - } else { - persistentDirectoriesBuilder_.clear(); - } - return this; + public com.google.cloud.workstations.v1beta.WorkstationConfig.Container.Builder + getContainerBuilder() { + bitField0_ |= 0x00010000; + onChanged(); + return internalGetContainerFieldBuilder().getBuilder(); } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder removePersistentDirectories(int index) { - if (persistentDirectoriesBuilder_ == null) { - ensurePersistentDirectoriesIsMutable(); - persistentDirectories_.remove(index); - onChanged(); + public com.google.cloud.workstations.v1beta.WorkstationConfig.ContainerOrBuilder + getContainerOrBuilder() { + if (containerBuilder_ != null) { + return containerBuilder_.getMessageOrBuilder(); } else { - persistentDirectoriesBuilder_.remove(index); + return container_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.Container.getDefaultInstance() + : container_; } - return this; } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Optional. Container that runs upon startup for each workstation using this
            +     * workstation configuration.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder - getPersistentDirectoriesBuilder(int index) { - return internalGetPersistentDirectoriesFieldBuilder().getBuilder(index); + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Container, + com.google.cloud.workstations.v1beta.WorkstationConfig.Container.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.ContainerOrBuilder> + internalGetContainerFieldBuilder() { + if (containerBuilder_ == null) { + containerBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.Container, + com.google.cloud.workstations.v1beta.WorkstationConfig.Container.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.ContainerOrBuilder>( + getContainer(), getParentForChildren(), isClean()); + container_ = null; + } + return containerBuilder_; } + private com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + encryptionKey_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey, + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKeyOrBuilder> + encryptionKeyBuilder_; + /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * + * + * @return Whether the encryptionKey field is set. */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectoryOrBuilder - getPersistentDirectoriesOrBuilder(int index) { - if (persistentDirectoriesBuilder_ == null) { - return persistentDirectories_.get(index); - } else { - return persistentDirectoriesBuilder_.getMessageOrBuilder(index); - } + public boolean hasEncryptionKey() { + return ((bitField0_ & 0x00020000) != 0); } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * + * + * @return The encryptionKey. */ - public java.util.List< - ? extends - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectoryOrBuilder> - getPersistentDirectoriesOrBuilderList() { - if (persistentDirectoriesBuilder_ != null) { - return persistentDirectoriesBuilder_.getMessageOrBuilderList(); + public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + getEncryptionKey() { + if (encryptionKeyBuilder_ == null) { + return encryptionKey_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + .getDefaultInstance() + : encryptionKey_; } else { - return java.util.Collections.unmodifiableList(persistentDirectories_); + return encryptionKeyBuilder_.getMessage(); } } @@ -22209,158 +35151,247 @@ public Builder removePersistentDirectories(int index) { * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder - addPersistentDirectoriesBuilder() { - return internalGetPersistentDirectoriesFieldBuilder() - .addBuilder( - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .getDefaultInstance()); + public Builder setEncryptionKey( + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey value) { + if (encryptionKeyBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + encryptionKey_ = value; + } else { + encryptionKeyBuilder_.setMessage(value); + } + bitField0_ |= 0x00020000; + onChanged(); + return this; } /** * * - *
            -     * Optional. Directories to persist across workstation sessions.
            +     * 
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder - addPersistentDirectoriesBuilder(int index) { - return internalGetPersistentDirectoriesFieldBuilder() - .addBuilder( - index, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory - .getDefaultInstance()); + public Builder setEncryptionKey( + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.Builder + builderForValue) { + if (encryptionKeyBuilder_ == null) { + encryptionKey_ = builderForValue.build(); + } else { + encryptionKeyBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00020000; + onChanged(); + return this; } /** * * *
            -     * Optional. Directories to persist across workstation sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory persistent_directories = 13 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * */ - public java.util.List< - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder> - getPersistentDirectoriesBuilderList() { - return internalGetPersistentDirectoriesFieldBuilder().getBuilderList(); - } - - private com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectoryOrBuilder> - internalGetPersistentDirectoriesFieldBuilder() { - if (persistentDirectoriesBuilder_ == null) { - persistentDirectoriesBuilder_ = - new com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory, - com.google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig - .PersistentDirectoryOrBuilder>( - persistentDirectories_, - ((bitField0_ & 0x00002000) != 0), - getParentForChildren(), - isClean()); - persistentDirectories_ = null; + public Builder mergeEncryptionKey( + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey value) { + if (encryptionKeyBuilder_ == null) { + if (((bitField0_ & 0x00020000) != 0) + && encryptionKey_ != null + && encryptionKey_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + .getDefaultInstance()) { + getEncryptionKeyBuilder().mergeFrom(value); + } else { + encryptionKey_ = value; + } + } else { + encryptionKeyBuilder_.mergeFrom(value); } - return persistentDirectoriesBuilder_; - } - - private java.util.List< - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory> - ephemeralDirectories_ = java.util.Collections.emptyList(); - - private void ensureEphemeralDirectoriesIsMutable() { - if (!((bitField0_ & 0x00004000) != 0)) { - ephemeralDirectories_ = - new java.util.ArrayList< - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory>( - ephemeralDirectories_); - bitField0_ |= 0x00004000; + if (encryptionKey_ != null) { + bitField0_ |= 0x00020000; + onChanged(); } + return this; } - private com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder> - ephemeralDirectoriesBuilder_; - /** * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * */ - public java.util.List - getEphemeralDirectoriesList() { - if (ephemeralDirectoriesBuilder_ == null) { - return java.util.Collections.unmodifiableList(ephemeralDirectories_); - } else { - return ephemeralDirectoriesBuilder_.getMessageList(); + public Builder clearEncryptionKey() { + bitField0_ = (bitField0_ & ~0x00020000); + encryptionKey_ = null; + if (encryptionKeyBuilder_ != null) { + encryptionKeyBuilder_.dispose(); + encryptionKeyBuilder_ = null; } + onChanged(); + return this; } /** * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * */ - public int getEphemeralDirectoriesCount() { - if (ephemeralDirectoriesBuilder_ == null) { - return ephemeralDirectories_.size(); - } else { - return ephemeralDirectoriesBuilder_.getCount(); - } + public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.Builder + getEncryptionKeyBuilder() { + bitField0_ |= 0x00020000; + onChanged(); + return internalGetEncryptionKeyFieldBuilder().getBuilder(); } /** * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - getEphemeralDirectories(int index) { - if (ephemeralDirectoriesBuilder_ == null) { - return ephemeralDirectories_.get(index); + public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKeyOrBuilder + getEncryptionKeyOrBuilder() { + if (encryptionKeyBuilder_ != null) { + return encryptionKeyBuilder_.getMessageOrBuilder(); } else { - return ephemeralDirectoriesBuilder_.getMessage(index); + return encryptionKey_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + .getDefaultInstance() + : encryptionKey_; } } @@ -22368,132 +35399,157 @@ public int getEphemeralDirectoriesCount() { * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Immutable. Encrypts resources of this workstation configuration using a
            +     * customer-managed encryption key (CMEK).
            +     *
            +     * If specified, the boot disk of the Compute Engine instance and the
            +     * persistent disk are encrypted using this encryption key. If
            +     * this field is not set, the disks are encrypted using a generated
            +     * key. Customer-managed encryption keys do not protect disk metadata.
            +     *
            +     * If the customer-managed encryption key is rotated, when the workstation
            +     * instance is stopped, the system attempts to recreate the
            +     * persistent disk with the new version of the key. Be sure to keep
            +     * older versions of the key until the persistent disk is recreated.
            +     * Otherwise, data on the persistent disk might be lost.
            +     *
            +     * If the encryption key is revoked, the workstation session automatically
            +     * stops within 7 hours.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; * */ - public Builder setEphemeralDirectories( - int index, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory value) { - if (ephemeralDirectoriesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureEphemeralDirectoriesIsMutable(); - ephemeralDirectories_.set(index, value); - onChanged(); - } else { - ephemeralDirectoriesBuilder_.setMessage(index, value); + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey, + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKeyOrBuilder> + internalGetEncryptionKeyFieldBuilder() { + if (encryptionKeyBuilder_ == null) { + encryptionKeyBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey, + com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey + .Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig + .CustomerEncryptionKeyOrBuilder>( + getEncryptionKey(), getParentForChildren(), isClean()); + encryptionKey_ = null; + } + return encryptionKeyBuilder_; + } + + private java.util.List + readinessChecks_ = java.util.Collections.emptyList(); + + private void ensureReadinessChecksIsMutable() { + if (!((bitField0_ & 0x00040000) != 0)) { + readinessChecks_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck>( + readinessChecks_); + bitField0_ |= 0x00040000; } - return this; } + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck, + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder> + readinessChecksBuilder_; + /** * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setEphemeralDirectories( - int index, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder - builderForValue) { - if (ephemeralDirectoriesBuilder_ == null) { - ensureEphemeralDirectoriesIsMutable(); - ephemeralDirectories_.set(index, builderForValue.build()); - onChanged(); + public java.util.List + getReadinessChecksList() { + if (readinessChecksBuilder_ == null) { + return java.util.Collections.unmodifiableList(readinessChecks_); } else { - ephemeralDirectoriesBuilder_.setMessage(index, builderForValue.build()); + return readinessChecksBuilder_.getMessageList(); } - return this; } /** * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addEphemeralDirectories( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory value) { - if (ephemeralDirectoriesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureEphemeralDirectoriesIsMutable(); - ephemeralDirectories_.add(value); - onChanged(); + public int getReadinessChecksCount() { + if (readinessChecksBuilder_ == null) { + return readinessChecks_.size(); } else { - ephemeralDirectoriesBuilder_.addMessage(value); + return readinessChecksBuilder_.getCount(); } - return this; } /** * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addEphemeralDirectories( - int index, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory value) { - if (ephemeralDirectoriesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureEphemeralDirectoriesIsMutable(); - ephemeralDirectories_.add(index, value); - onChanged(); + public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck getReadinessChecks( + int index) { + if (readinessChecksBuilder_ == null) { + return readinessChecks_.get(index); } else { - ephemeralDirectoriesBuilder_.addMessage(index, value); + return readinessChecksBuilder_.getMessage(index); } - return this; } /** * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addEphemeralDirectories( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder - builderForValue) { - if (ephemeralDirectoriesBuilder_ == null) { - ensureEphemeralDirectoriesIsMutable(); - ephemeralDirectories_.add(builderForValue.build()); + public Builder setReadinessChecks( + int index, com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck value) { + if (readinessChecksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureReadinessChecksIsMutable(); + readinessChecks_.set(index, value); onChanged(); } else { - ephemeralDirectoriesBuilder_.addMessage(builderForValue.build()); + readinessChecksBuilder_.setMessage(index, value); } return this; } @@ -22502,24 +35558,25 @@ public Builder addEphemeralDirectories( * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addEphemeralDirectories( + public Builder setReadinessChecks( int index, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder builderForValue) { - if (ephemeralDirectoriesBuilder_ == null) { - ensureEphemeralDirectoriesIsMutable(); - ephemeralDirectories_.add(index, builderForValue.build()); + if (readinessChecksBuilder_ == null) { + ensureReadinessChecksIsMutable(); + readinessChecks_.set(index, builderForValue.build()); onChanged(); } else { - ephemeralDirectoriesBuilder_.addMessage(index, builderForValue.build()); + readinessChecksBuilder_.setMessage(index, builderForValue.build()); } return this; } @@ -22528,24 +35585,26 @@ public Builder addEphemeralDirectories( * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addAllEphemeralDirectories( - java.lang.Iterable< - ? extends com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory> - values) { - if (ephemeralDirectoriesBuilder_ == null) { - ensureEphemeralDirectoriesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, ephemeralDirectories_); + public Builder addReadinessChecks( + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck value) { + if (readinessChecksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureReadinessChecksIsMutable(); + readinessChecks_.add(value); onChanged(); } else { - ephemeralDirectoriesBuilder_.addAllMessages(values); + readinessChecksBuilder_.addMessage(value); } return this; } @@ -22554,21 +35613,26 @@ public Builder addAllEphemeralDirectories( * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearEphemeralDirectories() { - if (ephemeralDirectoriesBuilder_ == null) { - ephemeralDirectories_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00004000); + public Builder addReadinessChecks( + int index, com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck value) { + if (readinessChecksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureReadinessChecksIsMutable(); + readinessChecks_.add(index, value); onChanged(); } else { - ephemeralDirectoriesBuilder_.clear(); + readinessChecksBuilder_.addMessage(index, value); } return this; } @@ -22577,21 +35641,24 @@ public Builder clearEphemeralDirectories() { * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder removeEphemeralDirectories(int index) { - if (ephemeralDirectoriesBuilder_ == null) { - ensureEphemeralDirectoriesIsMutable(); - ephemeralDirectories_.remove(index); + public Builder addReadinessChecks( + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder + builderForValue) { + if (readinessChecksBuilder_ == null) { + ensureReadinessChecksIsMutable(); + readinessChecks_.add(builderForValue.build()); onChanged(); } else { - ephemeralDirectoriesBuilder_.remove(index); + readinessChecksBuilder_.addMessage(builderForValue.build()); } return this; } @@ -22600,188 +35667,165 @@ public Builder removeEphemeralDirectories(int index) { * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            -     * 
            - * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder - getEphemeralDirectoriesBuilder(int index) { - return internalGetEphemeralDirectoriesFieldBuilder().getBuilder(index); - } - - /** - * - * - *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder - getEphemeralDirectoriesOrBuilder(int index) { - if (ephemeralDirectoriesBuilder_ == null) { - return ephemeralDirectories_.get(index); + public Builder addReadinessChecks( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder + builderForValue) { + if (readinessChecksBuilder_ == null) { + ensureReadinessChecksIsMutable(); + readinessChecks_.add(index, builderForValue.build()); + onChanged(); } else { - return ephemeralDirectoriesBuilder_.getMessageOrBuilder(index); + readinessChecksBuilder_.addMessage(index, builderForValue.build()); } + return this; } /** * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public java.util.List< - ? extends - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder> - getEphemeralDirectoriesOrBuilderList() { - if (ephemeralDirectoriesBuilder_ != null) { - return ephemeralDirectoriesBuilder_.getMessageOrBuilderList(); + public Builder addAllReadinessChecks( + java.lang.Iterable< + ? extends com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck> + values) { + if (readinessChecksBuilder_ == null) { + ensureReadinessChecksIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, readinessChecks_); + onChanged(); } else { - return java.util.Collections.unmodifiableList(ephemeralDirectories_); + readinessChecksBuilder_.addAllMessages(values); } + return this; } /** * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder - addEphemeralDirectoriesBuilder() { - return internalGetEphemeralDirectoriesFieldBuilder() - .addBuilder( - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .getDefaultInstance()); + public Builder clearReadinessChecks() { + if (readinessChecksBuilder_ == null) { + readinessChecks_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00040000); + onChanged(); + } else { + readinessChecksBuilder_.clear(); + } + return this; } /** * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder - addEphemeralDirectoriesBuilder(int index) { - return internalGetEphemeralDirectoriesFieldBuilder() - .addBuilder( - index, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory - .getDefaultInstance()); + public Builder removeReadinessChecks(int index) { + if (readinessChecksBuilder_ == null) { + ensureReadinessChecksIsMutable(); + readinessChecks_.remove(index); + onChanged(); + } else { + readinessChecksBuilder_.remove(index); + } + return this; } /** * * *
            -     * Optional. Ephemeral directories which won't persist across workstation
            -     * sessions.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory ephemeral_directories = 22 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public java.util.List< - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder> - getEphemeralDirectoriesBuilderList() { - return internalGetEphemeralDirectoriesFieldBuilder().getBuilderList(); - } - - private com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder> - internalGetEphemeralDirectoriesFieldBuilder() { - if (ephemeralDirectoriesBuilder_ == null) { - ephemeralDirectoriesBuilder_ = - new com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectoryOrBuilder>( - ephemeralDirectories_, - ((bitField0_ & 0x00004000) != 0), - getParentForChildren(), - isClean()); - ephemeralDirectories_ = null; - } - return ephemeralDirectoriesBuilder_; + public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder + getReadinessChecksBuilder(int index) { + return internalGetReadinessChecksFieldBuilder().getBuilder(index); } - private com.google.cloud.workstations.v1beta.WorkstationConfig.Container container_; - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Container, - com.google.cloud.workstations.v1beta.WorkstationConfig.Container.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.ContainerOrBuilder> - containerBuilder_; - /** * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return Whether the container field is set. */ - public boolean hasContainer() { - return ((bitField0_ & 0x00008000) != 0); + public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder + getReadinessChecksOrBuilder(int index) { + if (readinessChecksBuilder_ == null) { + return readinessChecks_.get(index); + } else { + return readinessChecksBuilder_.getMessageOrBuilder(index); + } } /** * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return The container. */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Container getContainer() { - if (containerBuilder_ == null) { - return container_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Container.getDefaultInstance() - : container_; + public java.util.List< + ? extends + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder> + getReadinessChecksOrBuilderList() { + if (readinessChecksBuilder_ != null) { + return readinessChecksBuilder_.getMessageOrBuilderList(); } else { - return containerBuilder_.getMessage(); + return java.util.Collections.unmodifiableList(readinessChecks_); } } @@ -22789,304 +35833,276 @@ public com.google.cloud.workstations.v1beta.WorkstationConfig.Container getConta * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setContainer( - com.google.cloud.workstations.v1beta.WorkstationConfig.Container value) { - if (containerBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - container_ = value; - } else { - containerBuilder_.setMessage(value); - } - bitField0_ |= 0x00008000; - onChanged(); - return this; + public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder + addReadinessChecksBuilder() { + return internalGetReadinessChecksFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + .getDefaultInstance()); } /** * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setContainer( - com.google.cloud.workstations.v1beta.WorkstationConfig.Container.Builder builderForValue) { - if (containerBuilder_ == null) { - container_ = builderForValue.build(); - } else { - containerBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00008000; - onChanged(); - return this; + public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder + addReadinessChecksBuilder(int index) { + return internalGetReadinessChecksFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck + .getDefaultInstance()); } /** * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Readiness checks to perform when starting a workstation using
            +     * this workstation configuration. Mark a workstation as running only after
            +     * all specified readiness checks return 200 status codes.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeContainer( - com.google.cloud.workstations.v1beta.WorkstationConfig.Container value) { - if (containerBuilder_ == null) { - if (((bitField0_ & 0x00008000) != 0) - && container_ != null - && container_ - != com.google.cloud.workstations.v1beta.WorkstationConfig.Container - .getDefaultInstance()) { - getContainerBuilder().mergeFrom(value); - } else { - container_ = value; - } - } else { - containerBuilder_.mergeFrom(value); + public java.util.List< + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder> + getReadinessChecksBuilderList() { + return internalGetReadinessChecksFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck, + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder> + internalGetReadinessChecksFieldBuilder() { + if (readinessChecksBuilder_ == null) { + readinessChecksBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck, + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder>( + readinessChecks_, + ((bitField0_ & 0x00040000) != 0), + getParentForChildren(), + isClean()); + readinessChecks_ = null; } - if (container_ != null) { - bitField0_ |= 0x00008000; - onChanged(); + return readinessChecksBuilder_; + } + + private com.google.protobuf.LazyStringArrayList replicaZones_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureReplicaZonesIsMutable() { + if (!replicaZones_.isModifiable()) { + replicaZones_ = new com.google.protobuf.LazyStringArrayList(replicaZones_); } - return this; + bitField0_ |= 0x00080000; } /** * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @return A list containing the replicaZones. */ - public Builder clearContainer() { - bitField0_ = (bitField0_ & ~0x00008000); - container_ = null; - if (containerBuilder_ != null) { - containerBuilder_.dispose(); - containerBuilder_ = null; - } - onChanged(); - return this; + public com.google.protobuf.ProtocolStringList getReplicaZonesList() { + replicaZones_.makeImmutable(); + return replicaZones_; } /** * * - *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * 
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @return The count of replicaZones. */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.Container.Builder - getContainerBuilder() { - bitField0_ |= 0x00008000; - onChanged(); - return internalGetContainerFieldBuilder().getBuilder(); + public int getReplicaZonesCount() { + return replicaZones_.size(); } /** * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @param index The index of the element to return. + * @return The replicaZones at the given index. */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.ContainerOrBuilder - getContainerOrBuilder() { - if (containerBuilder_ != null) { - return containerBuilder_.getMessageOrBuilder(); - } else { - return container_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.Container.getDefaultInstance() - : container_; - } + public java.lang.String getReplicaZones(int index) { + return replicaZones_.get(index); } /** * * *
            -     * Optional. Container that runs upon startup for each workstation using this
            -     * workstation configuration.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
            +     *
            +     * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.Container container = 14 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @param index The index of the value to return. + * @return The bytes of the replicaZones at the given index. */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Container, - com.google.cloud.workstations.v1beta.WorkstationConfig.Container.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.ContainerOrBuilder> - internalGetContainerFieldBuilder() { - if (containerBuilder_ == null) { - containerBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.Container, - com.google.cloud.workstations.v1beta.WorkstationConfig.Container.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.ContainerOrBuilder>( - getContainer(), getParentForChildren(), isClean()); - container_ = null; - } - return containerBuilder_; + public com.google.protobuf.ByteString getReplicaZonesBytes(int index) { + return replicaZones_.getByteString(index); } - private com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - encryptionKey_; - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey, - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKeyOrBuilder> - encryptionKeyBuilder_; - /** * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
                  *
                  * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * * - * @return Whether the encryptionKey field is set. + * @param index The index to set the value at. + * @param value The replicaZones to set. + * @return This builder for chaining. */ - public boolean hasEncryptionKey() { - return ((bitField0_ & 0x00010000) != 0); + public Builder setReplicaZones(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureReplicaZonesIsMutable(); + replicaZones_.set(index, value); + bitField0_ |= 0x00080000; + onChanged(); + return this; } /** * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
                  *
                  * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * * - * @return The encryptionKey. + * @param value The replicaZones to add. + * @return This builder for chaining. */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - getEncryptionKey() { - if (encryptionKeyBuilder_ == null) { - return encryptionKey_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - .getDefaultInstance() - : encryptionKey_; - } else { - return encryptionKeyBuilder_.getMessage(); + public Builder addReplicaZones(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } + ensureReplicaZonesIsMutable(); + replicaZones_.add(value); + bitField0_ |= 0x00080000; + onChanged(); + return this; } /** * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
                  *
                  * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @param values The replicaZones to add. + * @return This builder for chaining. */ - public Builder setEncryptionKey( - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey value) { - if (encryptionKeyBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - encryptionKey_ = value; - } else { - encryptionKeyBuilder_.setMessage(value); - } - bitField0_ |= 0x00010000; + public Builder addAllReplicaZones(java.lang.Iterable values) { + ensureReplicaZonesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, replicaZones_); + bitField0_ |= 0x00080000; onChanged(); return this; } @@ -23095,39 +36111,25 @@ public Builder setEncryptionKey( * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
                  *
                  * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @return This builder for chaining. */ - public Builder setEncryptionKey( - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.Builder - builderForValue) { - if (encryptionKeyBuilder_ == null) { - encryptionKey_ = builderForValue.build(); - } else { - encryptionKeyBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00010000; + public Builder clearReplicaZones() { + replicaZones_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00080000); + ; onChanged(); return this; } @@ -23135,88 +36137,75 @@ public Builder setEncryptionKey( /** * * - *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            +     * 
            +     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            +     * resources within the region. If set, exactly two zones within the
            +     * workstation cluster's region must be specified—for example,
            +     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            +     * zones within the region are used.
                  *
                  * Immutable after the workstation configuration is created.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; * + * + * @param value The bytes of the replicaZones to add. + * @return This builder for chaining. */ - public Builder mergeEncryptionKey( - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey value) { - if (encryptionKeyBuilder_ == null) { - if (((bitField0_ & 0x00010000) != 0) - && encryptionKey_ != null - && encryptionKey_ - != com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - .getDefaultInstance()) { - getEncryptionKeyBuilder().mergeFrom(value); - } else { - encryptionKey_ = value; - } - } else { - encryptionKeyBuilder_.mergeFrom(value); - } - if (encryptionKey_ != null) { - bitField0_ |= 0x00010000; - onChanged(); + public Builder addReplicaZonesBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureReplicaZonesIsMutable(); + replicaZones_.add(value); + bitField0_ |= 0x00080000; + onChanged(); return this; } + private boolean degraded_; + /** * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            +     * Output only. Whether this workstation configuration is in degraded mode, in
            +     * which case it may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1beta.WorkstationConfig.conditions]
            +     * field contains detailed information about the status of the configuration.
            +     * 
            * - * If specified, the boot disk of the Compute Engine instance and the - * persistent disk are encrypted using this encryption key. If - * this field is not set, the disks are encrypted using a generated - * key. Customer-managed encryption keys do not protect disk metadata. + * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * If the customer-managed encryption key is rotated, when the workstation - * instance is stopped, the system attempts to recreate the - * persistent disk with the new version of the key. Be sure to keep - * older versions of the key until the persistent disk is recreated. - * Otherwise, data on the persistent disk might be lost. + * @return The degraded. + */ + @java.lang.Override + public boolean getDegraded() { + return degraded_; + } + + /** * - * If the encryption key is revoked, the workstation session automatically - * stops within 7 hours. * - * Immutable after the workstation configuration is created. + *
            +     * Output only. Whether this workstation configuration is in degraded mode, in
            +     * which case it may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1beta.WorkstationConfig.conditions]
            +     * field contains detailed information about the status of the configuration.
                  * 
            * - * - * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; - * + * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The degraded to set. + * @return This builder for chaining. */ - public Builder clearEncryptionKey() { - bitField0_ = (bitField0_ & ~0x00010000); - encryptionKey_ = null; - if (encryptionKeyBuilder_ != null) { - encryptionKeyBuilder_.dispose(); - encryptionKeyBuilder_ = null; - } + public Builder setDegraded(boolean value) { + + degraded_ = value; + bitField0_ |= 0x00100000; onChanged(); return this; } @@ -23225,74 +36214,73 @@ public Builder clearEncryptionKey() { * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            +     * Output only. Whether this workstation configuration is in degraded mode, in
            +     * which case it may require user action to restore full functionality. The
            +     * [conditions][google.cloud.workstations.v1beta.WorkstationConfig.conditions]
            +     * field contains detailed information about the status of the configuration.
            +     * 
            * - * If specified, the boot disk of the Compute Engine instance and the - * persistent disk are encrypted using this encryption key. If - * this field is not set, the disks are encrypted using a generated - * key. Customer-managed encryption keys do not protect disk metadata. + * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * If the customer-managed encryption key is rotated, when the workstation - * instance is stopped, the system attempts to recreate the - * persistent disk with the new version of the key. Be sure to keep - * older versions of the key until the persistent disk is recreated. - * Otherwise, data on the persistent disk might be lost. + * @return This builder for chaining. + */ + public Builder clearDegraded() { + bitField0_ = (bitField0_ & ~0x00100000); + degraded_ = false; + onChanged(); + return this; + } + + private java.util.List conditions_ = java.util.Collections.emptyList(); + + private void ensureConditionsIsMutable() { + if (!((bitField0_ & 0x00200000) != 0)) { + conditions_ = new java.util.ArrayList(conditions_); + bitField0_ |= 0x00200000; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> + conditionsBuilder_; + + /** * - * If the encryption key is revoked, the workstation session automatically - * stops within 7 hours. * - * Immutable after the workstation configuration is created. + *
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.Builder - getEncryptionKeyBuilder() { - bitField0_ |= 0x00010000; - onChanged(); - return internalGetEncryptionKeyFieldBuilder().getBuilder(); + public java.util.List getConditionsList() { + if (conditionsBuilder_ == null) { + return java.util.Collections.unmodifiableList(conditions_); + } else { + return conditionsBuilder_.getMessageList(); + } } /** * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKeyOrBuilder - getEncryptionKeyOrBuilder() { - if (encryptionKeyBuilder_ != null) { - return encryptionKeyBuilder_.getMessageOrBuilder(); + public int getConditionsCount() { + if (conditionsBuilder_ == null) { + return conditions_.size(); } else { - return encryptionKey_ == null - ? com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - .getDefaultInstance() - : encryptionKey_; + return conditionsBuilder_.getCount(); } } @@ -23300,157 +36288,119 @@ public Builder clearEncryptionKey() { * * *
            -     * Immutable. Encrypts resources of this workstation configuration using a
            -     * customer-managed encryption key (CMEK).
            -     *
            -     * If specified, the boot disk of the Compute Engine instance and the
            -     * persistent disk are encrypted using this encryption key. If
            -     * this field is not set, the disks are encrypted using a generated
            -     * key. Customer-managed encryption keys do not protect disk metadata.
            -     *
            -     * If the customer-managed encryption key is rotated, when the workstation
            -     * instance is stopped, the system attempts to recreate the
            -     * persistent disk with the new version of the key. Be sure to keep
            -     * older versions of the key until the persistent disk is recreated.
            -     * Otherwise, data on the persistent disk might be lost.
            -     *
            -     * If the encryption key is revoked, the workstation session automatically
            -     * stops within 7 hours.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * .google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey encryption_key = 17 [(.google.api.field_behavior) = IMMUTABLE]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - private com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey, - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKeyOrBuilder> - internalGetEncryptionKeyFieldBuilder() { - if (encryptionKeyBuilder_ == null) { - encryptionKeyBuilder_ = - new com.google.protobuf.SingleFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey, - com.google.cloud.workstations.v1beta.WorkstationConfig.CustomerEncryptionKey - .Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig - .CustomerEncryptionKeyOrBuilder>( - getEncryptionKey(), getParentForChildren(), isClean()); - encryptionKey_ = null; - } - return encryptionKeyBuilder_; - } - - private java.util.List - readinessChecks_ = java.util.Collections.emptyList(); - - private void ensureReadinessChecksIsMutable() { - if (!((bitField0_ & 0x00020000) != 0)) { - readinessChecks_ = - new java.util.ArrayList< - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck>( - readinessChecks_); - bitField0_ |= 0x00020000; + public com.google.rpc.Status getConditions(int index) { + if (conditionsBuilder_ == null) { + return conditions_.get(index); + } else { + return conditionsBuilder_.getMessage(index); } } - private com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck, - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder> - readinessChecksBuilder_; - /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public java.util.List - getReadinessChecksList() { - if (readinessChecksBuilder_ == null) { - return java.util.Collections.unmodifiableList(readinessChecks_); + public Builder setConditions(int index, com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionsIsMutable(); + conditions_.set(index, value); + onChanged(); } else { - return readinessChecksBuilder_.getMessageList(); + conditionsBuilder_.setMessage(index, value); } + return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public int getReadinessChecksCount() { - if (readinessChecksBuilder_ == null) { - return readinessChecks_.size(); + public Builder setConditions(int index, com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.set(index, builderForValue.build()); + onChanged(); } else { - return readinessChecksBuilder_.getCount(); + conditionsBuilder_.setMessage(index, builderForValue.build()); } + return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck getReadinessChecks( - int index) { - if (readinessChecksBuilder_ == null) { - return readinessChecks_.get(index); + public Builder addConditions(com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConditionsIsMutable(); + conditions_.add(value); + onChanged(); } else { - return readinessChecksBuilder_.getMessage(index); + conditionsBuilder_.addMessage(value); } + return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder setReadinessChecks( - int index, com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck value) { - if (readinessChecksBuilder_ == null) { + public Builder addConditions(int index, com.google.rpc.Status value) { + if (conditionsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureReadinessChecksIsMutable(); - readinessChecks_.set(index, value); + ensureConditionsIsMutable(); + conditions_.add(index, value); onChanged(); } else { - readinessChecksBuilder_.setMessage(index, value); + conditionsBuilder_.addMessage(index, value); } return this; } @@ -23459,25 +36409,21 @@ public Builder setReadinessChecks( * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder setReadinessChecks( - int index, - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder - builderForValue) { - if (readinessChecksBuilder_ == null) { - ensureReadinessChecksIsMutable(); - readinessChecks_.set(index, builderForValue.build()); + public Builder addConditions(com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(builderForValue.build()); onChanged(); } else { - readinessChecksBuilder_.setMessage(index, builderForValue.build()); + conditionsBuilder_.addMessage(builderForValue.build()); } return this; } @@ -23486,26 +36432,21 @@ public Builder setReadinessChecks( * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addReadinessChecks( - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck value) { - if (readinessChecksBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureReadinessChecksIsMutable(); - readinessChecks_.add(value); + public Builder addConditions(int index, com.google.rpc.Status.Builder builderForValue) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.add(index, builderForValue.build()); onChanged(); } else { - readinessChecksBuilder_.addMessage(value); + conditionsBuilder_.addMessage(index, builderForValue.build()); } return this; } @@ -23514,26 +36455,21 @@ public Builder addReadinessChecks( * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addReadinessChecks( - int index, com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck value) { - if (readinessChecksBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureReadinessChecksIsMutable(); - readinessChecks_.add(index, value); + public Builder addAllConditions(java.lang.Iterable values) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, conditions_); onChanged(); } else { - readinessChecksBuilder_.addMessage(index, value); + conditionsBuilder_.addAllMessages(values); } return this; } @@ -23542,24 +36478,21 @@ public Builder addReadinessChecks( * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addReadinessChecks( - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder - builderForValue) { - if (readinessChecksBuilder_ == null) { - ensureReadinessChecksIsMutable(); - readinessChecks_.add(builderForValue.build()); + public Builder clearConditions() { + if (conditionsBuilder_ == null) { + conditions_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00200000); onChanged(); } else { - readinessChecksBuilder_.addMessage(builderForValue.build()); + conditionsBuilder_.clear(); } return this; } @@ -23568,25 +36501,21 @@ public Builder addReadinessChecks( * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addReadinessChecks( - int index, - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder - builderForValue) { - if (readinessChecksBuilder_ == null) { - ensureReadinessChecksIsMutable(); - readinessChecks_.add(index, builderForValue.build()); + public Builder removeConditions(int index) { + if (conditionsBuilder_ == null) { + ensureConditionsIsMutable(); + conditions_.remove(index); onChanged(); } else { - readinessChecksBuilder_.addMessage(index, builderForValue.build()); + conditionsBuilder_.remove(index); } return this; } @@ -23595,357 +36524,351 @@ public Builder addReadinessChecks( * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addAllReadinessChecks( - java.lang.Iterable< - ? extends com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck> - values) { - if (readinessChecksBuilder_ == null) { - ensureReadinessChecksIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, readinessChecks_); - onChanged(); - } else { - readinessChecksBuilder_.addAllMessages(values); - } - return this; + public com.google.rpc.Status.Builder getConditionsBuilder(int index) { + return internalGetConditionsFieldBuilder().getBuilder(index); } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder clearReadinessChecks() { - if (readinessChecksBuilder_ == null) { - readinessChecks_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00020000); - onChanged(); + public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { + if (conditionsBuilder_ == null) { + return conditions_.get(index); } else { - readinessChecksBuilder_.clear(); + return conditionsBuilder_.getMessageOrBuilder(index); } - return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder removeReadinessChecks(int index) { - if (readinessChecksBuilder_ == null) { - ensureReadinessChecksIsMutable(); - readinessChecks_.remove(index); - onChanged(); + public java.util.List getConditionsOrBuilderList() { + if (conditionsBuilder_ != null) { + return conditionsBuilder_.getMessageOrBuilderList(); } else { - readinessChecksBuilder_.remove(index); + return java.util.Collections.unmodifiableList(conditions_); } - return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder - getReadinessChecksBuilder(int index) { - return internalGetReadinessChecksFieldBuilder().getBuilder(index); + public com.google.rpc.Status.Builder addConditionsBuilder() { + return internalGetConditionsFieldBuilder() + .addBuilder(com.google.rpc.Status.getDefaultInstance()); } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder - getReadinessChecksOrBuilder(int index) { - if (readinessChecksBuilder_ == null) { - return readinessChecks_.get(index); - } else { - return readinessChecksBuilder_.getMessageOrBuilder(index); - } + public com.google.rpc.Status.Builder addConditionsBuilder(int index) { + return internalGetConditionsFieldBuilder() + .addBuilder(index, com.google.rpc.Status.getDefaultInstance()); } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Output only. Status conditions describing the workstation configuration's
            +     * current state.
                  * 
            * * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; + * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public java.util.List< - ? extends - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder> - getReadinessChecksOrBuilderList() { - if (readinessChecksBuilder_ != null) { - return readinessChecksBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(readinessChecks_); + public java.util.List getConditionsBuilderList() { + return internalGetConditionsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> + internalGetConditionsFieldBuilder() { + if (conditionsBuilder_ == null) { + conditionsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.rpc.Status, + com.google.rpc.Status.Builder, + com.google.rpc.StatusOrBuilder>( + conditions_, ((bitField0_ & 0x00200000) != 0), getParentForChildren(), isClean()); + conditions_ = null; } + return conditionsBuilder_; } + private boolean enableAuditAgent_; + /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Optional. Whether to enable Linux `auditd` logging on the workstation. When
            +     * enabled, a
            +     * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account]
            +     * must also be specified that has `roles/logging.logWriter` and
            +     * `roles/monitoring.metricWriter` on the project. Operating system audit
            +     * logging is distinct from [Cloud Audit
            +     * Logs](https://cloud.google.com/workstations/docs/audit-logging) and
            +     * [Container output
            +     * logging](https://cloud.google.com/workstations/docs/container-output-logging#overview).
            +     * Operating system audit logs are available in the
            +     * [Cloud Logging](https://cloud.google.com/logging/docs) console by querying:
            +     *
            +     * resource.type="gce_instance"
            +     * log_name:"/logs/linux-auditd"
                  * 
            * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * + * bool enable_audit_agent = 20 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enableAuditAgent. */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder - addReadinessChecksBuilder() { - return internalGetReadinessChecksFieldBuilder() - .addBuilder( - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck - .getDefaultInstance()); + @java.lang.Override + public boolean getEnableAuditAgent() { + return enableAuditAgent_; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Optional. Whether to enable Linux `auditd` logging on the workstation. When
            +     * enabled, a
            +     * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account]
            +     * must also be specified that has `roles/logging.logWriter` and
            +     * `roles/monitoring.metricWriter` on the project. Operating system audit
            +     * logging is distinct from [Cloud Audit
            +     * Logs](https://cloud.google.com/workstations/docs/audit-logging) and
            +     * [Container output
            +     * logging](https://cloud.google.com/workstations/docs/container-output-logging#overview).
            +     * Operating system audit logs are available in the
            +     * [Cloud Logging](https://cloud.google.com/logging/docs) console by querying:
            +     *
            +     * resource.type="gce_instance"
            +     * log_name:"/logs/linux-auditd"
                  * 
            * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * + * bool enable_audit_agent = 20 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The enableAuditAgent to set. + * @return This builder for chaining. */ - public com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder - addReadinessChecksBuilder(int index) { - return internalGetReadinessChecksFieldBuilder() - .addBuilder( - index, - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck - .getDefaultInstance()); + public Builder setEnableAuditAgent(boolean value) { + + enableAuditAgent_ = value; + bitField0_ |= 0x00400000; + onChanged(); + return this; } /** * * *
            -     * Optional. Readiness checks to perform when starting a workstation using
            -     * this workstation configuration. Mark a workstation as running only after
            -     * all specified readiness checks return 200 status codes.
            +     * Optional. Whether to enable Linux `auditd` logging on the workstation. When
            +     * enabled, a
            +     * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account]
            +     * must also be specified that has `roles/logging.logWriter` and
            +     * `roles/monitoring.metricWriter` on the project. Operating system audit
            +     * logging is distinct from [Cloud Audit
            +     * Logs](https://cloud.google.com/workstations/docs/audit-logging) and
            +     * [Container output
            +     * logging](https://cloud.google.com/workstations/docs/container-output-logging#overview).
            +     * Operating system audit logs are available in the
            +     * [Cloud Logging](https://cloud.google.com/logging/docs) console by querying:
            +     *
            +     * resource.type="gce_instance"
            +     * log_name:"/logs/linux-auditd"
                  * 
            * - * - * repeated .google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck readiness_checks = 19 [(.google.api.field_behavior) = OPTIONAL]; - * + * bool enable_audit_agent = 20 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. */ - public java.util.List< - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder> - getReadinessChecksBuilderList() { - return internalGetReadinessChecksFieldBuilder().getBuilderList(); - } - - private com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck, - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder> - internalGetReadinessChecksFieldBuilder() { - if (readinessChecksBuilder_ == null) { - readinessChecksBuilder_ = - new com.google.protobuf.RepeatedFieldBuilder< - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck, - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck.Builder, - com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckOrBuilder>( - readinessChecks_, - ((bitField0_ & 0x00020000) != 0), - getParentForChildren(), - isClean()); - readinessChecks_ = null; - } - return readinessChecksBuilder_; + public Builder clearEnableAuditAgent() { + bitField0_ = (bitField0_ & ~0x00400000); + enableAuditAgent_ = false; + onChanged(); + return this; } - private com.google.protobuf.LazyStringArrayList replicaZones_ = - com.google.protobuf.LazyStringArrayList.emptyList(); - - private void ensureReplicaZonesIsMutable() { - if (!replicaZones_.isModifiable()) { - replicaZones_ = new com.google.protobuf.LazyStringArrayList(replicaZones_); - } - bitField0_ |= 0x00040000; - } + private com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions httpOptions_; + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions, + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptionsOrBuilder> + httpOptionsBuilder_; /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. HTTP options that customize the behavior of the workstation
            +     * service's HTTP proxy.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return A list containing the replicaZones. + * @return Whether the httpOptions field is set. */ - public com.google.protobuf.ProtocolStringList getReplicaZonesList() { - replicaZones_.makeImmutable(); - return replicaZones_; + public boolean hasHttpOptions() { + return ((bitField0_ & 0x00800000) != 0); } /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. HTTP options that customize the behavior of the workstation
            +     * service's HTTP proxy.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return The count of replicaZones. + * @return The httpOptions. */ - public int getReplicaZonesCount() { - return replicaZones_.size(); + public com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions getHttpOptions() { + if (httpOptionsBuilder_ == null) { + return httpOptions_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions + .getDefaultInstance() + : httpOptions_; + } else { + return httpOptionsBuilder_.getMessage(); + } } /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. HTTP options that customize the behavior of the workstation
            +     * service's HTTP proxy.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param index The index of the element to return. - * @return The replicaZones at the given index. */ - public java.lang.String getReplicaZones(int index) { - return replicaZones_.get(index); + public Builder setHttpOptions( + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions value) { + if (httpOptionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + httpOptions_ = value; + } else { + httpOptionsBuilder_.setMessage(value); + } + bitField0_ |= 0x00800000; + onChanged(); + return this; } /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. HTTP options that customize the behavior of the workstation
            +     * service's HTTP proxy.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param index The index of the value to return. - * @return The bytes of the replicaZones at the given index. */ - public com.google.protobuf.ByteString getReplicaZonesBytes(int index) { - return replicaZones_.getByteString(index); + public Builder setHttpOptions( + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions.Builder + builderForValue) { + if (httpOptionsBuilder_ == null) { + httpOptions_ = builderForValue.build(); + } else { + httpOptionsBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00800000; + onChanged(); + return this; } /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. HTTP options that customize the behavior of the workstation
            +     * service's HTTP proxy.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param index The index to set the value at. - * @param value The replicaZones to set. - * @return This builder for chaining. */ - public Builder setReplicaZones(int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeHttpOptions( + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions value) { + if (httpOptionsBuilder_ == null) { + if (((bitField0_ & 0x00800000) != 0) + && httpOptions_ != null + && httpOptions_ + != com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions + .getDefaultInstance()) { + getHttpOptionsBuilder().mergeFrom(value); + } else { + httpOptions_ = value; + } + } else { + httpOptionsBuilder_.mergeFrom(value); + } + if (httpOptions_ != null) { + bitField0_ |= 0x00800000; + onChanged(); } - ensureReplicaZonesIsMutable(); - replicaZones_.set(index, value); - bitField0_ |= 0x00040000; - onChanged(); return this; } @@ -23953,29 +36876,21 @@ public Builder setReplicaZones(int index, java.lang.String value) { * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. HTTP options that customize the behavior of the workstation
            +     * service's HTTP proxy.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param value The replicaZones to add. - * @return This builder for chaining. */ - public Builder addReplicaZones(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder clearHttpOptions() { + bitField0_ = (bitField0_ & ~0x00800000); + httpOptions_ = null; + if (httpOptionsBuilder_ != null) { + httpOptionsBuilder_.dispose(); + httpOptionsBuilder_ = null; } - ensureReplicaZonesIsMutable(); - replicaZones_.add(value); - bitField0_ |= 0x00040000; onChanged(); return this; } @@ -23984,129 +36899,116 @@ public Builder addReplicaZones(java.lang.String value) { * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. HTTP options that customize the behavior of the workstation
            +     * service's HTTP proxy.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param values The replicaZones to add. - * @return This builder for chaining. */ - public Builder addAllReplicaZones(java.lang.Iterable values) { - ensureReplicaZonesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, replicaZones_); - bitField0_ |= 0x00040000; + public com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions.Builder + getHttpOptionsBuilder() { + bitField0_ |= 0x00800000; onChanged(); - return this; + return internalGetHttpOptionsFieldBuilder().getBuilder(); } /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. HTTP options that customize the behavior of the workstation
            +     * service's HTTP proxy.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return This builder for chaining. */ - public Builder clearReplicaZones() { - replicaZones_ = com.google.protobuf.LazyStringArrayList.emptyList(); - bitField0_ = (bitField0_ & ~0x00040000); - ; - onChanged(); - return this; + public com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptionsOrBuilder + getHttpOptionsOrBuilder() { + if (httpOptionsBuilder_ != null) { + return httpOptionsBuilder_.getMessageOrBuilder(); + } else { + return httpOptions_ == null + ? com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions + .getDefaultInstance() + : httpOptions_; + } } /** * * *
            -     * Optional. Immutable. Specifies the zones used to replicate the VM and disk
            -     * resources within the region. If set, exactly two zones within the
            -     * workstation cluster's region must be specified—for example,
            -     * `['us-central1-a', 'us-central1-f']`. If this field is empty, two default
            -     * zones within the region are used.
            -     *
            -     * Immutable after the workstation configuration is created.
            +     * Optional. HTTP options that customize the behavior of the workstation
            +     * service's HTTP proxy.
                  * 
            * * - * repeated string replica_zones = 23 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = IMMUTABLE]; + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param value The bytes of the replicaZones to add. - * @return This builder for chaining. */ - public Builder addReplicaZonesBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + private com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions, + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptionsOrBuilder> + internalGetHttpOptionsFieldBuilder() { + if (httpOptionsBuilder_ == null) { + httpOptionsBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions, + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptionsOrBuilder>( + getHttpOptions(), getParentForChildren(), isClean()); + httpOptions_ = null; } - checkByteStringIsUtf8(value); - ensureReplicaZonesIsMutable(); - replicaZones_.add(value); - bitField0_ |= 0x00040000; - onChanged(); - return this; + return httpOptionsBuilder_; } - private boolean degraded_; + private boolean disableTcpConnections_; /** * * *
            -     * Output only. Whether this resource is degraded, in which case it may
            -     * require user action to restore full functionality. See also the
            -     * [conditions][google.cloud.workstations.v1beta.WorkstationConfig.conditions]
            -     * field.
            +     * Optional. Disables support for plain TCP connections in the workstation.
            +     * By default the service supports TCP connections through a websocket relay.
            +     * Setting this option to true disables that relay, which prevents the usage
            +     * of services that require plain TCP connections, such as SSH.
            +     * When enabled, all communication must occur over HTTPS or WSS.
                  * 
            * - * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * bool disable_tcp_connections = 24 [(.google.api.field_behavior) = OPTIONAL]; * - * @return The degraded. + * @return The disableTcpConnections. */ @java.lang.Override - public boolean getDegraded() { - return degraded_; + public boolean getDisableTcpConnections() { + return disableTcpConnections_; } /** * * *
            -     * Output only. Whether this resource is degraded, in which case it may
            -     * require user action to restore full functionality. See also the
            -     * [conditions][google.cloud.workstations.v1beta.WorkstationConfig.conditions]
            -     * field.
            +     * Optional. Disables support for plain TCP connections in the workstation.
            +     * By default the service supports TCP connections through a websocket relay.
            +     * Setting this option to true disables that relay, which prevents the usage
            +     * of services that require plain TCP connections, such as SSH.
            +     * When enabled, all communication must occur over HTTPS or WSS.
                  * 
            * - * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * bool disable_tcp_connections = 24 [(.google.api.field_behavior) = OPTIONAL]; * - * @param value The degraded to set. + * @param value The disableTcpConnections to set. * @return This builder for chaining. */ - public Builder setDegraded(boolean value) { + public Builder setDisableTcpConnections(boolean value) { - degraded_ = value; - bitField0_ |= 0x00080000; + disableTcpConnections_ = value; + bitField0_ |= 0x01000000; onChanged(); return this; } @@ -24115,52 +37017,64 @@ public Builder setDegraded(boolean value) { * * *
            -     * Output only. Whether this resource is degraded, in which case it may
            -     * require user action to restore full functionality. See also the
            -     * [conditions][google.cloud.workstations.v1beta.WorkstationConfig.conditions]
            -     * field.
            +     * Optional. Disables support for plain TCP connections in the workstation.
            +     * By default the service supports TCP connections through a websocket relay.
            +     * Setting this option to true disables that relay, which prevents the usage
            +     * of services that require plain TCP connections, such as SSH.
            +     * When enabled, all communication must occur over HTTPS or WSS.
                  * 
            * - * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * bool disable_tcp_connections = 24 [(.google.api.field_behavior) = OPTIONAL]; * * @return This builder for chaining. */ - public Builder clearDegraded() { - bitField0_ = (bitField0_ & ~0x00080000); - degraded_ = false; + public Builder clearDisableTcpConnections() { + bitField0_ = (bitField0_ & ~0x01000000); + disableTcpConnections_ = false; onChanged(); return this; } - private java.util.List conditions_ = java.util.Collections.emptyList(); + private java.util.List + allowedPorts_ = java.util.Collections.emptyList(); - private void ensureConditionsIsMutable() { - if (!((bitField0_ & 0x00100000) != 0)) { - conditions_ = new java.util.ArrayList(conditions_); - bitField0_ |= 0x00100000; + private void ensureAllowedPortsIsMutable() { + if (!((bitField0_ & 0x02000000) != 0)) { + allowedPorts_ = + new java.util.ArrayList< + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange>(allowedPorts_); + bitField0_ |= 0x02000000; } } private com.google.protobuf.RepeatedFieldBuilder< - com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> - conditionsBuilder_; + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange, + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRangeOrBuilder> + allowedPortsBuilder_; /** * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public java.util.List getConditionsList() { - if (conditionsBuilder_ == null) { - return java.util.Collections.unmodifiableList(conditions_); + public java.util.List + getAllowedPortsList() { + if (allowedPortsBuilder_ == null) { + return java.util.Collections.unmodifiableList(allowedPorts_); } else { - return conditionsBuilder_.getMessageList(); + return allowedPortsBuilder_.getMessageList(); } } @@ -24168,18 +37082,23 @@ public java.util.List getConditionsList() { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public int getConditionsCount() { - if (conditionsBuilder_ == null) { - return conditions_.size(); + public int getAllowedPortsCount() { + if (allowedPortsBuilder_ == null) { + return allowedPorts_.size(); } else { - return conditionsBuilder_.getCount(); + return allowedPortsBuilder_.getCount(); } } @@ -24187,18 +37106,24 @@ public int getConditionsCount() { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.rpc.Status getConditions(int index) { - if (conditionsBuilder_ == null) { - return conditions_.get(index); + public com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange getAllowedPorts( + int index) { + if (allowedPortsBuilder_ == null) { + return allowedPorts_.get(index); } else { - return conditionsBuilder_.getMessage(index); + return allowedPortsBuilder_.getMessage(index); } } @@ -24206,23 +37131,29 @@ public com.google.rpc.Status getConditions(int index) { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setConditions(int index, com.google.rpc.Status value) { - if (conditionsBuilder_ == null) { + public Builder setAllowedPorts( + int index, com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange value) { + if (allowedPortsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConditionsIsMutable(); - conditions_.set(index, value); + ensureAllowedPortsIsMutable(); + allowedPorts_.set(index, value); onChanged(); } else { - conditionsBuilder_.setMessage(index, value); + allowedPortsBuilder_.setMessage(index, value); } return this; } @@ -24231,20 +37162,27 @@ public Builder setConditions(int index, com.google.rpc.Status value) { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setConditions(int index, com.google.rpc.Status.Builder builderForValue) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.set(index, builderForValue.build()); + public Builder setAllowedPorts( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.Builder builderForValue) { + if (allowedPortsBuilder_ == null) { + ensureAllowedPortsIsMutable(); + allowedPorts_.set(index, builderForValue.build()); onChanged(); } else { - conditionsBuilder_.setMessage(index, builderForValue.build()); + allowedPortsBuilder_.setMessage(index, builderForValue.build()); } return this; } @@ -24253,23 +37191,29 @@ public Builder setConditions(int index, com.google.rpc.Status.Builder builderFor * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addConditions(com.google.rpc.Status value) { - if (conditionsBuilder_ == null) { + public Builder addAllowedPorts( + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange value) { + if (allowedPortsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConditionsIsMutable(); - conditions_.add(value); + ensureAllowedPortsIsMutable(); + allowedPorts_.add(value); onChanged(); } else { - conditionsBuilder_.addMessage(value); + allowedPortsBuilder_.addMessage(value); } return this; } @@ -24278,23 +37222,29 @@ public Builder addConditions(com.google.rpc.Status value) { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addConditions(int index, com.google.rpc.Status value) { - if (conditionsBuilder_ == null) { + public Builder addAllowedPorts( + int index, com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange value) { + if (allowedPortsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConditionsIsMutable(); - conditions_.add(index, value); + ensureAllowedPortsIsMutable(); + allowedPorts_.add(index, value); onChanged(); } else { - conditionsBuilder_.addMessage(index, value); + allowedPortsBuilder_.addMessage(index, value); } return this; } @@ -24303,20 +37253,26 @@ public Builder addConditions(int index, com.google.rpc.Status value) { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addConditions(com.google.rpc.Status.Builder builderForValue) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.add(builderForValue.build()); + public Builder addAllowedPorts( + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.Builder builderForValue) { + if (allowedPortsBuilder_ == null) { + ensureAllowedPortsIsMutable(); + allowedPorts_.add(builderForValue.build()); onChanged(); } else { - conditionsBuilder_.addMessage(builderForValue.build()); + allowedPortsBuilder_.addMessage(builderForValue.build()); } return this; } @@ -24325,20 +37281,27 @@ public Builder addConditions(com.google.rpc.Status.Builder builderForValue) { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addConditions(int index, com.google.rpc.Status.Builder builderForValue) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.add(index, builderForValue.build()); + public Builder addAllowedPorts( + int index, + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.Builder builderForValue) { + if (allowedPortsBuilder_ == null) { + ensureAllowedPortsIsMutable(); + allowedPorts_.add(index, builderForValue.build()); onChanged(); } else { - conditionsBuilder_.addMessage(index, builderForValue.build()); + allowedPortsBuilder_.addMessage(index, builderForValue.build()); } return this; } @@ -24347,20 +37310,28 @@ public Builder addConditions(int index, com.google.rpc.Status.Builder builderFor * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder addAllConditions(java.lang.Iterable values) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, conditions_); + public Builder addAllAllowedPorts( + java.lang.Iterable< + ? extends com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange> + values) { + if (allowedPortsBuilder_ == null) { + ensureAllowedPortsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, allowedPorts_); onChanged(); } else { - conditionsBuilder_.addAllMessages(values); + allowedPortsBuilder_.addAllMessages(values); } return this; } @@ -24369,20 +37340,25 @@ public Builder addAllConditions(java.lang.Iterable - * Output only. Status conditions describing the current resource state. + * Optional. A list of + * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s + * specifying single ports or ranges of ports that are externally accessible + * in the workstation. Allowed ports must be one of 22, 80, or within range + * 1024-65535. If not specified defaults to ports 22, 80, and ports + * 1024-65535. *
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearConditions() { - if (conditionsBuilder_ == null) { - conditions_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00100000); + public Builder clearAllowedPorts() { + if (allowedPortsBuilder_ == null) { + allowedPorts_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x02000000); onChanged(); } else { - conditionsBuilder_.clear(); + allowedPortsBuilder_.clear(); } return this; } @@ -24391,20 +37367,25 @@ public Builder clearConditions() { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder removeConditions(int index) { - if (conditionsBuilder_ == null) { - ensureConditionsIsMutable(); - conditions_.remove(index); + public Builder removeAllowedPorts(int index) { + if (allowedPortsBuilder_ == null) { + ensureAllowedPortsIsMutable(); + allowedPorts_.remove(index); onChanged(); } else { - conditionsBuilder_.remove(index); + allowedPortsBuilder_.remove(index); } return this; } @@ -24413,33 +37394,45 @@ public Builder removeConditions(int index) { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.rpc.Status.Builder getConditionsBuilder(int index) { - return internalGetConditionsFieldBuilder().getBuilder(index); + public com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.Builder + getAllowedPortsBuilder(int index) { + return internalGetAllowedPortsFieldBuilder().getBuilder(index); } /** * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { - if (conditionsBuilder_ == null) { - return conditions_.get(index); + public com.google.cloud.workstations.v1beta.WorkstationConfig.PortRangeOrBuilder + getAllowedPortsOrBuilder(int index) { + if (allowedPortsBuilder_ == null) { + return allowedPorts_.get(index); } else { - return conditionsBuilder_.getMessageOrBuilder(index); + return allowedPortsBuilder_.getMessageOrBuilder(index); } } @@ -24447,18 +37440,25 @@ public com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index) { * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public java.util.List getConditionsOrBuilderList() { - if (conditionsBuilder_ != null) { - return conditionsBuilder_.getMessageOrBuilderList(); + public java.util.List< + ? extends com.google.cloud.workstations.v1beta.WorkstationConfig.PortRangeOrBuilder> + getAllowedPortsOrBuilderList() { + if (allowedPortsBuilder_ != null) { + return allowedPortsBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(conditions_); + return java.util.Collections.unmodifiableList(allowedPorts_); } } @@ -24466,106 +37466,123 @@ public java.util.List getConditionsOrB * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.rpc.Status.Builder addConditionsBuilder() { - return internalGetConditionsFieldBuilder() - .addBuilder(com.google.rpc.Status.getDefaultInstance()); + public com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.Builder + addAllowedPortsBuilder() { + return internalGetAllowedPortsFieldBuilder() + .addBuilder( + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange + .getDefaultInstance()); } /** * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.rpc.Status.Builder addConditionsBuilder(int index) { - return internalGetConditionsFieldBuilder() - .addBuilder(index, com.google.rpc.Status.getDefaultInstance()); + public com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.Builder + addAllowedPortsBuilder(int index) { + return internalGetAllowedPortsFieldBuilder() + .addBuilder( + index, + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange + .getDefaultInstance()); } /** * * *
            -     * Output only. Status conditions describing the current resource state.
            +     * Optional. A list of
            +     * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +     * specifying single ports or ranges of ports that are externally accessible
            +     * in the workstation. Allowed ports must be one of 22, 80, or within range
            +     * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +     * 1024-65535.
                  * 
            * * - * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; * */ - public java.util.List getConditionsBuilderList() { - return internalGetConditionsFieldBuilder().getBuilderList(); + public java.util.List + getAllowedPortsBuilderList() { + return internalGetAllowedPortsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilder< - com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder> - internalGetConditionsFieldBuilder() { - if (conditionsBuilder_ == null) { - conditionsBuilder_ = + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange, + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRangeOrBuilder> + internalGetAllowedPortsFieldBuilder() { + if (allowedPortsBuilder_ == null) { + allowedPortsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< - com.google.rpc.Status, - com.google.rpc.Status.Builder, - com.google.rpc.StatusOrBuilder>( - conditions_, ((bitField0_ & 0x00100000) != 0), getParentForChildren(), isClean()); - conditions_ = null; + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange, + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange.Builder, + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRangeOrBuilder>( + allowedPorts_, ((bitField0_ & 0x02000000) != 0), getParentForChildren(), isClean()); + allowedPorts_ = null; } - return conditionsBuilder_; + return allowedPortsBuilder_; } - private boolean enableAuditAgent_; + private boolean satisfiesPzs_; /** * * *
            -     * Optional. Whether to enable Linux `auditd` logging on the workstation. When
            -     * enabled, a service account must also be specified that has
            -     * `logging.buckets.write` permission on the project. Operating system audit
            -     * logging is distinct from [Cloud Audit
            -     * Logs](https://cloud.google.com/workstations/docs/audit-logging).
            +     * Output only. Reserved for future use.
                  * 
            * - * bool enable_audit_agent = 20 [(.google.api.field_behavior) = OPTIONAL]; + * bool satisfies_pzs = 26 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The enableAuditAgent. + * @return The satisfiesPzs. */ @java.lang.Override - public boolean getEnableAuditAgent() { - return enableAuditAgent_; + public boolean getSatisfiesPzs() { + return satisfiesPzs_; } /** * * *
            -     * Optional. Whether to enable Linux `auditd` logging on the workstation. When
            -     * enabled, a service account must also be specified that has
            -     * `logging.buckets.write` permission on the project. Operating system audit
            -     * logging is distinct from [Cloud Audit
            -     * Logs](https://cloud.google.com/workstations/docs/audit-logging).
            +     * Output only. Reserved for future use.
                  * 
            * - * bool enable_audit_agent = 20 [(.google.api.field_behavior) = OPTIONAL]; + * bool satisfies_pzs = 26 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The enableAuditAgent to set. + * @param value The satisfiesPzs to set. * @return This builder for chaining. */ - public Builder setEnableAuditAgent(boolean value) { + public Builder setSatisfiesPzs(boolean value) { - enableAuditAgent_ = value; - bitField0_ |= 0x00200000; + satisfiesPzs_ = value; + bitField0_ |= 0x04000000; onChanged(); return this; } @@ -24574,20 +37591,214 @@ public Builder setEnableAuditAgent(boolean value) { * * *
            -     * Optional. Whether to enable Linux `auditd` logging on the workstation. When
            -     * enabled, a service account must also be specified that has
            -     * `logging.buckets.write` permission on the project. Operating system audit
            -     * logging is distinct from [Cloud Audit
            -     * Logs](https://cloud.google.com/workstations/docs/audit-logging).
            +     * Output only. Reserved for future use.
                  * 
            * - * bool enable_audit_agent = 20 [(.google.api.field_behavior) = OPTIONAL]; + * bool satisfies_pzs = 26 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ - public Builder clearEnableAuditAgent() { - bitField0_ = (bitField0_ & ~0x00200000); - enableAuditAgent_ = false; + public Builder clearSatisfiesPzs() { + bitField0_ = (bitField0_ & ~0x04000000); + satisfiesPzs_ = false; + onChanged(); + return this; + } + + private boolean satisfiesPzi_; + + /** + * + * + *
            +     * Output only. Reserved for future use.
            +     * 
            + * + * bool satisfies_pzi = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzi. + */ + @java.lang.Override + public boolean getSatisfiesPzi() { + return satisfiesPzi_; + } + + /** + * + * + *
            +     * Output only. Reserved for future use.
            +     * 
            + * + * bool satisfies_pzi = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The satisfiesPzi to set. + * @return This builder for chaining. + */ + public Builder setSatisfiesPzi(boolean value) { + + satisfiesPzi_ = value; + bitField0_ |= 0x08000000; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Output only. Reserved for future use.
            +     * 
            + * + * bool satisfies_pzi = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearSatisfiesPzi() { + bitField0_ = (bitField0_ & ~0x08000000); + satisfiesPzi_ = false; + onChanged(); + return this; + } + + private boolean grantWorkstationAdminRoleOnCreate_; + + /** + * + * + *
            +     * Optional. Grant creator of a workstation `roles/workstations.policyAdmin`
            +     * role along with `roles/workstations.user` role on the workstation created
            +     * by them. This allows workstation users to share access to either their
            +     * entire workstation, or individual ports. Defaults to false.
            +     * 
            + * + * + * bool grant_workstation_admin_role_on_create = 29 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The grantWorkstationAdminRoleOnCreate. + */ + @java.lang.Override + public boolean getGrantWorkstationAdminRoleOnCreate() { + return grantWorkstationAdminRoleOnCreate_; + } + + /** + * + * + *
            +     * Optional. Grant creator of a workstation `roles/workstations.policyAdmin`
            +     * role along with `roles/workstations.user` role on the workstation created
            +     * by them. This allows workstation users to share access to either their
            +     * entire workstation, or individual ports. Defaults to false.
            +     * 
            + * + * + * bool grant_workstation_admin_role_on_create = 29 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The grantWorkstationAdminRoleOnCreate to set. + * @return This builder for chaining. + */ + public Builder setGrantWorkstationAdminRoleOnCreate(boolean value) { + + grantWorkstationAdminRoleOnCreate_ = value; + bitField0_ |= 0x10000000; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Grant creator of a workstation `roles/workstations.policyAdmin`
            +     * role along with `roles/workstations.user` role on the workstation created
            +     * by them. This allows workstation users to share access to either their
            +     * entire workstation, or individual ports. Defaults to false.
            +     * 
            + * + * + * bool grant_workstation_admin_role_on_create = 29 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearGrantWorkstationAdminRoleOnCreate() { + bitField0_ = (bitField0_ & ~0x10000000); + grantWorkstationAdminRoleOnCreate_ = false; + onChanged(); + return this; + } + + private boolean enablePushingCredentials_; + + /** + * + * + *
            +     * Optional. Enables pushing user provided credentials to Workstations by
            +     * calling workstations.pushCredentials. If application_default_credentials
            +     * are supplied to pushCredentials, the provided token is returned when tools
            +     * and applications running in the user container make a request for Default
            +     * Application Credentials. Please note that any credentials supplied are made
            +     * available to all users with access to the workstation.
            +     * 
            + * + * bool enable_pushing_credentials = 30 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enablePushingCredentials. + */ + @java.lang.Override + public boolean getEnablePushingCredentials() { + return enablePushingCredentials_; + } + + /** + * + * + *
            +     * Optional. Enables pushing user provided credentials to Workstations by
            +     * calling workstations.pushCredentials. If application_default_credentials
            +     * are supplied to pushCredentials, the provided token is returned when tools
            +     * and applications running in the user container make a request for Default
            +     * Application Credentials. Please note that any credentials supplied are made
            +     * available to all users with access to the workstation.
            +     * 
            + * + * bool enable_pushing_credentials = 30 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The enablePushingCredentials to set. + * @return This builder for chaining. + */ + public Builder setEnablePushingCredentials(boolean value) { + + enablePushingCredentials_ = value; + bitField0_ |= 0x20000000; + onChanged(); + return this; + } + + /** + * + * + *
            +     * Optional. Enables pushing user provided credentials to Workstations by
            +     * calling workstations.pushCredentials. If application_default_credentials
            +     * are supplied to pushCredentials, the provided token is returned when tools
            +     * and applications running in the user container make a request for Default
            +     * Application Credentials. Please note that any credentials supplied are made
            +     * available to all users with access to the workstation.
            +     * 
            + * + * bool enable_pushing_credentials = 30 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearEnablePushingCredentials() { + bitField0_ = (bitField0_ & ~0x20000000); + enablePushingCredentials_ = false; onChanged(); return this; } diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationConfigOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationConfigOrBuilder.java index 5f520dc2b014..370ab9c6faf8 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationConfigOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationConfigOrBuilder.java @@ -30,10 +30,10 @@ public interface WorkstationConfigOrBuilder * * *
            -   * Full name of this workstation configuration.
            +   * Identifier. Full name of this workstation configuration.
                * 
            * - * string name = 1; + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; * * @return The name. */ @@ -43,10 +43,10 @@ public interface WorkstationConfigOrBuilder * * *
            -   * Full name of this workstation configuration.
            +   * Identifier. Full name of this workstation configuration.
                * 
            * - * string name = 1; + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; * * @return The bytes for name. */ @@ -86,7 +86,9 @@ public interface WorkstationConfigOrBuilder * configuration. *
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * * * @return The uid. */ @@ -100,7 +102,9 @@ public interface WorkstationConfigOrBuilder * configuration. *
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * * * @return The bytes for uid. */ @@ -586,6 +590,32 @@ java.lang.String getLabelsOrDefault( */ com.google.protobuf.DurationOrBuilder getRunningTimeoutOrBuilder(); + /** + * + * + *
            +   * Optional. Maximum number of workstations under this configuration a user
            +   * can have `workstations.workstation.use` permission on.
            +   *
            +   * Only enforced on CreateWorkstation API calls on the user issuing the API
            +   * request. Can be overridden by:
            +   *
            +   * - granting a user
            +   * workstations.workstationConfigs.exemptMaxUsableWorkstationLimit permission,
            +   * or
            +   * - having a user with that permission create a workstation and
            +   * granting another user `workstations.workstation.use` permission on
            +   * that workstation.
            +   *
            +   * If not specified, defaults to `0`, which indicates unlimited.
            +   * 
            + * + * int32 max_usable_workstations = 28 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxUsableWorkstations. + */ + int getMaxUsableWorkstations(); + /** * * @@ -1087,10 +1117,10 @@ com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck getReadine * * *
            -   * Output only. Whether this resource is degraded, in which case it may
            -   * require user action to restore full functionality. See also the
            +   * Output only. Whether this workstation configuration is in degraded mode, in
            +   * which case it may require user action to restore full functionality. The
                * [conditions][google.cloud.workstations.v1beta.WorkstationConfig.conditions]
            -   * field.
            +   * field contains detailed information about the status of the configuration.
                * 
            * * bool degraded = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; @@ -1103,7 +1133,8 @@ com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck getReadine * * *
            -   * Output only. Status conditions describing the current resource state.
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
                * 
            * * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; @@ -1115,7 +1146,8 @@ com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck getReadine * * *
            -   * Output only. Status conditions describing the current resource state.
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
                * 
            * * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; @@ -1127,7 +1159,8 @@ com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck getReadine * * *
            -   * Output only. Status conditions describing the current resource state.
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
                * 
            * * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; @@ -1139,7 +1172,8 @@ com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck getReadine * * *
            -   * Output only. Status conditions describing the current resource state.
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
                * 
            * * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; @@ -1151,7 +1185,8 @@ com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck getReadine * * *
            -   * Output only. Status conditions describing the current resource state.
            +   * Output only. Status conditions describing the workstation configuration's
            +   * current state.
                * 
            * * repeated .google.rpc.Status conditions = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; @@ -1164,10 +1199,19 @@ com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck getReadine * *
                * Optional. Whether to enable Linux `auditd` logging on the workstation. When
            -   * enabled, a service account must also be specified that has
            -   * `logging.buckets.write` permission on the project. Operating system audit
            +   * enabled, a
            +   * [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account]
            +   * must also be specified that has `roles/logging.logWriter` and
            +   * `roles/monitoring.metricWriter` on the project. Operating system audit
                * logging is distinct from [Cloud Audit
            -   * Logs](https://cloud.google.com/workstations/docs/audit-logging).
            +   * Logs](https://cloud.google.com/workstations/docs/audit-logging) and
            +   * [Container output
            +   * logging](https://cloud.google.com/workstations/docs/container-output-logging#overview).
            +   * Operating system audit logs are available in the
            +   * [Cloud Logging](https://cloud.google.com/logging/docs) console by querying:
            +   *
            +   * resource.type="gce_instance"
            +   * log_name:"/logs/linux-auditd"
                * 
            * * bool enable_audit_agent = 20 [(.google.api.field_behavior) = OPTIONAL]; @@ -1175,4 +1219,224 @@ com.google.cloud.workstations.v1beta.WorkstationConfig.ReadinessCheck getReadine * @return The enableAuditAgent. */ boolean getEnableAuditAgent(); + + /** + * + * + *
            +   * Optional. HTTP options that customize the behavior of the workstation
            +   * service's HTTP proxy.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the httpOptions field is set. + */ + boolean hasHttpOptions(); + + /** + * + * + *
            +   * Optional. HTTP options that customize the behavior of the workstation
            +   * service's HTTP proxy.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The httpOptions. + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions getHttpOptions(); + + /** + * + * + *
            +   * Optional. HTTP options that customize the behavior of the workstation
            +   * service's HTTP proxy.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.WorkstationConfig.HttpOptions http_options = 21 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.HttpOptionsOrBuilder + getHttpOptionsOrBuilder(); + + /** + * + * + *
            +   * Optional. Disables support for plain TCP connections in the workstation.
            +   * By default the service supports TCP connections through a websocket relay.
            +   * Setting this option to true disables that relay, which prevents the usage
            +   * of services that require plain TCP connections, such as SSH.
            +   * When enabled, all communication must occur over HTTPS or WSS.
            +   * 
            + * + * bool disable_tcp_connections = 24 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The disableTcpConnections. + */ + boolean getDisableTcpConnections(); + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List + getAllowedPortsList(); + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRange getAllowedPorts(int index); + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getAllowedPortsCount(); + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + ? extends com.google.cloud.workstations.v1beta.WorkstationConfig.PortRangeOrBuilder> + getAllowedPortsOrBuilderList(); + + /** + * + * + *
            +   * Optional. A list of
            +   * [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s
            +   * specifying single ports or ranges of ports that are externally accessible
            +   * in the workstation. Allowed ports must be one of 22, 80, or within range
            +   * 1024-65535. If not specified defaults to ports 22, 80, and ports
            +   * 1024-65535.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.WorkstationConfig.PortRange allowed_ports = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1beta.WorkstationConfig.PortRangeOrBuilder + getAllowedPortsOrBuilder(int index); + + /** + * + * + *
            +   * Output only. Reserved for future use.
            +   * 
            + * + * bool satisfies_pzs = 26 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzs. + */ + boolean getSatisfiesPzs(); + + /** + * + * + *
            +   * Output only. Reserved for future use.
            +   * 
            + * + * bool satisfies_pzi = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzi. + */ + boolean getSatisfiesPzi(); + + /** + * + * + *
            +   * Optional. Grant creator of a workstation `roles/workstations.policyAdmin`
            +   * role along with `roles/workstations.user` role on the workstation created
            +   * by them. This allows workstation users to share access to either their
            +   * entire workstation, or individual ports. Defaults to false.
            +   * 
            + * + * + * bool grant_workstation_admin_role_on_create = 29 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The grantWorkstationAdminRoleOnCreate. + */ + boolean getGrantWorkstationAdminRoleOnCreate(); + + /** + * + * + *
            +   * Optional. Enables pushing user provided credentials to Workstations by
            +   * calling workstations.pushCredentials. If application_default_credentials
            +   * are supplied to pushCredentials, the provided token is returned when tools
            +   * and applications running in the user container make a request for Default
            +   * Application Credentials. Please note that any credentials supplied are made
            +   * available to all users with access to the workstation.
            +   * 
            + * + * bool enable_pushing_credentials = 30 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enablePushingCredentials. + */ + boolean getEnablePushingCredentials(); } diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationOrBuilder.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationOrBuilder.java index d66fcf0c8ed1..4ce0d0731357 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationOrBuilder.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationOrBuilder.java @@ -30,10 +30,10 @@ public interface WorkstationOrBuilder * * *
            -   * Full name of this workstation.
            +   * Identifier. Full name of this workstation.
                * 
            * - * string name = 1; + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; * * @return The name. */ @@ -43,10 +43,10 @@ public interface WorkstationOrBuilder * * *
            -   * Full name of this workstation.
            +   * Identifier. Full name of this workstation.
                * 
            * - * string name = 1; + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; * * @return The bytes for name. */ @@ -85,7 +85,9 @@ public interface WorkstationOrBuilder * Output only. A system-assigned unique identifier for this workstation. *
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * * * @return The uid. */ @@ -98,7 +100,9 @@ public interface WorkstationOrBuilder * Output only. A system-assigned unique identifier for this workstation. *
            * - * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * string uid = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... } + * * * @return The bytes for uid. */ @@ -457,6 +461,78 @@ java.lang.String getLabelsOrDefault( */ com.google.protobuf.ByteString getEtagBytes(); + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List + getPersistentDirectoriesList(); + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory + getPersistentDirectories(int index); + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getPersistentDirectoriesCount(); + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List< + ? extends + com.google.cloud.workstations.v1beta.Workstation + .WorkstationPersistentDirectoryOrBuilder> + getPersistentDirectoriesOrBuilderList(); + + /** + * + * + *
            +   * Optional. Directories to persist across workstation sessions.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectory persistent_directories = 25 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.workstations.v1beta.Workstation.WorkstationPersistentDirectoryOrBuilder + getPersistentDirectoriesOrBuilder(int index); + /** * * @@ -588,4 +664,288 @@ java.lang.String getEnvOrDefault( * map<string, string> env = 12 [(.google.api.field_behavior) = OPTIONAL]; */ java.lang.String getEnvOrThrow(java.lang.String key); + + /** + * + * + *
            +   * Output only. The name of the Google Cloud KMS encryption key used to
            +   * encrypt this workstation. The KMS key can only be configured in the
            +   * WorkstationConfig. The expected format is
            +   * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
            +   * 
            + * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The kmsKey. + */ + java.lang.String getKmsKey(); + + /** + * + * + *
            +   * Output only. The name of the Google Cloud KMS encryption key used to
            +   * encrypt this workstation. The KMS key can only be configured in the
            +   * WorkstationConfig. The expected format is
            +   * `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
            +   * 
            + * + * string kms_key = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for kmsKey. + */ + com.google.protobuf.ByteString getKmsKeyBytes(); + + /** + * + * + *
            +   * Output only. List of available boost configuration IDs that this
            +   * workstation can be boosted up to.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List + getBoostConfigsList(); + + /** + * + * + *
            +   * Output only. List of available boost configuration IDs that this
            +   * workstation can be boosted up to.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig getBoostConfigs( + int index); + + /** + * + * + *
            +   * Output only. List of available boost configuration IDs that this
            +   * workstation can be boosted up to.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + int getBoostConfigsCount(); + + /** + * + * + *
            +   * Output only. List of available boost configuration IDs that this
            +   * workstation can be boosted up to.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List< + ? extends + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfigOrBuilder> + getBoostConfigsOrBuilderList(); + + /** + * + * + *
            +   * Output only. List of available boost configuration IDs that this
            +   * workstation can be boosted up to.
            +   * 
            + * + * + * repeated .google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfig boost_configs = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfigOrBuilder + getBoostConfigsOrBuilder(int index); + + /** + * + * + *
            +   * Optional. The source workstation from which this workstation's persistent
            +   * directories were cloned on creation.
            +   * 
            + * + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The sourceWorkstation. + */ + java.lang.String getSourceWorkstation(); + + /** + * + * + *
            +   * Optional. The source workstation from which this workstation's persistent
            +   * directories were cloned on creation.
            +   * 
            + * + * string source_workstation = 17 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for sourceWorkstation. + */ + com.google.protobuf.ByteString getSourceWorkstationBytes(); + + /** + * + * + *
            +   * Output only. Reserved for future use.
            +   * 
            + * + * bool satisfies_pzs = 18 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzs. + */ + boolean getSatisfiesPzs(); + + /** + * + * + *
            +   * Output only. Reserved for future use.
            +   * 
            + * + * bool satisfies_pzi = 19 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The satisfiesPzi. + */ + boolean getSatisfiesPzi(); + + /** + * + * + *
            +   * Optional. Output only. Runtime host for the workstation when in
            +   * STATE_RUNNING.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the runtimeHost field is set. + */ + boolean hasRuntimeHost(); + + /** + * + * + *
            +   * Optional. Output only. Runtime host for the workstation when in
            +   * STATE_RUNNING.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The runtimeHost. + */ + com.google.cloud.workstations.v1beta.Workstation.RuntimeHost getRuntimeHost(); + + /** + * + * + *
            +   * Optional. Output only. Runtime host for the workstation when in
            +   * STATE_RUNNING.
            +   * 
            + * + * + * .google.cloud.workstations.v1beta.Workstation.RuntimeHost runtime_host = 21 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.cloud.workstations.v1beta.Workstation.RuntimeHostOrBuilder getRuntimeHostOrBuilder(); + + /** + * + * + *
            +   * Output only. Whether this workstation is in degraded mode, in which case it
            +   * may require user action to restore full functionality. The
            +   * [conditions][google.cloud.workstations.v1beta.Workstation.conditions] field
            +   * contains detailed information about the status of the workstation.
            +   * 
            + * + * bool degraded = 23 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The degraded. + */ + boolean getDegraded(); + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation's current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List getConditionsList(); + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation's current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.rpc.Status getConditions(int index); + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation's current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + int getConditionsCount(); + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation's current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List getConditionsOrBuilderList(); + + /** + * + * + *
            +   * Output only. Status conditions describing the workstation's current state.
            +   * 
            + * + * repeated .google.rpc.Status conditions = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.rpc.StatusOrBuilder getConditionsOrBuilder(int index); } diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsProto.java b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsProto.java index 2ad6615a0102..188e81f6aace 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsProto.java +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsProto.java @@ -48,6 +48,14 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_workstations_v1beta_WorkstationCluster_PrivateClusterConfig_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_workstations_v1beta_WorkstationCluster_PrivateClusterConfig_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_DomainConfig_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_DomainConfig_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_GatewayConfig_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_GatewayConfig_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_workstations_v1beta_WorkstationCluster_AnnotationsEntry_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -56,6 +64,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_workstations_v1beta_WorkstationCluster_LabelsEntry_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_workstations_v1beta_WorkstationCluster_LabelsEntry_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_TagsEntry_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_TagsEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_workstations_v1beta_WorkstationConfig_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -80,6 +92,22 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_Accelerator_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_Accelerator_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_BoostConfig_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_BoostConfig_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_ReservationAffinity_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_ReservationAffinity_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_VmTagsEntry_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_VmTagsEntry_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_InstanceMetadataEntry_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_InstanceMetadataEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -88,6 +116,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -112,6 +144,14 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_workstations_v1beta_WorkstationConfig_ReadinessCheck_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_workstations_v1beta_WorkstationConfig_ReadinessCheck_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_HttpOptions_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_HttpOptions_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PortRange_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PortRange_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_workstations_v1beta_WorkstationConfig_AnnotationsEntry_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -124,6 +164,22 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_workstations_v1beta_Workstation_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_workstations_v1beta_Workstation_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationPersistentDirectory_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationPersistentDirectory_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationBoostConfig_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationBoostConfig_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_GceInstanceHost_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_GceInstanceHost_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_workstations_v1beta_Workstation_AnnotationsEntry_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -240,6 +296,18 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_workstations_v1beta_GenerateAccessTokenResponse_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_cloud_workstations_v1beta_GenerateAccessTokenResponse_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_OAuthToken_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_OAuthToken_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_workstations_v1beta_PushCredentialsMetadata_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_cloud_workstations_v1beta_PushCredentialsMetadata_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_workstations_v1beta_OperationMetadata_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -257,19 +325,20 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "3google/cloud/workstations/v1beta/workstations.proto\022 google.cloud.workstations" + ".v1beta\032\034google/api/annotations.proto\032\027g" + "oogle/api/client.proto\032\037google/api/field" - + "_behavior.proto\032\031google/api/resource.pro" - + "to\032#google/longrunning/operations.proto\032\036google/protobuf/duration.proto\032" - + " google/protobuf/field_mask.proto\032\037google/protob" - + "uf/timestamp.proto\032\027google/rpc/status.proto\"\223\t\n" - + "\022WorkstationCluster\022\014\n" - + "\004name\030\001 \001(\t\022\031\n" - + "\014display_name\030\002 \001(\tB\003\340A\001\022\020\n" - + "\003uid\030\003 \001(\tB\003\340A\003\022\030\n" + + "_behavior.proto\032\033google/api/field_info.p" + + "roto\032\031google/api/resource.proto\032#google/" + + "longrunning/operations.proto\032\036google/protobuf/duration.proto\032" + + " google/protobuf/fi" + + "eld_mask.proto\032\037google/protobuf/timestamp.proto\032\027google/rpc/status.proto\"\301\r\n" + + "\022WorkstationCluster\022\021\n" + + "\004name\030\001 \001(\tB\003\340A\010\022\031\n" + + "\014display_name\030\002 \001(\tB\003\340A\001\022\030\n" + + "\003uid\030\003 \001(\tB\013\340A\003\342\214\317\327\010\002\010\001\022\030\n" + "\013reconciling\030\004 \001(\010B\003\340A\003\022_\n" - + "\013annotations\030\005 \003(\0132E.google.cloud.workstations" - + ".v1beta.WorkstationCluster.AnnotationsEntryB\003\340A\001\022U\n" - + "\006labels\030\017 \003(\0132@.google.cloud." - + "workstations.v1beta.WorkstationCluster.LabelsEntryB\003\340A\001\0224\n" + + "\013annotations\030\005 \003(\0132E.google.cloud.workstatio" + + "ns.v1beta.WorkstationCluster.AnnotationsEntryB\003\340A\001\022U\n" + + "\006labels\030\017 \003(\0132@.google.clou" + + "d.workstations.v1beta.WorkstationCluster.LabelsEntryB\003\340A\001\0224\n" + "\013create_time\030\006 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0224\n" + "\013update_time\030\007 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0224\n" + "\013delete_time\030\010" @@ -279,29 +348,47 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + " \001(\tB\003\340A\005\022\027\n\n" + "subnetwork\030\013 \001(\tB\003\340A\005\022\035\n" + "\020control_plane_ip\030\020 \001(\tB\003\340A\003\022n\n" - + "\026private_cluster_config\030\014 \001(\0132I.google.clou" - + "d.workstations.v1beta.WorkstationCluster.PrivateClusterConfigB\003\340A\001\022\025\n" + + "\026private_cluster_config\030\014 \001(\0132I.google.cl" + + "oud.workstations.v1beta.WorkstationCluster.PrivateClusterConfigB\003\340A\001\022]\n\r" + + "domain_config\030\021 \001(\0132A.google.cloud.workstations." + + "v1beta.WorkstationCluster.DomainConfigB\003\340A\001\022\025\n" + "\010degraded\030\r" + " \001(\010B\003\340A\003\022+\n\n" - + "conditions\030\016 \003(\0132\022.google.rpc.StatusB\003\340A\003\032\237\001\n" + + "conditions\030\016 \003(\0132\022.google.rpc.StatusB\003\340A\003\022\032\n\r" + + "satisfies_pzs\030\022 \001(\010B\003\340A\003\022\032\n\r" + + "satisfies_pzi\030\023 \001(\010B\003\340A\003\022W\n" + + "\004tags\030\024 \003(\0132>.google.cloud.wor" + + "kstations.v1beta.WorkstationCluster.TagsEntryB\t\340A\004\340A\005\340A\001\022_\n" + + "\016gateway_config\030\025 \001(\013" + + "2B.google.cloud.workstations.v1beta.WorkstationCluster.GatewayConfigB\003\340A\001\022*\n" + + "\035workstation_authorization_url\030\026 \001(\tB\003\340A\001\022#\n" + + "\026workstation_launch_url\030\027 \001(\tB\003\340A\001\032\237\001\n" + "\024PrivateClusterConfig\022$\n" + "\027enable_private_endpoint\030\001 \001(\010B\003\340A\005\022\035\n" + "\020cluster_hostname\030\002 \001(\tB\003\340A\003\022#\n" + "\026service_attachment_uri\030\003 \001(\tB\003\340A\003\022\035\n" - + "\020allowed_projects\030\004 \003(\tB\003\340A\001\0322\n" + + "\020allowed_projects\030\004 \003(\tB\003\340A\001\032#\n" + + "\014DomainConfig\022\023\n" + + "\006domain\030\001 \001(\tB\003\340A\005\032+\n\r" + + "GatewayConfig\022\032\n\r" + + "http2_enabled\030\001 \001(\010B\003\340A\001\0322\n" + "\020AnnotationsEntry\022\013\n" + "\003key\030\001 \001(\t\022\r\n" + "\005value\030\002 \001(\t:\0028\001\032-\n" + "\013LabelsEntry\022\013\n" + + "\003key\030\001 \001(\t\022\r" + + "\n" + + "\005value\030\002 \001(\t:\0028\001\032+\n" + + "\tTagsEntry\022\013\n" + "\003key\030\001 \001(\t\022\r\n" + "\005value\030\002 \001(\t:\0028\001:\263\001\352A\257\001\n" - + ".workstations.googleapis.com/WorkstationCluster\022Qprojects/{project}/locations" - + "/{location}/workstationClusters/{worksta" - + "tion_cluster}*\023workstationClusters2\022workstationClusterR\001\001\"\302\036\n" - + "\021WorkstationConfig\022\014\n" - + "\004name\030\001 \001(\t\022\031\n" - + "\014display_name\030\002 \001(\tB\003\340A\001\022\020\n" - + "\003uid\030\003 \001(\tB\003\340A\003\022\030\n" + + ".workstations.googleapis.com/WorkstationCluster\022Qp" + + "rojects/{project}/locations/{location}/workstationClusters/{workstation_cluster}" + + "*\023workstationClusters2\022workstationClusterR\001\001\"\2352\n" + + "\021WorkstationConfig\022\021\n" + + "\004name\030\001 \001(\tB\003\340A\010\022\031\n" + + "\014display_name\030\002 \001(\tB\003\340A\001\022\030\n" + + "\003uid\030\003 \001(\tB\013\340A\003\342\214\317\327\010\002\010\001\022\030\n" + "\013reconciling\030\004 \001(\010B\003\340A\003\022^\n" + "\013annotations\030\005 \003(\0132D.google.cloud" + ".workstations.v1beta.WorkstationConfig.AnnotationsEntryB\003\340A\001\022T\n" @@ -315,28 +402,37 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\014idle_timeout\030\n" + " \001(\0132\031.google.protobuf.DurationB\003\340A\001\0227\n" + "\017running_timeout\030\013" - + " \001(\0132\031.google.protobuf.DurationB\003\340A\001\022K\n" + + " \001(\0132\031.google.protobuf.DurationB\003\340A\001\022$\n" + + "\027max_usable_workstations\030\034 \001(\005B\003\340A\001\022K\n" + "\004host\030\014" + " \001(\01328.google.cloud.workstations.v1beta.WorkstationConfig.HostB\003\340A\001\022l\n" + "\026persistent_directories\030\r" - + " \003(\0132G.google.clo" - + "ud.workstations.v1beta.WorkstationConfig.PersistentDirectoryB\003\340A\001\022j\n" - + "\025ephemeral_directories\030\026 \003(\0132F.google.cloud.workstat" - + "ions.v1beta.WorkstationConfig.EphemeralDirectoryB\003\340A\001\022U\n" - + "\tcontainer\030\016 \001(\0132=.googl" - + "e.cloud.workstations.v1beta.WorkstationConfig.ContainerB\003\340A\001\022f\n" - + "\016encryption_key\030\021 \001(\0132I.google.cloud.workstations.v1beta." - + "WorkstationConfig.CustomerEncryptionKeyB\003\340A\005\022a\n" - + "\020readiness_checks\030\023 \003(\0132B.google." - + "cloud.workstations.v1beta.WorkstationConfig.ReadinessCheckB\003\340A\001\022\035\n\r" + + " \003(\0132G.google.cloud" + + ".workstations.v1beta.WorkstationConfig.PersistentDirectoryB\003\340A\001\022j\n" + + "\025ephemeral_directories\030\026 \003(\0132F.google.cloud.workstatio" + + "ns.v1beta.WorkstationConfig.EphemeralDirectoryB\003\340A\001\022U\n" + + "\tcontainer\030\016 \001(\0132=.google." + + "cloud.workstations.v1beta.WorkstationConfig.ContainerB\003\340A\001\022f\n" + + "\016encryption_key\030\021 \001(\0132I.google.cloud.workstations.v1beta.Wo" + + "rkstationConfig.CustomerEncryptionKeyB\003\340A\005\022a\n" + + "\020readiness_checks\030\023 \003(\0132B.google.cl" + + "oud.workstations.v1beta.WorkstationConfig.ReadinessCheckB\003\340A\001\022\035\n\r" + "replica_zones\030\027 \003(\tB\006\340A\001\340A\005\022\025\n" - + "\010degraded\030\017 \001(\010B\003\340A\003\022+\n" - + "\n" + + "\010degraded\030\017 \001(\010B\003\340A\003\022+\n\n" + "conditions\030\020 \003(\0132\022.google.rpc.StatusB\003\340A\003\022\037\n" - + "\022enable_audit_agent\030\024 \001(\010B\003\340A\001\032\244\010\n" + + "\022enable_audit_agent\030\024 \001(\010B\003\340A\001\022Z\n" + + "\014http_options\030\025 \001(\0132?.google.cloud.workstati" + + "ons.v1beta.WorkstationConfig.HttpOptionsB\003\340A\001\022$\n" + + "\027disable_tcp_connections\030\030 \001(\010B\003\340A\001\022Y\n\r" + + "allowed_ports\030\031 \003(\0132=.google.clou" + + "d.workstations.v1beta.WorkstationConfig.PortRangeB\003\340A\001\022\032\n\r" + + "satisfies_pzs\030\032 \001(\010B\003\340A\003\022\032\n\r" + + "satisfies_pzi\030\033 \001(\010B\003\340A\003\0223\n" + + "&grant_workstation_admin_role_on_create\030\035 \001(\010B\003\340A\001\022\'\n" + + "\032enable_pushing_credentials\030\036 \001(\010B\003\340A\001\032\306\022\n" + "\004Host\022\\\n" - + "\014gce_instance\030\001 \001(\0132D.google.clou" - + "d.workstations.v1beta.WorkstationConfig.Host.GceInstanceH\000\032\263\007\n" + + "\014gce_instance\030\001 \001(\0132D.go" + + "ogle.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstanceH\000\032\325\021\n" + "\013GceInstance\022\031\n" + "\014machine_type\030\001 \001(\tB\003\340A\001\022\034\n" + "\017service_account\030\002 \001(\tB\003\340A\001\022#\n" @@ -346,14 +442,28 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\020pooled_instances\030\014 \001(\005B\003\340A\003\022(\n" + "\033disable_public_ip_addresses\030\006 \001(\010B\003\340A\001\022)\n" + "\034enable_nested_virtualization\030\007 \001(\010B\003\340A\001\022\205\001\n" - + "\030shielded_instance_config\030\010 \001(\0132^.google.cloud.workstations.v1beta.Wo" - + "rkstationConfig.Host.GceInstance.GceShieldedInstanceConfigB\003\340A\001\022\215\001\n" + + "\030shielded_instance_config\030\010 \001(\0132^.google.cloud.workstations." + + "v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfigB\003\340A\001\022\215\001\n" + "\034confidential_instance_config\030\n" - + " \001(\0132b.google.cloud.workstations.v1beta.WorkstationConfig.Host" - + ".GceInstance.GceConfidentialInstanceConfigB\003\340A\001\022\036\n" + + " \001(\0132b.google.cloud.workstations.v1beta.WorkstationCo" + + "nfig.Host.GceInstance.GceConfidentialInstanceConfigB\003\340A\001\022\036\n" + "\021boot_disk_size_gb\030\t \001(\005B\003\340A\001\022k\n" - + "\014accelerators\030\013 \003(\0132P.google.cloud.wor" - + "kstations.v1beta.WorkstationConfig.Host.GceInstance.AcceleratorB\003\340A\001\032\200\001\n" + + "\014accelerators\030\013 \003(\0132P.google." + + "cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.AcceleratorB\003\340A\001\022l\n" + + "\r" + + "boost_configs\030\031 \003(\0132P.google.cloud.work" + + "stations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfigB\003\340A\001\022\030\n" + + "\013disable_ssh\030\r" + + " \001(\010B\003\340A\001\022f\n" + + "\007vm_tags\030\016 \003(\0132P.google." + + "cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.VmTagsEntryB\003\340A\001\022{\n" + + "\024reservation_affinity\030\017 \001(\0132X.google.clo" + + "ud.workstations.v1beta.WorkstationConfig" + + ".Host.GceInstance.ReservationAffinityB\003\340A\001\022\037\n" + + "\022startup_script_uri\030\032 \001(\tB\003\340A\001\022z\n" + + "\021instance_metadata\030\033 \003(\0132Z.google.cloud.wo" + + "rkstations.v1beta.WorkstationConfig.Host" + + ".GceInstance.InstanceMetadataEntryB\003\340A\001\032\200\001\n" + "\031GceShieldedInstanceConfig\022\037\n" + "\022enable_secure_boot\030\001 \001(\010B\003\340A\001\022\030\n" + "\013enable_vtpm\030\002 \001(\010B\003\340A\001\022(\n" @@ -362,30 +472,76 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\033enable_confidential_compute\030\001 \001(\010B\003\340A\001\0324\n" + "\013Accelerator\022\021\n" + "\004type\030\001 \001(\tB\003\340A\001\022\022\n" - + "\005count\030\002 \001(\005B\003\340A\001B\010\n" - + "\006config\032\215\004\n" + + "\005count\030\002 \001(\005B\003\340A\001\032\206\003\n" + + "\013BoostConfig\022\017\n" + + "\002id\030\001 \001(\tB\003\340A\002\022\031\n" + + "\014machine_type\030\002 \001(\tB\003\340A\001\022k\n" + + "\014accelerators\030\003 \003(\0132P.google.cloud.wor" + + "kstations.v1beta.WorkstationConfig.Host.GceInstance.AcceleratorB\003\340A\001\022\036\n" + + "\021boot_disk_size_gb\030\004 \001(\005B\003\340A\001\022)\n" + + "\034enable_nested_virtualization\030\007 \001(\010B\003\340A\001\022\026\n" + + "\tpool_size\030\005 \001(\005B\003\340A\001\022{\n" + + "\024reservation_affinity\030\006 \001(\0132X.google.cloud.workstations.v1beta.Worksta" + + "tionConfig.Host.GceInstance.ReservationAffinityB\003\340A\001\032\244\002\n" + + "\023ReservationAffinity\022\204\001\n" + + "\030consume_reservation_type\030\001 \001(\0162].google" + + ".cloud.workstations.v1beta.WorkstationCo" + + "nfig.Host.GceInstance.ReservationAffinity.TypeB\003\340A\001\022\020\n" + + "\003key\030\002 \001(\tB\003\340A\001\022\023\n" + + "\006values\030\003 \003(\tB\003\340A\001\"_\n" + + "\004Type\022\024\n" + + "\020TYPE_UNSPECIFIED\020\000\022\022\n" + + "\016NO_RESERVATION\020\001\022\023\n" + + "\017ANY_RESERVATION\020\002\022\030\n" + + "\024SPECIFIC_RESERVATION\020\003\032-\n" + + "\013VmTagsEntry\022\013\n" + + "\003key\030\001 \001(\t\022\r\n" + + "\005value\030\002 \001(\t:\0028\001\0327\n" + + "\025InstanceMetadataEntry\022\013\n" + + "\003key\030\001 \001(\t\022\r\n" + + "\005value\030\002 \001(\t:\0028\001B\010\n" + + "\006config\032\363\010\n" + "\023PersistentDirectory\022s\n" - + "\006gce_pd\030\002 \001(\0132a.google.cloud.workst" + + "\006gce_pd\030\002 \001(\0132a.google.cloud.wor" + + "kstations.v1beta.WorkstationConfig.Persi" + + "stentDirectory.GceRegionalPersistentDiskH\000\022~\n" + + "\006gce_hd\030\003 \001(\0132l.google.cloud.workst" + "ations.v1beta.WorkstationConfig.Persiste" - + "ntDirectory.GceRegionalPersistentDiskH\000\022\027\n\n" - + "mount_path\030\001 \001(\tB\003\340A\001\032\325\002\n" + + "ntDirectory.GceHyperdiskBalancedHighAvailabilityH\000\022\027\n\n" + + "mount_path\030\001 \001(\tB\003\340A\001\032\250\003\n" + "\031GceRegionalPersistentDisk\022\024\n" - + "\007size_gb\030\001 \001(\005B\003\340A\001\022\024\n" + + "\007size_gb\030\001 \001(\005B\003\340A\001\022\030\n" + + "\013max_size_gb\030\007 \001(\005B\003\340A\001\022\024\n" + "\007fs_type\030\002 \001(\tB\003\340A\001\022\026\n" + "\tdisk_type\030\003 \001(\tB\003\340A\001\022\034\n" + "\017source_snapshot\030\005 \001(\tB\003\340A\001\022\214\001\n" - + "\016reclaim_policy\030\004 \001(\0162o.google.cloud.worksta" - + "tions.v1beta.WorkstationConfig.Persisten" - + "tDirectory.GceRegionalPersistentDisk.ReclaimPolicyB\003\340A\001\"G\n\r" + + "\016reclaim_policy\030\004 \001(\0162o.google.cloud.workstatio" + + "ns.v1beta.WorkstationConfig.PersistentDi" + + "rectory.GceRegionalPersistentDisk.ReclaimPolicyB\003\340A\001\0227\n" + + "\017archive_timeout\030\006" + + " \001(\0132\031.google.protobuf.DurationB\003\340A\001\"G\n\r" + + "ReclaimPolicy\022\036\n" + + "\032RECLAIM_POLICY_UNSPECIFIED\020\000\022\n" + + "\n" + + "\006DELETE\020\001\022\n\n" + + "\006RETAIN\020\002\032\220\003\n" + + "$GceHyperdiskBalancedHighAvailability\022\024\n" + + "\007size_gb\030\001 \001(\005B\003\340A\001\022\030\n" + + "\013max_size_gb\030\005 \001(\005B\003\340A\001\022\034\n" + + "\017source_snapshot\030\002 \001(\tB\003\340A\001\022\227\001\n" + + "\016reclaim_policy\030\003 \001(\0162z.google.cloud.workstations.v1bet" + + "a.WorkstationConfig.PersistentDirectory." + + "GceHyperdiskBalancedHighAvailability.ReclaimPolicyB\003\340A\001\0227\n" + + "\017archive_timeout\030\004" + + " \001(\0132\031.google.protobuf.DurationB\003\340A\001\"G\n\r" + "ReclaimPolicy\022\036\n" + "\032RECLAIM_POLICY_UNSPECIFIED\020\000\022\n\n" + "\006DELETE\020\001\022\n\n" + "\006RETAIN\020\002B\020\n" + "\016directory_type\032\251\002\n" + "\022EphemeralDirectory\022j\n" - + "\006gce_pd\030\003 \001(\0132X.google.cloud" - + ".workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDiskH\000\022\027\n" - + "\n" + + "\006gce_pd\030\003 \001(\0132X.google.cloud.workstations.v1beta.Wo" + + "rkstationConfig.EphemeralDirectory.GcePersistentDiskH\000\022\027\n\n" + "mount_path\030\001 \001(\tB\003\340A\002\032|\n" + "\021GcePersistentDisk\022\026\n" + "\tdisk_type\030\001 \001(\tB\003\340A\001\022\034\n" @@ -397,8 +553,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\005image\030\001 \001(\tB\003\340A\001\022\024\n" + "\007command\030\002 \003(\tB\003\340A\001\022\021\n" + "\004args\030\003 \003(\tB\003\340A\001\022X\n" - + "\003env\030\004 \003(\0132F.google.cloud.workstatio" - + "ns.v1beta.WorkstationConfig.Container.EnvEntryB\003\340A\001\022\030\n" + + "\003env\030\004 \003(\0132F.google" + + ".cloud.workstations.v1beta.WorkstationConfig.Container.EnvEntryB\003\340A\001\022\030\n" + "\013working_dir\030\005 \001(\tB\003\340A\001\022\030\n" + "\013run_as_user\030\006 \001(\005B\003\340A\001\032*\n" + "\010EnvEntry\022\013\n" @@ -409,38 +565,72 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\027kms_key_service_account\030\002 \001(\tB\003\340A\005\0326\n" + "\016ReadinessCheck\022\021\n" + "\004path\030\001 \001(\tB\003\340A\001\022\021\n" - + "\004port\030\002 \001(\005B\003\340A\001\0322\n" + + "\004port\030\002 \001(\005B\003\340A\001\032w\n" + + "\013HttpOptions\022<\n" + + "/allowed_unauthenticated_cors_preflight_requests\030\001" + + " \001(\010B\003\340A\001\022*\n" + + "\035disable_localhost_replacement\030\002 \001(\010B\003\340A\001\0322\n" + + "\tPortRange\022\022\n" + + "\005first\030\001 \001(\005B\003\340A\002\022\021\n" + + "\004last\030\002 \001(\005B\003\340A\002\0322\n" + "\020AnnotationsEntry\022\013\n" + "\003key\030\001 \001(\t\022\r\n" + "\005value\030\002 \001(\t:\0028\001\032-\n" + "\013LabelsEntry\022\013\n" - + "\003key\030\001 \001(\t\022\r\n" + + "\003key\030\001 \001(\t\022\r" + + "\n" + "\005value\030\002 \001(\t:\0028\001:\330\001\352A\324\001\n" - + "-workstations.googleapis.com/WorkstationConfi" - + "g\022yprojects/{project}/locations/{location}/workstationClusters/{workstation_clus" - + "ter}/workstationConfigs/{workstation_con" - + "fig}*\022workstationConfigs2\021workstationConfigR\001\001\"\376\010\n" - + "\013Workstation\022\014\n" - + "\004name\030\001 \001(\t\022\031\n" - + "\014display_name\030\002 \001(\tB\003\340A\001\022\020\n" - + "\003uid\030\003 \001(\tB\003\340A\003\022\030\n" + + "-workstations.googleapis.com/WorkstationConfig\022yproject" + + "s/{project}/locations/{location}/workstationClusters/{workstation_cluster}/works" + + "tationConfigs/{workstation_config}*\022workstationConfigs2\021workstationConfigR\001\001\"\326\017\n" + + "\013Workstation\022\021\n" + + "\004name\030\001 \001(\tB\003\340A\010\022\031\n" + + "\014display_name\030\002 \001(\tB\003\340A\001\022\030\n" + + "\003uid\030\003 \001(\tB\013\340A\003\342\214\317\327\010\002\010\001\022\030\n" + "\013reconciling\030\004 \001(\010B\003\340A\003\022X\n" - + "\013annotations\030\005" - + " \003(\0132>.google.cloud.workstations.v1beta.Workstation.AnnotationsEntryB\003\340A\001\022N\n" + + "\013annotations\030\005 \003(\0132>.google.cloud.workstations." + + "v1beta.Workstation.AnnotationsEntryB\003\340A\001\022N\n" + "\006labels\030\r" - + " \003(\01329.google.cloud.workstations.v1beta.Workstation.LabelsEntryB\003\340A\001\0224\n" + + " \003(\01329.google.cloud.workstat" + + "ions.v1beta.Workstation.LabelsEntryB\003\340A\001\0224\n" + "\013create_time\030\006 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0224\n" + "\013update_time\030\007" + " \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0223\n\n" + "start_time\030\016 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0224\n" + "\013delete_time\030\010" + " \001(\0132\032.google.protobuf.TimestampB\003\340A\003\022\021\n" - + "\004etag\030\t \001(\tB\003\340A\001\022G\n" + + "\004etag\030\t \001(\tB\003\340A\001\022q\n" + + "\026persistent_directories\030\031 \003(\0132L.google.clou" + + "d.workstations.v1beta.Workstation.WorkstationPersistentDirectoryB\003\340A\001\022G\n" + "\005state\030\n" + " \001(\01623.google.cloud.workstations.v1beta.Workstation.StateB\003\340A\003\022\021\n" + "\004host\030\013 \001(\tB\003\340A\003\022H\n" + "\003env\030\014" - + " \003(\01326.google.cloud.workstations.v1beta.Workstation.EnvEntryB\003\340A\001\0322\n" + + " \003(\01326.google.cloud.workstations.v1beta.Workstation.EnvEntryB\003\340A\001\022\024\n" + + "\007kms_key\030\017 \001(\tB\003\340A\003\022`\n\r" + + "boost_configs\030\020 \003(\013" + + "2D.google.cloud.workstations.v1beta.Workstation.WorkstationBoostConfigB\003\340A\003\022\037\n" + + "\022source_workstation\030\021 \001(\tB\003\340A\001\022\032\n\r" + + "satisfies_pzs\030\022 \001(\010B\003\340A\003\022\032\n\r" + + "satisfies_pzi\030\023 \001(\010B\003\340A\003\022W\n" + + "\014runtime_host\030\025 \001(\01329.google.clou" + + "d.workstations.v1beta.Workstation.RuntimeHostB\006\340A\001\340A\003\022\025\n" + + "\010degraded\030\027 \001(\010B\003\340A\003\022+\n\n" + + "conditions\030\030 \003(\0132\022.google.rpc.StatusB\003\340A\003\032O\n" + + "\036WorkstationPersistentDirectory\022\027\n\n" + + "mount_path\030\002 \001(\tB\003\340A\001\022\024\n" + + "\007size_gb\030\003 \001(\005B\003\340A\001\032?\n" + + "\026WorkstationBoostConfig\022\017\n" + + "\002id\030\001 \001(\tB\003\340A\003\022\024\n" + + "\007running\030\002 \001(\010B\003\340A\003\032\325\001\n" + + "\013RuntimeHost\022f\n" + + "\021gce_instance_host\030\001 \001(\0132I.google." + + "cloud.workstations.v1beta.Workstation.RuntimeHost.GceInstanceHostH\000\032Q\n" + + "\017GceInstanceHost\022\024\n" + + "\004name\030\001 \001(\tB\006\340A\001\340A\003\022\022\n" + + "\002id\030\002 \001(\tB\006\340A\001\340A\003\022\024\n" + + "\004zone\030\003 \001(\tB\006\340A\001\340A\003B\013\n" + + "\thost_type\0322\n" + "\020AnnotationsEntry\022\013\n" + "\003key\030\001 \001(\t\022\r\n" + "\005value\030\002 \001(\t:\0028\001\032-\n" @@ -454,38 +644,41 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\021STATE_UNSPECIFIED\020\000\022\022\n" + "\016STATE_STARTING\020\001\022\021\n\r" + "STATE_RUNNING\020\002\022\022\n" - + "\016STATE_STOPPING\020\003\022\021\n\r" + + "\016STATE_STOPPING\020\003\022\021\n" + + "\r" + "STATE_STOPPED\020\004:\342\001\352A\336\001\n" - + "\'workstations.googleapis.com/Workstation\022\224\001projects/{project}/" - + "locations/{location}/workstationClusters/{workstation_cluster}/workstationConfig" - + "s/{workstation_config}/workstations/{wor" - + "kstation}*\014workstations2\013workstationR\001\001\"d\n" + + "\'workstations.googleapis.com/Workstation\022\224\001projects/{pro" + + "ject}/locations/{location}/workstationClusters/{workstation_cluster}/workstation" + + "Configs/{workstation_config}/workstation" + + "s/{workstation}*\014workstations2\013workstationR\001\001\"d\n" + "\034GetWorkstationClusterRequest\022D\n" + "\004name\030\001 \001(\tB6\340A\002\372A0\n" - + ".workstations.googleapis.com/WorkstationCluster\"\231\001\n" + + ".workstations.googleapis.com/WorkstationCluster\"\256\001\n" + "\036ListWorkstationClustersRequest\022F\n" - + "\006parent\030\001 \001(\tB6\340A\002\372A0" - + "\022.workstations.googleapis.com/WorkstationCluster\022\026\n" + + "\006parent\030\001 \001(\tB6" + + "\340A\002\372A0\022.workstations.googleapis.com/WorkstationCluster\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\"\243\001\n" + + "page_token\030\003 \001(\tB\003\340A\001\022\023\n" + + "\006filter\030\004 \001(\tB\003\340A\001\"\243\001\n" + "\037ListWorkstationClustersResponse\022R\n" - + "\024workstation_clusters\030\001 " - + "\003(\01324.google.cloud.workstations.v1beta.WorkstationCluster\022\027\n" + + "\024workstation_clusters\030\001 \003(\01324.google." + + "cloud.workstations.v1beta.WorkstationCluster\022\027\n" + "\017next_page_token\030\002 \001(\t\022\023\n" + "\013unreachable\030\003 \003(\t\"\202\002\n" + "\037CreateWorkstationClusterRequest\022F\n" - + "\006parent\030\001 \001(\tB6\340A\002" - + "\372A0\022.workstations.googleapis.com/WorkstationCluster\022#\n" + + "\006parent\030\001 \001(\tB6\340A\002\372A0\022.workstat" + + "ions.googleapis.com/WorkstationCluster\022#\n" + "\026workstation_cluster_id\030\002 \001(\tB\003\340A\002\022V\n" - + "\023workstation_cluster\030\003 \001(\01324." - + "google.cloud.workstations.v1beta.WorkstationClusterB\003\340A\002\022\032\n\r" + + "\023workstation_cluster\030\003 \001(\01324.google.cloud." + + "workstations.v1beta.WorkstationClusterB\003\340A\002\022\032\n\r" + "validate_only\030\004 \001(\010B\003\340A\001\"\347\001\n" + "\037UpdateWorkstationClusterRequest\022V\n" - + "\023workstation_cluster\030\001 \001(\01324.google.c" - + "loud.workstations.v1beta.WorkstationClusterB\003\340A\002\0224\n" + + "\023workstation_cluster\030\001" + + " \001(\01324.google.cloud.workstations.v1beta.WorkstationClusterB\003\340A\002\0224\n" + "\013update_mask\030\002" + " \001(\0132\032.google.protobuf.FieldMaskB\003\340A\002\022\032\n\r" - + "validate_only\030\003 \001(\010B\003\340A\001\022\032\n\r" + + "validate_only\030\003 \001(\010B\003\340A\001\022\032\n" + + "\r" + "allow_missing\030\004 \001(\010B\003\340A\001\"\252\001\n" + "\037DeleteWorkstationClusterRequest\022D\n" + "\004name\030\001 \001(\tB6\340A\002\372A0\n" @@ -495,12 +688,13 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\005force\030\004 \001(\010B\003\340A\001\"b\n" + "\033GetWorkstationConfigRequest\022C\n" + "\004name\030\001 \001(\tB5\340A\002\372A/\n" - + "-workstations.googleapis.com/WorkstationConfig\"\230\001\n" + + "-workstations.googleapis.com/WorkstationConfig\"\255\001\n" + "\035ListWorkstationConfigsRequest\022F\n" + "\006parent\030\001 \001(\tB6\340A\002\372A0\n" + ".workstations.googleapis.com/WorkstationCluster\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\"\240\001\n" + + "page_token\030\003 \001(\tB\003\340A\001\022\023\n" + + "\006filter\030\004 \001(\tB\003\340A\001\"\240\001\n" + "\036ListWorkstationConfigsResponse\022P\n" + "\023workstation_configs\030\001" + " \003(\01323.google.cloud.workstations.v1beta.WorkstationConfig\022\027\n" @@ -512,8 +706,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\tpage_size\030\002 \001(\005B\003\340A\001\022\027\n\n" + "page_token\030\003 \001(\tB\003\340A\001\"\246\001\n" + "$ListUsableWorkstationConfigsResponse\022P\n" - + "\023workstation_configs\030\001" - + " \003(\01323.google.cloud.workstations.v1beta.WorkstationConfig\022\027\n" + + "\023workstation_configs\030\001 \003(\01323.google.cl" + + "oud.workstations.v1beta.WorkstationConfig\022\027\n" + "\017next_page_token\030\002 \001(\t\022\023\n" + "\013unreachable\030\003 \003(\t\"\376\001\n" + "\036CreateWorkstationConfigRequest\022F\n" @@ -524,8 +718,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + " \001(\01323.google.cloud.workstations.v1beta.WorkstationConfigB\003\340A\002\022\032\n\r" + "validate_only\030\004 \001(\010B\003\340A\001\"\344\001\n" + "\036UpdateWorkstationConfigRequest\022T\n" - + "\022workstation_config\030\001 \001(\0132" - + "3.google.cloud.workstations.v1beta.WorkstationConfigB\003\340A\002\0224\n" + + "\022workstation_config\030\001" + + " \001(\01323.google.cloud.workstations.v1beta.WorkstationConfigB\003\340A\002\0224\n" + "\013update_mask\030\002" + " \001(\0132\032.google.protobuf.FieldMaskB\003\340A\002\022\032\n\r" + "validate_only\030\003 \001(\010B\003\340A\001\022\032\n\r" @@ -538,12 +732,14 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\005force\030\004 \001(\010B\003\340A\001\"V\n" + "\025GetWorkstationRequest\022=\n" + "\004name\030\001 \001(\tB/\340A\002\372A)\n" - + "\'workstations.googleapis.com/Workstation\"\221\001\n" + + "\'workstations.googleapis.com/Workstation\"\246\001\n" + "\027ListWorkstationsRequest\022E\n" + "\006parent\030\001 \001(\tB5\340A\002\372A/\n" + "-workstations.googleapis.com/WorkstationConfig\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\"\227\001\n" + + "\tpage_size\030\002 \001(\005B\003\340A\001\022\027\n" + + "\n" + + "page_token\030\003 \001(\tB\003\340A\001\022\023\n" + + "\006filter\030\004 \001(\tB\003\340A\001\"\227\001\n" + "\030ListWorkstationsResponse\022C\n" + "\014workstations\030\001" + " \003(\0132-.google.cloud.workstations.v1beta.Workstation\022\034\n" @@ -567,8 +763,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + " \001(\0132-.google.cloud.workstations.v1beta.WorkstationB\003\340A\002\022\032\n\r" + "validate_only\030\004 \001(\010B\003\340A\001\"\321\001\n" + "\030UpdateWorkstationRequest\022G\n" - + "\013workstation\030\001 \001(\0132-.googl" - + "e.cloud.workstations.v1beta.WorkstationB\003\340A\002\0224\n" + + "\013workstation\030\001" + + " \001(\0132-.google.cloud.workstations.v1beta.WorkstationB\003\340A\002\0224\n" + "\013update_mask\030\002" + " \001(\0132\032.google.protobuf.FieldMaskB\003\340A\002\022\032\n\r" + "validate_only\030\003 \001(\010B\003\340A\001\022\032\n\r" @@ -577,26 +773,40 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\004name\030\001 \001(\tB/\340A\002\372A)\n" + "\'workstations.googleapis.com/Workstation\022\032\n\r" + "validate_only\030\002 \001(\010B\003\340A\001\022\021\n" - + "\004etag\030\003 \001(\tB\003\340A\001\"\207\001\n" + + "\004etag\030\003 \001(\tB\003\340A\001\"\242\001\n" + "\027StartWorkstationRequest\022=\n" + "\004name\030\001 \001(\tB/\340A\002\372A)\n" + "\'workstations.googleapis.com/Workstation\022\032\n\r" + "validate_only\030\002 \001(\010B\003\340A\001\022\021\n" - + "\004etag\030\003 \001(\tB\003\340A\001\"\206\001\n" + + "\004etag\030\003 \001(\tB\003\340A\001\022\031\n" + + "\014boost_config\030\004 \001(\tB\003\340A\001\"\206\001\n" + "\026StopWorkstationRequest\022=\n" + "\004name\030\001 \001(\tB/\340A\002\372A)\n" + "\'workstations.googleapis.com/Workstation\022\032\n\r" + "validate_only\030\002 \001(\010B\003\340A\001\022\021\n" - + "\004etag\030\003 \001(\tB\003\340A\001\"\315\001\n" + + "\004etag\030\003 \001(\tB\003\340A\001\"\340\001\n" + "\032GenerateAccessTokenRequest\0221\n" + "\013expire_time\030\002 \001(\0132\032.google.protobuf.TimestampH\000\022(\n" + "\003ttl\030\003 \001(\0132\031.google.protobuf.DurationH\000\022D\n" + "\013workstation\030\001 \001(\tB/\340A\002\372A)\n" - + "\'workstations.googleapis.com/WorkstationB\014\n\n" + + "\'workstations.googleapis.com/Workstation\022\021\n" + + "\004port\030\004 \001(\005B\003\340A\001B\014\n" + + "\n" + "expiration\"d\n" + "\033GenerateAccessTokenResponse\022\024\n" + "\014access_token\030\001 \001(\t\022/\n" - + "\013expire_time\030\002 \001(\0132\032.google.protobuf.Timestamp\"\200\002\n" + + "\013expire_time\030\002 \001(\0132\032.google.protobuf.Timestamp\"\332\002\n" + + "\026PushCredentialsRequest\022D\n" + + "\013workstation\030\001 \001(\tB/\340A\002\372A)\n" + + "\'workstations.googleapis.com/Workstation\022q\n" + + "\037application_default_credentials\030\002 \001(\0132C.google.cloud.workstations." + + "v1beta.PushCredentialsRequest.OAuthTokenB\003\340A\001\032\206\001\n\n" + + "OAuthToken\022\022\n" + + "\005email\030\001 \001(\tB\003\340A\001\022\023\n" + + "\006scopes\030\002 \001(\tB\003\340A\001\022\031\n" + + "\014access_token\030\003 \001(\tB\003\340A\002\0224\n" + + "\013expire_time\030\004 \001(\0132\032.google.protobuf.TimestampB\003\340A\001\"\031\n" + + "\027PushCredentialsMetadata\"\200\002\n" + "\021OperationMetadata\0224\n" + "\013create_time\030\001 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0221\n" + "\010end_time\030\002 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\022\023\n" @@ -604,124 +814,157 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\004verb\030\004 \001(\tB\003\340A\003\022\033\n" + "\016status_message\030\005 \001(\tB\003\340A\003\022#\n" + "\026requested_cancellation\030\006 \001(\010B\003\340A\003\022\030\n" - + "\013api_version\030\007 \001(\tB\003\340A\0032\337+\n" + + "\013api_version\030\007 \001(\tB\003\340A\0032\207.\n" + "\014Workstations\022\331\001\n" - + "\025GetWorkstationCluster\022>.google.cloud.work" - + "stations.v1beta.GetWorkstationClusterRequest\0324.google.cloud.workstations.v1beta." - + "WorkstationCluster\"J\332A\004name\202\323\344\223\002=\022;/v1be" - + "ta/{name=projects/*/locations/*/workstationClusters/*}\022\354\001\n" - + "\027ListWorkstationClusters\022@.google.cloud.workstations.v1beta.Li" - + "stWorkstationClustersRequest\032A.google.cloud.workstations.v1beta.ListWorkstationC" - + "lustersResponse\"L\332A\006parent\202\323\344\223\002=\022;/v1bet" - + "a/{parent=projects/*/locations/*}/workstationClusters\022\265\002\n" - + "\030CreateWorkstationCluster\022A.google.cloud.workstations.v1beta.Cr" - + "eateWorkstationClusterRequest\032\035.google.longrunning.Operation\"\266\001\312A\'\n" - + "\022WorkstationCluster\022\021OperationMetadata\332A1parent,works" - + "tation_cluster,workstation_cluster_id\202\323\344" - + "\223\002R\";/v1beta/{parent=projects/*/location" - + "s/*}/workstationClusters:\023workstation_cluster\022\267\002\n" - + "\030UpdateWorkstationCluster\022A.google.cloud.workstations.v1beta.UpdateWork" - + "stationClusterRequest\032\035.google.longrunning.Operation\"\270\001\312A\'\n" - + "\022WorkstationCluster\022\021OperationMetadata\332A\037workstation_cluster," - + "update_mask\202\323\344\223\002f2O/v1beta/{workstation_" - + "cluster.name=projects/*/locations/*/work" - + "stationClusters/*}:\023workstation_cluster\022\362\001\n" - + "\030DeleteWorkstationCluster\022A.google.cloud.workstations.v1beta.DeleteWorkstatio" - + "nClusterRequest\032\035.google.longrunning.Operation\"t\312A\'\n" - + "\022WorkstationCluster\022\021Operati" - + "onMetadata\332A\004name\202\323\344\223\002=*;/v1beta/{name=p" - + "rojects/*/locations/*/workstationClusters/*}\022\353\001\n" - + "\024GetWorkstationConfig\022=.google.cloud.workstations.v1beta.GetWorkstationC" - + "onfigRequest\0323.google.cloud.workstations" - + ".v1beta.WorkstationConfig\"_\332A\004name\202\323\344\223\002R" - + "\022P/v1beta/{name=projects/*/locations/*/w" - + "orkstationClusters/*/workstationConfigs/*}\022\376\001\n" - + "\026ListWorkstationConfigs\022?.google.cloud.workstations.v1beta.ListWorkstation" - + "ConfigsRequest\032@.google.cloud.workstations.v1beta.ListWorkstationConfigsResponse" - + "\"a\332A\006parent\202\323\344\223\002R\022P/v1beta/{parent=proje" - + "cts/*/locations/*/workstationClusters/*}/workstationConfigs\022\233\002\n" - + "\034ListUsableWorkstationConfigs\022E.google.cloud.workstations" - + ".v1beta.ListUsableWorkstationConfigsRequest\032F.google.cloud.workstations.v1beta.L" - + "istUsableWorkstationConfigsResponse\"l\332A\006" - + "parent\202\323\344\223\002]\022[/v1beta/{parent=projects/*" - + "/locations/*/workstationClusters/*}/workstationConfigs:listUsable\022\304\002\n" - + "\027CreateWorkstationConfig\022@.google.cloud.workstation" - + "s.v1beta.CreateWorkstationConfigRequest\032\035.google.longrunning.Operation\"\307\001\312A&\n" - + "\021WorkstationConfig\022\021OperationMetadata\332A/par" - + "ent,workstation_config,workstation_confi" - + "g_id\202\323\344\223\002f\"P/v1beta/{parent=projects/*/l" - + "ocations/*/workstationClusters/*}/workstationConfigs:\022workstation_config\022\306\002\n" - + "\027UpdateWorkstationConfig\022@.google.cloud.work" - + "stations.v1beta.UpdateWorkstationConfigR" - + "equest\032\035.google.longrunning.Operation\"\311\001\312A&\n" - + "\021WorkstationConfig\022\021OperationMetadat" - + "a\332A\036workstation_config,update_mask\202\323\344\223\002y" - + "2c/v1beta/{workstation_config.name=projects/*/locations/*/workstationClusters/*/" - + "workstationConfigs/*}:\022workstation_config\022\205\002\n" - + "\027DeleteWorkstationConfig\022@.google.cloud.workstations.v1beta.DeleteWorkstati" - + "onConfigRequest\032\035.google.longrunning.Operation\"\210\001\312A&\n" - + "\021WorkstationConfig\022\021Operati" - + "onMetadata\332A\004name\202\323\344\223\002R*P/v1beta/{name=p" - + "rojects/*/locations/*/workstationClusters/*/workstationConfigs/*}\022\350\001\n" - + "\016GetWorkstation\0227.google.cloud.workstations.v1beta." - + "GetWorkstationRequest\032-.google.cloud.wor" - + "kstations.v1beta.Workstation\"n\332A\004name\202\323\344" - + "\223\002a\022_/v1beta/{name=projects/*/locations/" - + "*/workstationClusters/*/workstationConfigs/*/workstations/*}\022\373\001\n" - + "\020ListWorkstations\0229.google.cloud.workstations.v1beta.Lis" - + "tWorkstationsRequest\032:.google.cloud.workstations.v1beta.ListWorkstationsResponse" - + "\"p\332A\006parent\202\323\344\223\002a\022_/v1beta/{parent=proje" - + "cts/*/locations/*/workstationClusters/*/workstationConfigs/*}/workstations\022\230\002\n" - + "\026ListUsableWorkstations\022?.google.cloud.wor" - + "kstations.v1beta.ListUsableWorkstationsRequest\032@.google.cloud.workstations.v1bet" - + "a.ListUsableWorkstationsResponse\"{\332A\006par" - + "ent\202\323\344\223\002l\022j/v1beta/{parent=projects/*/lo" + + "\025GetWorkstationCluster\022>.google.cloud.workstations.v1beta.GetWorkstatio" + + "nClusterRequest\0324.google.cloud.workstati" + + "ons.v1beta.WorkstationCluster\"J\332A\004name\202\323" + + "\344\223\002=\022;/v1beta/{name=projects/*/locations/*/workstationClusters/*}\022\354\001\n" + + "\027ListWorkstationClusters\022@.google.cloud.workstation" + + "s.v1beta.ListWorkstationClustersRequest\032", + "A.google.cloud.workstations.v1beta.ListW" + + "orkstationClustersResponse\"L\332A\006parent\202\323\344" + + "\223\002=\022;/v1beta/{parent=projects/*/location" + + "s/*}/workstationClusters\022\265\002\n\030CreateWorks" + + "tationCluster\022A.google.cloud.workstation" + + "s.v1beta.CreateWorkstationClusterRequest" + + "\032\035.google.longrunning.Operation\"\266\001\312A\'\n\022W" + + "orkstationCluster\022\021OperationMetadata\332A1p" + + "arent,workstation_cluster,workstation_cl" + + "uster_id\202\323\344\223\002R\";/v1beta/{parent=projects" + + "/*/locations/*}/workstationClusters:\023wor" + + "kstation_cluster\022\267\002\n\030UpdateWorkstationCl" + + "uster\022A.google.cloud.workstations.v1beta" + + ".UpdateWorkstationClusterRequest\032\035.googl" + + "e.longrunning.Operation\"\270\001\312A\'\n\022Workstati" + + "onCluster\022\021OperationMetadata\332A\037workstati" + + "on_cluster,update_mask\202\323\344\223\002f2O/v1beta/{w" + + "orkstation_cluster.name=projects/*/locat" + + "ions/*/workstationClusters/*}:\023workstati" + + "on_cluster\022\362\001\n\030DeleteWorkstationCluster\022" + + "A.google.cloud.workstations.v1beta.Delet" + + "eWorkstationClusterRequest\032\035.google.long" + + "running.Operation\"t\312A\'\n\022WorkstationClust" + + "er\022\021OperationMetadata\332A\004name\202\323\344\223\002=*;/v1b" + + "eta/{name=projects/*/locations/*/worksta" + + "tionClusters/*}\022\353\001\n\024GetWorkstationConfig" + + "\022=.google.cloud.workstations.v1beta.GetW" + + "orkstationConfigRequest\0323.google.cloud.w" + + "orkstations.v1beta.WorkstationConfig\"_\332A" + + "\004name\202\323\344\223\002R\022P/v1beta/{name=projects/*/lo" + "cations/*/workstationClusters/*/workstat" - + "ionConfigs/*}/workstations:listUsable\022\254\002\n" - + "\021CreateWorkstation\022:.google.cloud.works" - + "tations.v1beta.CreateWorkstationRequest\032\035.google.longrunning.Operation\"\273\001\312A" - + " \n" - + "\013Workstation\022\021OperationMetadata\332A!parent,wo" - + "rkstation,workstation_id\202\323\344\223\002n\"_/v1beta/" - + "{parent=projects/*/locations/*/workstati" - + "onClusters/*/workstationConfigs/*}/workstations:\013workstation\022\256\002\n" - + "\021UpdateWorkstation\022:.google.cloud.workstations.v1beta.Up" - + "dateWorkstationRequest\032\035.google.longrunning.Operation\"\275\001\312A \n" - + "\013Workstation\022\021OperationMetadata\332A\027workstation,update_mask\202\323\344" - + "\223\002z2k/v1beta/{workstation.name=projects/*/locations/*/workstationClusters/*/work" - + "stationConfigs/*/workstations/*}:\013workstation\022\202\002\n" - + "\021DeleteWorkstation\022:.google.cloud.workstations.v1beta.DeleteWorkstation" - + "Request\032\035.google.longrunning.Operation\"\221\001\312A \n" - + "\013Workstation\022\021OperationMetadata\332A\004n" - + "ame\202\323\344\223\002a*_/v1beta/{name=projects/*/loca" - + "tions/*/workstationClusters/*/workstationConfigs/*/workstations/*}\022\211\002\n" - + "\020StartWorkstation\0229.google.cloud.workstations.v1be" - + "ta.StartWorkstationRequest\032\035.google.long", - "running.Operation\"\232\001\312A \n\013Workstation\022\021Op" - + "erationMetadata\332A\004name\202\323\344\223\002j\"e/v1beta/{n" - + "ame=projects/*/locations/*/workstationCl" - + "usters/*/workstationConfigs/*/workstatio" - + "ns/*}:start:\001*\022\206\002\n\017StopWorkstation\0228.goo" - + "gle.cloud.workstations.v1beta.StopWorkst" - + "ationRequest\032\035.google.longrunning.Operat" - + "ion\"\231\001\312A \n\013Workstation\022\021OperationMetadat" - + "a\332A\004name\202\323\344\223\002i\"d/v1beta/{name=projects/*" + + "ionConfigs/*}\022\376\001\n\026ListWorkstationConfigs" + + "\022?.google.cloud.workstations.v1beta.List" + + "WorkstationConfigsRequest\032@.google.cloud" + + ".workstations.v1beta.ListWorkstationConf" + + "igsResponse\"a\332A\006parent\202\323\344\223\002R\022P/v1beta/{p" + + "arent=projects/*/locations/*/workstation" + + "Clusters/*}/workstationConfigs\022\233\002\n\034ListU" + + "sableWorkstationConfigs\022E.google.cloud.w" + + "orkstations.v1beta.ListUsableWorkstation" + + "ConfigsRequest\032F.google.cloud.workstatio" + + "ns.v1beta.ListUsableWorkstationConfigsRe" + + "sponse\"l\332A\006parent\202\323\344\223\002]\022[/v1beta/{parent" + + "=projects/*/locations/*/workstationClust" + + "ers/*}/workstationConfigs:listUsable\022\304\002\n" + + "\027CreateWorkstationConfig\022@.google.cloud." + + "workstations.v1beta.CreateWorkstationCon" + + "figRequest\032\035.google.longrunning.Operatio" + + "n\"\307\001\312A&\n\021WorkstationConfig\022\021OperationMet" + + "adata\332A/parent,workstation_config,workst" + + "ation_config_id\202\323\344\223\002f\"P/v1beta/{parent=p" + + "rojects/*/locations/*/workstationCluster" + + "s/*}/workstationConfigs:\022workstation_con" + + "fig\022\306\002\n\027UpdateWorkstationConfig\022@.google" + + ".cloud.workstations.v1beta.UpdateWorksta" + + "tionConfigRequest\032\035.google.longrunning.O" + + "peration\"\311\001\312A&\n\021WorkstationConfig\022\021Opera" + + "tionMetadata\332A\036workstation_config,update" + + "_mask\202\323\344\223\002y2c/v1beta/{workstation_config" + + ".name=projects/*/locations/*/workstation" + + "Clusters/*/workstationConfigs/*}:\022workst" + + "ation_config\022\205\002\n\027DeleteWorkstationConfig" + + "\022@.google.cloud.workstations.v1beta.Dele" + + "teWorkstationConfigRequest\032\035.google.long" + + "running.Operation\"\210\001\312A&\n\021WorkstationConf" + + "ig\022\021OperationMetadata\332A\004name\202\323\344\223\002R*P/v1b" + + "eta/{name=projects/*/locations/*/worksta" + + "tionClusters/*/workstationConfigs/*}\022\350\001\n" + + "\016GetWorkstation\0227.google.cloud.workstati" + + "ons.v1beta.GetWorkstationRequest\032-.googl" + + "e.cloud.workstations.v1beta.Workstation\"" + + "n\332A\004name\202\323\344\223\002a\022_/v1beta/{name=projects/*" + "/locations/*/workstationClusters/*/works" - + "tationConfigs/*/workstations/*}:stop:\001*\022" - + "\250\002\n\023GenerateAccessToken\022<.google.cloud.w" - + "orkstations.v1beta.GenerateAccessTokenRe" - + "quest\032=.google.cloud.workstations.v1beta" - + ".GenerateAccessTokenResponse\"\223\001\332A\013workst" - + "ation\202\323\344\223\002\177\"z/v1beta/{workstation=projec" - + "ts/*/locations/*/workstationClusters/*/w" - + "orkstationConfigs/*/workstations/*}:gene" - + "rateAccessToken:\001*\032O\312A\033workstations.goog" - + "leapis.com\322A.https://www.googleapis.com/" - + "auth/cloud-platformB\205\001\n$com.google.cloud" - + ".workstations.v1betaB\021WorkstationsProtoP" - + "\001ZHcloud.google.com/go/workstations/apiv" - + "1beta/workstationspb;workstationspbb\006pro" - + "to3" + + "tationConfigs/*/workstations/*}\022\373\001\n\020List" + + "Workstations\0229.google.cloud.workstations" + + ".v1beta.ListWorkstationsRequest\032:.google" + + ".cloud.workstations.v1beta.ListWorkstati" + + "onsResponse\"p\332A\006parent\202\323\344\223\002a\022_/v1beta/{p" + + "arent=projects/*/locations/*/workstation" + + "Clusters/*/workstationConfigs/*}/worksta" + + "tions\022\230\002\n\026ListUsableWorkstations\022?.googl" + + "e.cloud.workstations.v1beta.ListUsableWo" + + "rkstationsRequest\032@.google.cloud.worksta" + + "tions.v1beta.ListUsableWorkstationsRespo" + + "nse\"{\332A\006parent\202\323\344\223\002l\022j/v1beta/{parent=pr" + + "ojects/*/locations/*/workstationClusters" + + "/*/workstationConfigs/*}/workstations:li" + + "stUsable\022\254\002\n\021CreateWorkstation\022:.google." + + "cloud.workstations.v1beta.CreateWorkstat" + + "ionRequest\032\035.google.longrunning.Operatio" + + "n\"\273\001\312A \n\013Workstation\022\021OperationMetadata\332" + + "A!parent,workstation,workstation_id\202\323\344\223\002" + + "n\"_/v1beta/{parent=projects/*/locations/" + + "*/workstationClusters/*/workstationConfi" + + "gs/*}/workstations:\013workstation\022\256\002\n\021Upda" + + "teWorkstation\022:.google.cloud.workstation" + + "s.v1beta.UpdateWorkstationRequest\032\035.goog" + + "le.longrunning.Operation\"\275\001\312A \n\013Workstat" + + "ion\022\021OperationMetadata\332A\027workstation,upd" + + "ate_mask\202\323\344\223\002z2k/v1beta/{workstation.nam" + + "e=projects/*/locations/*/workstationClus" + + "ters/*/workstationConfigs/*/workstations" + + "/*}:\013workstation\022\202\002\n\021DeleteWorkstation\022:" + + ".google.cloud.workstations.v1beta.Delete" + + "WorkstationRequest\032\035.google.longrunning." + + "Operation\"\221\001\312A \n\013Workstation\022\021OperationM" + + "etadata\332A\004name\202\323\344\223\002a*_/v1beta/{name=proj" + + "ects/*/locations/*/workstationClusters/*" + + "/workstationConfigs/*/workstations/*}\022\211\002" + + "\n\020StartWorkstation\0229.google.cloud.workst" + + "ations.v1beta.StartWorkstationRequest\032\035." + + "google.longrunning.Operation\"\232\001\312A \n\013Work" + + "station\022\021OperationMetadata\332A\004name\202\323\344\223\002j\"" + + "e/v1beta/{name=projects/*/locations/*/wo" + + "rkstationClusters/*/workstationConfigs/*" + + "/workstations/*}:start:\001*\022\206\002\n\017StopWorkst" + + "ation\0228.google.cloud.workstations.v1beta" + + ".StopWorkstationRequest\032\035.google.longrun" + + "ning.Operation\"\231\001\312A \n\013Workstation\022\021Opera" + + "tionMetadata\332A\004name\202\323\344\223\002i\"d/v1beta/{name" + + "=projects/*/locations/*/workstationClust" + + "ers/*/workstationConfigs/*/workstations/" + + "*}:stop:\001*\022\250\002\n\023GenerateAccessToken\022<.goo" + + "gle.cloud.workstations.v1beta.GenerateAc" + + "cessTokenRequest\032=.google.cloud.workstat" + + "ions.v1beta.GenerateAccessTokenResponse\"" + + "\223\001\332A\013workstation\202\323\344\223\002\177\"z/v1beta/{worksta" + + "tion=projects/*/locations/*/workstationC" + + "lusters/*/workstationConfigs/*/workstati" + + "ons/*}:generateAccessToken:\001*\022\245\002\n\017PushCr" + + "edentials\0228.google.cloud.workstations.v1" + + "beta.PushCredentialsRequest\032\035.google.lon" + + "grunning.Operation\"\270\001\312A&\n\013Workstation\022\027P" + + "ushCredentialsMetadata\332A\013workstation\202\323\344\223" + + "\002{\"v/v1beta/{workstation=projects/*/loca" + + "tions/*/workstationClusters/*/workstatio" + + "nConfigs/*/workstations/*}:pushCredentia" + + "ls:\001*\032O\312A\033workstations.googleapis.com\322A." + + "https://www.googleapis.com/auth/cloud-pl" + + "atformB\205\001\n$com.google.cloud.workstations" + + ".v1betaB\021WorkstationsProtoP\001ZHcloud.goog" + + "le.com/go/workstations/apiv1beta/worksta" + + "tionspb;workstationspbb\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -730,6 +973,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { com.google.api.AnnotationsProto.getDescriptor(), com.google.api.ClientProto.getDescriptor(), com.google.api.FieldBehaviorProto.getDescriptor(), + com.google.api.FieldInfoProto.getDescriptor(), com.google.api.ResourceProto.getDescriptor(), com.google.longrunning.OperationsProto.getDescriptor(), com.google.protobuf.DurationProto.getDescriptor(), @@ -757,8 +1001,15 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Subnetwork", "ControlPlaneIp", "PrivateClusterConfig", + "DomainConfig", "Degraded", "Conditions", + "SatisfiesPzs", + "SatisfiesPzi", + "Tags", + "GatewayConfig", + "WorkstationAuthorizationUrl", + "WorkstationLaunchUrl", }); internal_static_google_cloud_workstations_v1beta_WorkstationCluster_PrivateClusterConfig_descriptor = internal_static_google_cloud_workstations_v1beta_WorkstationCluster_descriptor @@ -769,9 +1020,27 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "EnablePrivateEndpoint", "ClusterHostname", "ServiceAttachmentUri", "AllowedProjects", }); - internal_static_google_cloud_workstations_v1beta_WorkstationCluster_AnnotationsEntry_descriptor = + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_DomainConfig_descriptor = internal_static_google_cloud_workstations_v1beta_WorkstationCluster_descriptor .getNestedType(1); + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_DomainConfig_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_DomainConfig_descriptor, + new java.lang.String[] { + "Domain", + }); + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_GatewayConfig_descriptor = + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_descriptor + .getNestedType(2); + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_GatewayConfig_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_GatewayConfig_descriptor, + new java.lang.String[] { + "Http2Enabled", + }); + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_AnnotationsEntry_descriptor = + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_descriptor + .getNestedType(3); internal_static_google_cloud_workstations_v1beta_WorkstationCluster_AnnotationsEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_WorkstationCluster_AnnotationsEntry_descriptor, @@ -780,13 +1049,22 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { }); internal_static_google_cloud_workstations_v1beta_WorkstationCluster_LabelsEntry_descriptor = internal_static_google_cloud_workstations_v1beta_WorkstationCluster_descriptor - .getNestedType(2); + .getNestedType(4); internal_static_google_cloud_workstations_v1beta_WorkstationCluster_LabelsEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_WorkstationCluster_LabelsEntry_descriptor, new java.lang.String[] { "Key", "Value", }); + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_TagsEntry_descriptor = + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_descriptor + .getNestedType(5); + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_TagsEntry_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_WorkstationCluster_TagsEntry_descriptor, + new java.lang.String[] { + "Key", "Value", + }); internal_static_google_cloud_workstations_v1beta_WorkstationConfig_descriptor = getDescriptor().getMessageType(1); internal_static_google_cloud_workstations_v1beta_WorkstationConfig_fieldAccessorTable = @@ -805,6 +1083,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Etag", "IdleTimeout", "RunningTimeout", + "MaxUsableWorkstations", "Host", "PersistentDirectories", "EphemeralDirectories", @@ -815,6 +1094,13 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Degraded", "Conditions", "EnableAuditAgent", + "HttpOptions", + "DisableTcpConnections", + "AllowedPorts", + "SatisfiesPzs", + "SatisfiesPzi", + "GrantWorkstationAdminRoleOnCreate", + "EnablePushingCredentials", }); internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_descriptor = internal_static_google_cloud_workstations_v1beta_WorkstationConfig_descriptor.getNestedType( @@ -844,6 +1130,12 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ConfidentialInstanceConfig", "BootDiskSizeGb", "Accelerators", + "BoostConfigs", + "DisableSsh", + "VmTags", + "ReservationAffinity", + "StartupScriptUri", + "InstanceMetadata", }); internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_GceShieldedInstanceConfig_descriptor = internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_descriptor @@ -872,6 +1164,48 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "Type", "Count", }); + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_BoostConfig_descriptor = + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_descriptor + .getNestedType(3); + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_BoostConfig_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_BoostConfig_descriptor, + new java.lang.String[] { + "Id", + "MachineType", + "Accelerators", + "BootDiskSizeGb", + "EnableNestedVirtualization", + "PoolSize", + "ReservationAffinity", + }); + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_ReservationAffinity_descriptor = + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_descriptor + .getNestedType(4); + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_ReservationAffinity_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_ReservationAffinity_descriptor, + new java.lang.String[] { + "ConsumeReservationType", "Key", "Values", + }); + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_VmTagsEntry_descriptor = + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_descriptor + .getNestedType(5); + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_VmTagsEntry_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_VmTagsEntry_descriptor, + new java.lang.String[] { + "Key", "Value", + }); + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_InstanceMetadataEntry_descriptor = + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_descriptor + .getNestedType(6); + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_InstanceMetadataEntry_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_Host_GceInstance_InstanceMetadataEntry_descriptor, + new java.lang.String[] { + "Key", "Value", + }); internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_descriptor = internal_static_google_cloud_workstations_v1beta_WorkstationConfig_descriptor.getNestedType( 1); @@ -879,7 +1213,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_descriptor, new java.lang.String[] { - "GcePd", "MountPath", "DirectoryType", + "GcePd", "GceHd", "MountPath", "DirectoryType", }); internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor = internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_descriptor @@ -888,7 +1222,22 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceRegionalPersistentDisk_descriptor, new java.lang.String[] { - "SizeGb", "FsType", "DiskType", "SourceSnapshot", "ReclaimPolicy", + "SizeGb", + "MaxSizeGb", + "FsType", + "DiskType", + "SourceSnapshot", + "ReclaimPolicy", + "ArchiveTimeout", + }); + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_descriptor = + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_descriptor + .getNestedType(1); + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PersistentDirectory_GceHyperdiskBalancedHighAvailability_descriptor, + new java.lang.String[] { + "SizeGb", "MaxSizeGb", "SourceSnapshot", "ReclaimPolicy", "ArchiveTimeout", }); internal_static_google_cloud_workstations_v1beta_WorkstationConfig_EphemeralDirectory_descriptor = internal_static_google_cloud_workstations_v1beta_WorkstationConfig_descriptor.getNestedType( @@ -944,9 +1293,27 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "Path", "Port", }); - internal_static_google_cloud_workstations_v1beta_WorkstationConfig_AnnotationsEntry_descriptor = + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_HttpOptions_descriptor = internal_static_google_cloud_workstations_v1beta_WorkstationConfig_descriptor.getNestedType( 6); + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_HttpOptions_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_HttpOptions_descriptor, + new java.lang.String[] { + "AllowedUnauthenticatedCorsPreflightRequests", "DisableLocalhostReplacement", + }); + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PortRange_descriptor = + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_descriptor.getNestedType( + 7); + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PortRange_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_PortRange_descriptor, + new java.lang.String[] { + "First", "Last", + }); + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_AnnotationsEntry_descriptor = + internal_static_google_cloud_workstations_v1beta_WorkstationConfig_descriptor.getNestedType( + 8); internal_static_google_cloud_workstations_v1beta_WorkstationConfig_AnnotationsEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_WorkstationConfig_AnnotationsEntry_descriptor, @@ -955,7 +1322,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { }); internal_static_google_cloud_workstations_v1beta_WorkstationConfig_LabelsEntry_descriptor = internal_static_google_cloud_workstations_v1beta_WorkstationConfig_descriptor.getNestedType( - 7); + 9); internal_static_google_cloud_workstations_v1beta_WorkstationConfig_LabelsEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_WorkstationConfig_LabelsEntry_descriptor, @@ -979,12 +1346,54 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "StartTime", "DeleteTime", "Etag", + "PersistentDirectories", "State", "Host", "Env", + "KmsKey", + "BoostConfigs", + "SourceWorkstation", + "SatisfiesPzs", + "SatisfiesPzi", + "RuntimeHost", + "Degraded", + "Conditions", }); - internal_static_google_cloud_workstations_v1beta_Workstation_AnnotationsEntry_descriptor = + internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationPersistentDirectory_descriptor = internal_static_google_cloud_workstations_v1beta_Workstation_descriptor.getNestedType(0); + internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationPersistentDirectory_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationPersistentDirectory_descriptor, + new java.lang.String[] { + "MountPath", "SizeGb", + }); + internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationBoostConfig_descriptor = + internal_static_google_cloud_workstations_v1beta_Workstation_descriptor.getNestedType(1); + internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationBoostConfig_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_Workstation_WorkstationBoostConfig_descriptor, + new java.lang.String[] { + "Id", "Running", + }); + internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_descriptor = + internal_static_google_cloud_workstations_v1beta_Workstation_descriptor.getNestedType(2); + internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_descriptor, + new java.lang.String[] { + "GceInstanceHost", "HostType", + }); + internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_GceInstanceHost_descriptor = + internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_descriptor + .getNestedType(0); + internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_GceInstanceHost_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_Workstation_RuntimeHost_GceInstanceHost_descriptor, + new java.lang.String[] { + "Name", "Id", "Zone", + }); + internal_static_google_cloud_workstations_v1beta_Workstation_AnnotationsEntry_descriptor = + internal_static_google_cloud_workstations_v1beta_Workstation_descriptor.getNestedType(3); internal_static_google_cloud_workstations_v1beta_Workstation_AnnotationsEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_Workstation_AnnotationsEntry_descriptor, @@ -992,7 +1401,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Key", "Value", }); internal_static_google_cloud_workstations_v1beta_Workstation_LabelsEntry_descriptor = - internal_static_google_cloud_workstations_v1beta_Workstation_descriptor.getNestedType(1); + internal_static_google_cloud_workstations_v1beta_Workstation_descriptor.getNestedType(4); internal_static_google_cloud_workstations_v1beta_Workstation_LabelsEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_Workstation_LabelsEntry_descriptor, @@ -1000,7 +1409,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Key", "Value", }); internal_static_google_cloud_workstations_v1beta_Workstation_EnvEntry_descriptor = - internal_static_google_cloud_workstations_v1beta_Workstation_descriptor.getNestedType(2); + internal_static_google_cloud_workstations_v1beta_Workstation_descriptor.getNestedType(5); internal_static_google_cloud_workstations_v1beta_Workstation_EnvEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_Workstation_EnvEntry_descriptor, @@ -1021,7 +1430,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_ListWorkstationClustersRequest_descriptor, new java.lang.String[] { - "Parent", "PageSize", "PageToken", + "Parent", "PageSize", "PageToken", "Filter", }); internal_static_google_cloud_workstations_v1beta_ListWorkstationClustersResponse_descriptor = getDescriptor().getMessageType(5); @@ -1069,7 +1478,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_ListWorkstationConfigsRequest_descriptor, new java.lang.String[] { - "Parent", "PageSize", "PageToken", + "Parent", "PageSize", "PageToken", "Filter", }); internal_static_google_cloud_workstations_v1beta_ListWorkstationConfigsResponse_descriptor = getDescriptor().getMessageType(11); @@ -1133,7 +1542,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_ListWorkstationsRequest_descriptor, new java.lang.String[] { - "Parent", "PageSize", "PageToken", + "Parent", "PageSize", "PageToken", "Filter", }); internal_static_google_cloud_workstations_v1beta_ListWorkstationsResponse_descriptor = getDescriptor().getMessageType(19); @@ -1189,7 +1598,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_StartWorkstationRequest_descriptor, new java.lang.String[] { - "Name", "ValidateOnly", "Etag", + "Name", "ValidateOnly", "Etag", "BoostConfig", }); internal_static_google_cloud_workstations_v1beta_StopWorkstationRequest_descriptor = getDescriptor().getMessageType(26); @@ -1205,7 +1614,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_GenerateAccessTokenRequest_descriptor, new java.lang.String[] { - "ExpireTime", "Ttl", "Workstation", "Expiration", + "ExpireTime", "Ttl", "Workstation", "Port", "Expiration", }); internal_static_google_cloud_workstations_v1beta_GenerateAccessTokenResponse_descriptor = getDescriptor().getMessageType(28); @@ -1215,8 +1624,31 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "AccessToken", "ExpireTime", }); - internal_static_google_cloud_workstations_v1beta_OperationMetadata_descriptor = + internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_descriptor = getDescriptor().getMessageType(29); + internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_descriptor, + new java.lang.String[] { + "Workstation", "ApplicationDefaultCredentials", + }); + internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_OAuthToken_descriptor = + internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_descriptor + .getNestedType(0); + internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_OAuthToken_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_PushCredentialsRequest_OAuthToken_descriptor, + new java.lang.String[] { + "Email", "Scopes", "AccessToken", "ExpireTime", + }); + internal_static_google_cloud_workstations_v1beta_PushCredentialsMetadata_descriptor = + getDescriptor().getMessageType(30); + internal_static_google_cloud_workstations_v1beta_PushCredentialsMetadata_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_cloud_workstations_v1beta_PushCredentialsMetadata_descriptor, + new java.lang.String[] {}); + internal_static_google_cloud_workstations_v1beta_OperationMetadata_descriptor = + getDescriptor().getMessageType(31); internal_static_google_cloud_workstations_v1beta_OperationMetadata_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_cloud_workstations_v1beta_OperationMetadata_descriptor, @@ -1233,6 +1665,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { com.google.api.AnnotationsProto.getDescriptor(); com.google.api.ClientProto.getDescriptor(); com.google.api.FieldBehaviorProto.getDescriptor(); + com.google.api.FieldInfoProto.getDescriptor(); com.google.api.ResourceProto.getDescriptor(); com.google.longrunning.OperationsProto.getDescriptor(); com.google.protobuf.DurationProto.getDescriptor(); @@ -1243,6 +1676,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { com.google.protobuf.ExtensionRegistry.newInstance(); registry.add(com.google.api.ClientProto.defaultHost); registry.add(com.google.api.FieldBehaviorProto.fieldBehavior); + registry.add(com.google.api.FieldInfoProto.fieldInfo); registry.add(com.google.api.AnnotationsProto.http); registry.add(com.google.api.ClientProto.methodSignature); registry.add(com.google.api.ClientProto.oauthScopes); diff --git a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/proto/google/cloud/workstations/v1beta/workstations.proto b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/proto/google/cloud/workstations/v1beta/workstations.proto index 1a1a0715718e..6391745050ad 100644 --- a/java-workstations/proto-google-cloud-workstations-v1beta/src/main/proto/google/cloud/workstations/v1beta/workstations.proto +++ b/java-workstations/proto-google-cloud-workstations-v1beta/src/main/proto/google/cloud/workstations/v1beta/workstations.proto @@ -1,4 +1,4 @@ -// Copyright 2025 Google LLC +// 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. @@ -19,6 +19,7 @@ package google.cloud.workstations.v1beta; import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; +import "google/api/field_info.proto"; import "google/api/resource.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/duration.proto"; @@ -265,6 +266,8 @@ service Workstations { // Returns a short-lived credential that can be used to send authenticated and // authorized traffic to a workstation. + // Once generated this token cannot be revoked and is good for the lifetime + // of the token. rpc GenerateAccessToken(GenerateAccessTokenRequest) returns (GenerateAccessTokenResponse) { option (google.api.http) = { @@ -273,6 +276,22 @@ service Workstations { }; option (google.api.method_signature) = "workstation"; } + + // Pushes credentials to a running workstation on behalf of a user. Once + // complete, supported credential types (application_default_credentials) are + // made available to processes running in the user container. + rpc PushCredentials(PushCredentialsRequest) + returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1beta/{workstation=projects/*/locations/*/workstationClusters/*/workstationConfigs/*/workstations/*}:pushCredentials" + body: "*" + }; + option (google.api.method_signature) = "workstation"; + option (google.longrunning.operation_info) = { + response_type: "Workstation" + metadata_type: "PushCredentialsMetadata" + }; + } } // A workstation cluster resource in the Cloud Workstations API. @@ -301,7 +320,7 @@ message WorkstationCluster { string cluster_hostname = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Service attachment URI for the workstation cluster. The - // service attachemnt is created when private endpoint is enabled. To access + // service attachment is created when private endpoint is enabled. To access // workstations in the workstation cluster, configure access to the managed // service using [Private Service // Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services). @@ -315,15 +334,31 @@ message WorkstationCluster { [(google.api.field_behavior) = OPTIONAL]; } - // Full name of this workstation cluster. - string name = 1; + // Configuration options for a custom domain. + message DomainConfig { + // Immutable. Domain used by Workstations for HTTP ingress. + string domain = 1 [(google.api.field_behavior) = IMMUTABLE]; + } + + // Configuration options for Cluster HTTP Gateway. + message GatewayConfig { + // Optional. Whether HTTP/2 is enabled for this workstation cluster. + // Defaults to false. + bool http2_enabled = 1 [(google.api.field_behavior) = OPTIONAL]; + } + + // Identifier. Full name of this workstation cluster. + string name = 1 [(google.api.field_behavior) = IDENTIFIER]; // Optional. Human-readable name for this workstation cluster. string display_name = 2 [(google.api.field_behavior) = OPTIONAL]; // Output only. A system-assigned unique identifier for this workstation // cluster. - string uid = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + string uid = 3 [ + (google.api.field_info).format = UUID4, + (google.api.field_behavior) = OUTPUT_ONLY + ]; // Output only. Indicates whether this workstation cluster is currently being // updated to match its intended state. @@ -374,16 +409,58 @@ message WorkstationCluster { PrivateClusterConfig private_cluster_config = 12 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Configuration options for a custom domain. + DomainConfig domain_config = 17 [(google.api.field_behavior) = OPTIONAL]; + // Output only. Whether this workstation cluster is in degraded mode, in which - // case it may require user action to restore full functionality. Details can - // be found in - // [conditions][google.cloud.workstations.v1beta.WorkstationCluster.conditions]. + // case it may require user action to restore full functionality. The + // [conditions][google.cloud.workstations.v1beta.WorkstationCluster.conditions] + // field contains detailed information about the status of the cluster. bool degraded = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Status conditions describing the workstation cluster's current // state. repeated google.rpc.Status conditions = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Reserved for future use. + bool satisfies_pzs = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Reserved for future use. + bool satisfies_pzi = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Input only. Immutable. Tag keys/values directly bound to this + // resource. For example: + // "123/environment": "production", + // "123/costCenter": "marketing" + map tags = 20 [ + (google.api.field_behavior) = INPUT_ONLY, + (google.api.field_behavior) = IMMUTABLE, + (google.api.field_behavior) = OPTIONAL + ]; + + // Optional. Configuration options for Cluster HTTP Gateway. + GatewayConfig gateway_config = 21 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Specifies the redirect URL for unauthorized requests received by + // workstation VMs in this cluster. + // + // Redirects to this endpoint will send a base64 encoded `state` query param + // containing the target workstation name and original request hostname. The + // endpoint is responsible for retrieving a token using `GenerateAccessToken` + // and redirecting back to the original hostname with the token. + string workstation_authorization_url = 22 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Specifies the launch URL for workstations in this cluster. + // Requests sent to unstarted workstations will be redirected to this URL. + // + // Requests redirected to the launch endpoint will be sent with a + // `workstation` and `project` query parameter containing the full workstation + // resource name and project ID, respectively. The launch endpoint is + // responsible for starting the workstation, polling it until it reaches + // `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL. + string workstation_launch_url = 23 [(google.api.field_behavior) = OPTIONAL]; } // A workstation configuration resource in the Cloud Workstations API. @@ -439,6 +516,120 @@ message WorkstationConfig { int32 count = 2 [(google.api.field_behavior) = OPTIONAL]; } + // A boost configuration is a set of resources that a workstation can use + // to increase its performance. If you specify a boost configuration, upon + // startup, workstation users can choose to use a VM provisioned under the + // boost config by passing the boost config ID in the start request. If + // the workstation user does not provide a boost config ID in the start + // request, the system will choose a VM from the pool provisioned under + // the default config. + message BoostConfig { + // Required. The ID to be used for the boost configuration. + string id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The type of machine that boosted VM instances will use—for + // example, `e2-standard-4`. For more information about machine types + // that Cloud Workstations supports, see the list of [available machine + // types](https://cloud.google.com/workstations/docs/available-machine-types). + // Defaults to `e2-standard-4`. + string machine_type = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A list of the type and count of accelerator cards attached + // to the boost instance. Defaults to `none`. + repeated Accelerator accelerators = 3 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The size of the boot disk for the VM in gigabytes (GB). + // The minimum boot disk size is `30` GB. Defaults to `50` GB. + int32 boot_disk_size_gb = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Whether to enable nested virtualization on boosted Cloud + // Workstations VMs running using this boost configuration. + // + // Defaults to false. + // + // Nested virtualization lets you run virtual machine (VM) instances + // inside your workstation. Before enabling nested virtualization, + // consider the following important considerations. Cloud Workstations + // instances are subject to the [same restrictions as Compute Engine + // instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions): + // + // * **Organization policy**: projects, folders, or + // organizations may be restricted from creating nested VMs if the + // **Disable VM nested virtualization** constraint is enforced in + // the organization policy. For more information, see the + // Compute Engine section, + // [Checking whether nested virtualization is + // allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed). + // * **Performance**: nested VMs might experience a 10% or greater + // decrease in performance for workloads that are CPU-bound and + // possibly greater than a 10% decrease for workloads that are + // input/output bound. + // * **Machine Type**: nested virtualization can only be enabled on + // boost configurations that specify a + // [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.BoostConfig.machine_type] + // in the N1 or N2 machine series. + bool enable_nested_virtualization = 7 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The number of boost VMs that the system should keep idle so + // that workstations can be boosted quickly. Defaults to `0`. + int32 pool_size = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. + // [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) + // specifies a reservation that can be consumed to create boost VM + // instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations + // will only create VMs in the zone where the reservation is located. + // This would affect availability since the service will no longer be + // resilient to zonal outages. If ANY_RESERVATION is specified, creating + // reservations in both zones that the config creates VMs in will ensure + // higher availability. + // **Important Considerations for Reservation Affinity:** + // + // * This feature is intended for advanced users and requires + // familiarity with Google Compute Engine reservations. + // * Using reservations incurs charges, regardless of utilization. + // * The resources in the pool will consume the specified + // reservation. Take this into account when setting the + // pool size. + ReservationAffinity reservation_affinity = 6 + [(google.api.field_behavior) = OPTIONAL]; + } + + // ReservationAffinity is the configuration of the desired reservation + // from which instances can consume resources. + message ReservationAffinity { + // Indicates whether to consume capacity from a reservation or not. + enum Type { + // Default value. This should not be used. + TYPE_UNSPECIFIED = 0; + + // Do not consume from any reserved capacity. + NO_RESERVATION = 1; + + // Consume any reservation available. + ANY_RESERVATION = 2; + + // Must consume from a specific reservation. Must specify key value + // fields for specifying the reservations. + SPECIFIC_RESERVATION = 3; + } + + // Optional. Corresponds to the type of reservation consumption. + Type consume_reservation_type = 1 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Corresponds to the label key of reservation resource. + string key = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Corresponds to the label values of reservation resources. + // Valid values are either the name of a reservation in the same project + // or "projects/{project}/reservations/{reservation}" to target a shared + // reservation in the same zone but in a different project. + repeated string values = 3 [(google.api.field_behavior) = OPTIONAL]; + } + // Optional. The type of machine to use for VM instances—for example, // `"e2-standard-4"`. For more information about machine types that // Cloud Workstations supports, see the list of @@ -448,10 +639,12 @@ message WorkstationConfig { // Optional. The email address of the service account for Cloud // Workstations VMs created with this configuration. When specified, be - // sure that the service account has `logginglogEntries.create` permission - // on the project so it can write logs out to Cloud Logging. If using a - // custom container image, the service account must have permissions to - // pull the specified image. + // sure that the service account has `logging.logEntries.create` and + // `monitoring.timeSeries.create` permissions on the project so it can + // write logs out to Cloud Logging. If using a custom container image, the + // service account must have [Artifact Registry + // Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles) + // permission to pull the specified image. // // If you as the administrator want to be able to `ssh` into the // underlying VM, you need to set this value to a service account @@ -467,9 +660,8 @@ message WorkstationConfig { // Optional. Scopes to grant to the // [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account]. - // Various scopes are automatically added based on feature usage. When - // specified, users of workstations under this configuration must have - // `iam.serviceAccounts.actAs` on the service account. + // When specified, users of workstations under this configuration must + // have `iam.serviceAccounts.actAs` on the service account. repeated string service_account_scopes = 3 [(google.api.field_behavior) = OPTIONAL]; @@ -502,7 +694,9 @@ message WorkstationConfig { [(google.api.field_behavior) = OPTIONAL]; // Optional. Whether to enable nested virtualization on Cloud Workstations - // VMs created under this workstation configuration. + // VMs created using this workstation configuration. + // + // Defaults to false. // // Nested virtualization lets you run virtual machine (VM) instances // inside your workstation. Before enabling nested virtualization, @@ -525,16 +719,6 @@ message WorkstationConfig { // workstation configurations that specify a // [machine_type][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.machine_type] // in the N1 or N2 machine series. - // * **GPUs**: nested virtualization may not be enabled on workstation - // configurations with accelerators. - // * **Operating System**: Because - // [Container-Optimized - // OS](https://cloud.google.com/compute/docs/images/os-details#container-optimized_os_cos) - // does not support nested virtualization, when nested virtualization is - // enabled, the underlying Compute Engine VM instances boot from an - // [Ubuntu - // LTS](https://cloud.google.com/compute/docs/images/os-details#ubuntu_lts) - // image. bool enable_nested_virtualization = 7 [(google.api.field_behavior) = OPTIONAL]; @@ -554,18 +738,73 @@ message WorkstationConfig { // the instance. repeated Accelerator accelerators = 11 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A list of the boost configurations that workstations created + // using this workstation configuration are allowed to use. If specified, + // users will have the option to choose from the list of boost configs + // when starting a workstation. + repeated BoostConfig boost_configs = 25 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Whether to disable SSH access to the VM. + bool disable_ssh = 13 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Resource manager tags to be bound to this instance. + // Tag keys and values have the same definition as [resource manager + // tags](https://cloud.google.com/resource-manager/docs/tags/tags-overview). + // Keys must be in the format `tagKeys/{tag_key_id}`, and + // values are in the format `tagValues/456`. + map vm_tags = 14 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. + // [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) + // specifies a reservation that can be consumed to create VM + // instances. If SPECIFIC_RESERVATION is specified, Cloud Workstations + // will only create VMs in the zone where the reservation is located. + // This would affect availability since the service will no longer be + // resilient to zonal outages. If ANY_RESERVATION is specified, creating + // reservations in both zones that the config creates VMs in will ensure + // higher availability. + // **Important Considerations for Reservation Affinity:** + // + // * This feature is intended for advanced users and requires + // familiarity with Google Compute Engine reservations. + // * Using reservations incurs charges, regardless of utilization. + // * The resources in the pool will consume the specified + // reservation. Take this into account when setting the + // pool size. + ReservationAffinity reservation_affinity = 15 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Link to the startup script stored in Cloud Storage. This + // script will be run on the host workstation VM when the VM is created. + // The URI must be of the form gs://{bucket-name}/{object-name}. If + // specifying a startup script, the service account must have [Permission + // to access the bucket and script file in Cloud + // Storage](https://cloud.google.com/storage/docs/access-control/iam-permissions). + // Otherwise, the script must be publicly accessible. + // Note that the service regularly updates the OS version of the host VM, + // and it is the responsibility of the user to ensure the script stays + // compatible with the OS version. + string startup_script_uri = 26 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Custom metadata to apply to Compute Engine instances. + map instance_metadata = 27 + [(google.api.field_behavior) = OPTIONAL]; } - // Type of host that will be used for the workstation's runtime. + // Type of host to be used for the workstation's runtime. oneof config { // Specifies a Compute Engine instance as the host. GceInstance gce_instance = 1; } } - // A directory to persist across workstation sessions. + // A directory to persist across workstation sessions. Updates to this field + // will not update existing workstations and will only take effect on new + // workstations. message PersistentDirectory { - // A PersistentDirectory backed by a Compute Engine regional persistent + // A Persistent Directory backed by a Compute Engine regional persistent // disk. The // [persistent_directories][google.cloud.workstations.v1beta.WorkstationConfig.persistent_directories] // field is repeated, but it may contain only one entry. It creates a @@ -602,6 +841,10 @@ message WorkstationConfig { // `"pd-balanced"` or `"pd-ssd"`. int32 size_gb = 1 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Maximum size in GB to which this persistent directory can be + // resized. Defaults to unlimited if not set. + int32 max_size_gb = 7 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Type of file system that the disk should be formatted with. // The workstation image must support this file system type. Must be empty // if @@ -619,19 +862,90 @@ message WorkstationConfig { // [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.size_gb] // and // [fs_type][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceRegionalPersistentDisk.fs_type] - // must be empty. + // must be empty. Must be formatted as ext4 file system with no + // partitions. string source_snapshot = 5 [(google.api.field_behavior) = OPTIONAL]; // Optional. Whether the persistent disk should be deleted when the // workstation is deleted. Valid values are `DELETE` and `RETAIN`. // Defaults to `DELETE`. ReclaimPolicy reclaim_policy = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Number of seconds to wait after initially creating or + // subsequently shutting down the workstation before converting its disk + // into a snapshot. This generally saves costs at the expense of greater + // startup time on next workstation start, as the service will need to + // create a disk from the archival snapshot. + // + // A value of `"0s"` indicates that the disk will never be archived. + google.protobuf.Duration archive_timeout = 6 + [(google.api.field_behavior) = OPTIONAL]; + } + + // A Persistent Directory backed by a Compute Engine + // [Hyperdisk Balanced High Availability + // Disk](https://cloud.google.com/compute/docs/disks/hd-types/hyperdisk-balanced-ha). + // This is a high-availability block storage solution that offers a balance + // between performance and cost for most general-purpose workloads. + message GceHyperdiskBalancedHighAvailability { + // Value representing what should happen to the disk after the workstation + // is deleted. + enum ReclaimPolicy { + // Do not use. + RECLAIM_POLICY_UNSPECIFIED = 0; + + // Delete the persistent disk when deleting the workstation. + DELETE = 1; + + // Keep the persistent disk when deleting the workstation. + // An administrator must manually delete the disk. + RETAIN = 2; + } + + // Optional. The GB capacity of a persistent home directory for each + // workstation created with this configuration. Must be empty if + // [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.source_snapshot] + // is set. + // + // Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`. + // Defaults to `200`. + int32 size_gb = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Maximum size in GB to which this persistent directory can be + // resized. Defaults to unlimited if not set. + int32 max_size_gb = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Name of the snapshot to use as the source for the disk. If + // set, + // [size_gb][google.cloud.workstations.v1beta.WorkstationConfig.PersistentDirectory.GceHyperdiskBalancedHighAvailability.size_gb] + // must be empty. Must be formatted as ext4 file system with no + // partitions. + string source_snapshot = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Whether the persistent disk should be deleted when the + // workstation is deleted. Valid values are `DELETE` and `RETAIN`. + // Defaults to `DELETE`. + ReclaimPolicy reclaim_policy = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Number of seconds to wait after initially creating or + // subsequently shutting down the workstation before converting its disk + // into a snapshot. This generally saves costs at the expense of greater + // startup time on next workstation start, as the service will need to + // create a disk from the archival snapshot. + // + // A value of `"0s"` indicates that the disk will never be archived. + google.protobuf.Duration archive_timeout = 4 + [(google.api.field_behavior) = OPTIONAL]; } // How a persistent directory should be implemented. oneof directory_type { // A PersistentDirectory backed by a Compute Engine persistent disk. GceRegionalPersistentDisk gce_pd = 2; + + // A PersistentDirectory backed by a Compute Engine hyperdisk high + // availability disk. + GceHyperdiskBalancedHighAvailability gce_hd = 3; } // Optional. Location of this directory in the running workstation. @@ -649,10 +963,19 @@ message WorkstationConfig { // Optional. Name of the snapshot to use as the source for the disk. Must // be empty if // [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image] - // is set. Updating + // is set. Must be empty if + // [read_only][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.read_only] + // is false. Updating // [source_snapshot][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_snapshot] // will update content in the ephemeral directory after the workstation is - // restarted. This field is mutable. + // restarted. + // + // Only file systems supported by Container-Optimized OS (COS) + // are explicitly supported. For a list of supported file systems, see + // [the filesystems available in Container-Optimized + // OS](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems). + // + // This field is mutable. string source_snapshot = 2 [(google.api.field_behavior) = OPTIONAL]; // Optional. Name of the disk image to use as the source for the disk. @@ -661,7 +984,14 @@ message WorkstationConfig { // is set. Updating // [source_image][google.cloud.workstations.v1beta.WorkstationConfig.EphemeralDirectory.GcePersistentDisk.source_image] // will update content in the ephemeral directory after the workstation is - // restarted. This field is mutable. + // restarted. + // + // Only file systems supported by Container-Optimized OS (COS) + // are explicitly supported. For a list of supported file systems, please + // refer to the [COS + // documentation](https://cloud.google.com/container-optimized-os/docs/concepts/supported-filesystems). + // + // This field is mutable. string source_image = 3 [(google.api.field_behavior) = OPTIONAL]; // Optional. Whether the disk is read only. If true, the disk may be @@ -692,7 +1022,10 @@ message WorkstationConfig { // [custom container // images](https://cloud.google.com/workstations/docs/custom-container-images). // If using a private image, the `host.gceInstance.serviceAccount` field - // must be specified in the workstation configuration and must have + // must be specified in the workstation configuration. + // If using a custom container image, the service account must have + // [Artifact Registry + // Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles) // permission to pull the specified image. Otherwise, the image must be // publicly accessible. string image = 1 [(google.api.field_behavior) = OPTIONAL]; @@ -747,15 +1080,58 @@ message WorkstationConfig { int32 port = 2 [(google.api.field_behavior) = OPTIONAL]; } - // Full name of this workstation configuration. - string name = 1; + // HTTP options for the running workstations. + message HttpOptions { + // Optional. By default, the workstations service makes sure that all + // requests to the workstation are authenticated. CORS preflight requests do + // not include cookies or custom headers, and so are considered + // unauthenticated and blocked by the workstations service. Enabling this + // option allows these unauthenticated CORS preflight requests through to + // the workstation, where it becomes the responsibility of the destination + // server in the workstation to validate the request. + bool allowed_unauthenticated_cors_preflight_requests = 1 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. By default, the workstations service replaces references to + // localhost, 127.0.0.1, and 0.0.0.0 with the workstation's hostname in http + // responses from the workstation so that applications under development run + // properly on the workstation. This may intefere with some applications, + // and so this option allows that behavior to be disabled. + bool disable_localhost_replacement = 2 + [(google.api.field_behavior) = OPTIONAL]; + } + + // A PortRange defines a range of ports. Both + // [first][google.cloud.workstations.v1beta.WorkstationConfig.PortRange.first] + // and + // [last][google.cloud.workstations.v1beta.WorkstationConfig.PortRange.last] + // are inclusive. To specify a single port, both + // [first][google.cloud.workstations.v1beta.WorkstationConfig.PortRange.first] + // and + // [last][google.cloud.workstations.v1beta.WorkstationConfig.PortRange.last] + // should be the same. + message PortRange { + // Required. Starting port number for the current range of ports. + // Valid ports are 22, 80, and ports within the range 1024-65535. + int32 first = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Ending port number for the current range of ports. + // Valid ports are 22, 80, and ports within the range 1024-65535. + int32 last = 2 [(google.api.field_behavior) = REQUIRED]; + } + + // Identifier. Full name of this workstation configuration. + string name = 1 [(google.api.field_behavior) = IDENTIFIER]; // Optional. Human-readable name for this workstation configuration. string display_name = 2 [(google.api.field_behavior) = OPTIONAL]; // Output only. A system-assigned unique identifier for this workstation // configuration. - string uid = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + string uid = 3 [ + (google.api.field_info).format = UUID4, + (google.api.field_behavior) = OUTPUT_ONLY + ]; // Output only. Indicates whether this workstation configuration is currently // being updated to match its intended state. @@ -825,6 +1201,22 @@ message WorkstationConfig { google.protobuf.Duration running_timeout = 11 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Maximum number of workstations under this configuration a user + // can have `workstations.workstation.use` permission on. + // + // Only enforced on CreateWorkstation API calls on the user issuing the API + // request. Can be overridden by: + // + // - granting a user + // workstations.workstationConfigs.exemptMaxUsableWorkstationLimit permission, + // or + // - having a user with that permission create a workstation and + // granting another user `workstations.workstation.use` permission on + // that workstation. + // + // If not specified, defaults to `0`, which indicates unlimited. + int32 max_usable_workstations = 28 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Runtime host for the workstation. Host host = 12 [(google.api.field_behavior) = OPTIONAL]; @@ -880,22 +1272,73 @@ message WorkstationConfig { (google.api.field_behavior) = IMMUTABLE ]; - // Output only. Whether this resource is degraded, in which case it may - // require user action to restore full functionality. See also the + // Output only. Whether this workstation configuration is in degraded mode, in + // which case it may require user action to restore full functionality. The // [conditions][google.cloud.workstations.v1beta.WorkstationConfig.conditions] - // field. + // field contains detailed information about the status of the configuration. bool degraded = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. Status conditions describing the current resource state. + // Output only. Status conditions describing the workstation configuration's + // current state. repeated google.rpc.Status conditions = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; // Optional. Whether to enable Linux `auditd` logging on the workstation. When - // enabled, a service account must also be specified that has - // `logging.buckets.write` permission on the project. Operating system audit + // enabled, a + // [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account] + // must also be specified that has `roles/logging.logWriter` and + // `roles/monitoring.metricWriter` on the project. Operating system audit // logging is distinct from [Cloud Audit - // Logs](https://cloud.google.com/workstations/docs/audit-logging). + // Logs](https://cloud.google.com/workstations/docs/audit-logging) and + // [Container output + // logging](https://cloud.google.com/workstations/docs/container-output-logging#overview). + // Operating system audit logs are available in the + // [Cloud Logging](https://cloud.google.com/logging/docs) console by querying: + // + // resource.type="gce_instance" + // log_name:"/logs/linux-auditd" bool enable_audit_agent = 20 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. HTTP options that customize the behavior of the workstation + // service's HTTP proxy. + HttpOptions http_options = 21 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Disables support for plain TCP connections in the workstation. + // By default the service supports TCP connections through a websocket relay. + // Setting this option to true disables that relay, which prevents the usage + // of services that require plain TCP connections, such as SSH. + // When enabled, all communication must occur over HTTPS or WSS. + bool disable_tcp_connections = 24 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A list of + // [PortRange][google.cloud.workstations.v1beta.WorkstationConfig.PortRange]s + // specifying single ports or ranges of ports that are externally accessible + // in the workstation. Allowed ports must be one of 22, 80, or within range + // 1024-65535. If not specified defaults to ports 22, 80, and ports + // 1024-65535. + repeated PortRange allowed_ports = 25 + [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Reserved for future use. + bool satisfies_pzs = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Reserved for future use. + bool satisfies_pzi = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Grant creator of a workstation `roles/workstations.policyAdmin` + // role along with `roles/workstations.user` role on the workstation created + // by them. This allows workstation users to share access to either their + // entire workstation, or individual ports. Defaults to false. + bool grant_workstation_admin_role_on_create = 29 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Enables pushing user provided credentials to Workstations by + // calling workstations.pushCredentials. If application_default_credentials + // are supplied to pushCredentials, the provided token is returned when tools + // and applications running in the user container make a request for Default + // Application Credentials. Please note that any credentials supplied are made + // available to all users with access to the workstation. + bool enable_pushing_credentials = 30 [(google.api.field_behavior) = OPTIONAL]; } // A single instance of a developer workstation with its own persistent storage. @@ -908,6 +1351,58 @@ message Workstation { style: DECLARATIVE_FRIENDLY }; + // A directory to persist across workstation sessions. Updates to this field + // will only take effect on this workstation after it is restarted. + message WorkstationPersistentDirectory { + // Optional. The mount path of the persistent directory. + string mount_path = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Size of the persistent directory in GB. If specified in an + // update request, this is the desired size of the directory. + int32 size_gb = 3 [(google.api.field_behavior) = OPTIONAL]; + } + + // Boost configuration for this workstation. This object is populated from the + // parent workstation configuration. + message WorkstationBoostConfig { + // Output only. Boost configuration ID. + string id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether or not the current workstation is actively boosted + // with this id. + bool running = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Runtime host for the workstation. + message RuntimeHost { + // The Compute Engine instance host. + message GceInstanceHost { + // Optional. Output only. The name of the Compute Engine instance. + string name = 1 [ + (google.api.field_behavior) = OPTIONAL, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + + // Optional. Output only. The ID of the Compute Engine instance. + string id = 2 [ + (google.api.field_behavior) = OPTIONAL, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + + // Optional. Output only. The zone of the Compute Engine instance. + string zone = 3 [ + (google.api.field_behavior) = OPTIONAL, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + } + + // Type of host used by the workstation. + oneof host_type { + // Specifies a Compute Engine instance as the host. + GceInstanceHost gce_instance_host = 1; + } + } + // Whether a workstation is running and ready to receive user requests. enum State { // Do not use. @@ -928,14 +1423,17 @@ message Workstation { STATE_STOPPED = 4; } - // Full name of this workstation. - string name = 1; + // Identifier. Full name of this workstation. + string name = 1 [(google.api.field_behavior) = IDENTIFIER]; // Optional. Human-readable name for this workstation. string display_name = 2 [(google.api.field_behavior) = OPTIONAL]; // Output only. A system-assigned unique identifier for this workstation. - string uid = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + string uid = 3 [ + (google.api.field_info).format = UUID4, + (google.api.field_behavior) = OUTPUT_ONLY + ]; // Output only. Indicates whether this workstation is currently being updated // to match its intended state. @@ -972,6 +1470,10 @@ message Workstation { // proceeding. string etag = 9 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Directories to persist across workstation sessions. + repeated WorkstationPersistentDirectory persistent_directories = 25 + [(google.api.field_behavior) = OPTIONAL]; + // Output only. Current state of the workstation. State state = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -985,6 +1487,44 @@ message Workstation { // Optional. Environment variables passed to the workstation container's // entrypoint. map env = 12 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. The name of the Google Cloud KMS encryption key used to + // encrypt this workstation. The KMS key can only be configured in the + // WorkstationConfig. The expected format is + // `projects/*/locations/*/keyRings/*/cryptoKeys/*`. + string kms_key = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. List of available boost configuration IDs that this + // workstation can be boosted up to. + repeated WorkstationBoostConfig boost_configs = 16 + [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. The source workstation from which this workstation's persistent + // directories were cloned on creation. + string source_workstation = 17 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Reserved for future use. + bool satisfies_pzs = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Reserved for future use. + bool satisfies_pzi = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Output only. Runtime host for the workstation when in + // STATE_RUNNING. + RuntimeHost runtime_host = 21 [ + (google.api.field_behavior) = OPTIONAL, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + + // Output only. Whether this workstation is in degraded mode, in which case it + // may require user action to restore full functionality. The + // [conditions][google.cloud.workstations.v1beta.Workstation.conditions] field + // contains detailed information about the status of the workstation. + bool degraded = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Status conditions describing the workstation's current state. + repeated google.rpc.Status conditions = 24 + [(google.api.field_behavior) = OUTPUT_ONLY]; } // Request message for GetWorkstationCluster. @@ -1014,6 +1554,10 @@ message ListWorkstationClustersRequest { // Optional. next_page_token value returned from a previous List request, if // any. string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter the WorkstationClusters to be listed. Possible filters are + // described in https://google.aip.dev/160. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; } // Response message for ListWorkstationClusters. @@ -1046,7 +1590,7 @@ message CreateWorkstationClusterRequest { WorkstationCluster workstation_cluster = 3 [(google.api.field_behavior) = REQUIRED]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; } @@ -1062,7 +1606,7 @@ message UpdateWorkstationClusterRequest { google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL]; @@ -1082,7 +1626,7 @@ message DeleteWorkstationClusterRequest { } ]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // apply it. bool validate_only = 2 [(google.api.field_behavior) = OPTIONAL]; @@ -1123,6 +1667,10 @@ message ListWorkstationConfigsRequest { // Optional. next_page_token value returned from a previous List request, if // any. string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter the WorkstationConfigs to be listed. Possible filters are + // described in https://google.aip.dev/160. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; } // Response message for ListWorkstationConfigs. @@ -1182,18 +1730,18 @@ message CreateWorkstationConfigRequest { // Required. ID to use for the workstation configuration. string workstation_config_id = 2 [(google.api.field_behavior) = REQUIRED]; - // Required. Config to create. + // Required. Workstation configuration to create. WorkstationConfig workstation_config = 3 [(google.api.field_behavior) = REQUIRED]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; } // Request message for UpdateWorkstationConfig. message UpdateWorkstationConfigRequest { - // Required. Config to update. + // Required. Workstation configuration to update. WorkstationConfig workstation_config = 1 [(google.api.field_behavior) = REQUIRED]; @@ -1202,7 +1750,7 @@ message UpdateWorkstationConfigRequest { google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL]; @@ -1222,7 +1770,7 @@ message DeleteWorkstationConfigRequest { } ]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 2 [(google.api.field_behavior) = OPTIONAL]; @@ -1263,6 +1811,10 @@ message ListWorkstationsRequest { // Optional. next_page_token value returned from a previous List request, if // any. string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter the Workstations to be listed. Possible filters are + // described in https://google.aip.dev/160. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; } // Response message for ListWorkstations. @@ -1322,10 +1874,14 @@ message CreateWorkstationRequest { // Required. ID to use for the workstation. string workstation_id = 2 [(google.api.field_behavior) = REQUIRED]; - // Required. Workstation to create. + // Required. Workstation to create. If source_workstation is specified, the + // user must have `workstations.workstations.use` permission on the source + // workstation, and the Cloud Workstations Service Agent for the project where + // you are creating the new workstation must have compute.disks.createSnapshot + // and compute.snapshots.useReadOnly on the source project. Workstation workstation = 3 [(google.api.field_behavior) = REQUIRED]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; } @@ -1335,18 +1891,17 @@ message UpdateWorkstationRequest { // Required. Workstation to update. Workstation workstation = 1 [(google.api.field_behavior) = REQUIRED]; - // Required. Mask specifying which fields in the workstation configuration - // should be updated. + // Required. Mask specifying which fields in the workstation should be + // updated. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL]; - // Optional. If set and the workstation configuration is not found, a new - // workstation configuration is created. In this situation, update_mask - // is ignored. + // Optional. If set and the workstation is not found, a new workstation is + // created. In this situation, update_mask is ignored. bool allow_missing = 4 [(google.api.field_behavior) = OPTIONAL]; } @@ -1360,7 +1915,7 @@ message DeleteWorkstationRequest { } ]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 2 [(google.api.field_behavior) = OPTIONAL]; @@ -1379,13 +1934,17 @@ message StartWorkstationRequest { } ]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 2 [(google.api.field_behavior) = OPTIONAL]; // Optional. If set, the request will be rejected if the latest version of the // workstation on the server does not have this ETag. string etag = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set, the workstation starts using the boost configuration with + // the specified ID. + string boost_config = 4 [(google.api.field_behavior) = OPTIONAL]; } // Request message for StopWorkstation. @@ -1398,7 +1957,7 @@ message StopWorkstationRequest { } ]; - // Optional. If set, validate the request and preview the review, but do not + // Optional. If set, validate the request and preview the result, but do not // actually apply it. bool validate_only = 2 [(google.api.field_behavior) = OPTIONAL]; @@ -1431,6 +1990,13 @@ message GenerateAccessTokenRequest { type: "workstations.googleapis.com/Workstation" } ]; + + // Optional. Port for which the access token should be generated. If + // specified, the generated access token grants access only to the + // specified port of the workstation. If specified, values must be within the + // range [1 - 65535]. If not specified, the generated access token grants + // access to all ports of the workstation. + int32 port = 4 [(google.api.field_behavior) = OPTIONAL]; } // Response message for GenerateAccessToken. @@ -1445,6 +2011,47 @@ message GenerateAccessTokenResponse { google.protobuf.Timestamp expire_time = 2; } +// Request message for PushCredentials. +message PushCredentialsRequest { + // OAuth token. + message OAuthToken { + // Optional. The email address encapsulated in the OAuth token. + string email = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The scopes encapsulated in the OAuth token. + // See https://developers.google.com/identity/protocols/oauth2/scopes for + // more information. + string scopes = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Required. The OAuth token. + string access_token = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The time the OAuth access token will expire. This should be the + // time the access token was generated plus the expires_in offset returned + // from the Access Token Response. + google.protobuf.Timestamp expire_time = 4 + [(google.api.field_behavior) = OPTIONAL]; + } + + // Required. Name of the workstation for which the credentials should be + // pushed. + string workstation = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "workstations.googleapis.com/Workstation" + } + ]; + + // Optional. Credentials used by Cloud Client Libraries, Google API Client + // Libraries, and other tooling within the user conainer: + // https://cloud.google.com/docs/authentication/application-default-credentials + OAuthToken application_default_credentials = 2 + [(google.api.field_behavior) = OPTIONAL]; +} + +// Metadata message for PushCredentials. +message PushCredentialsMetadata {} + // Metadata for long-running operations. message OperationMetadata { // Output only. Time that the operation was created. diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/generateaccesstoken/AsyncGenerateAccessToken.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/generateaccesstoken/AsyncGenerateAccessToken.java index 343ff07b6121..260aa1b70a0c 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/generateaccesstoken/AsyncGenerateAccessToken.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/generateaccesstoken/AsyncGenerateAccessToken.java @@ -46,6 +46,7 @@ public static void asyncGenerateAccessToken() throws Exception { "[WORKSTATION_CONFIG]", "[WORKSTATION]") .toString()) + .setPort(3446913) .build(); ApiFuture future = workstationsClient.generateAccessTokenCallable().futureCall(request); diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/generateaccesstoken/SyncGenerateAccessToken.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/generateaccesstoken/SyncGenerateAccessToken.java index 661226e308df..56e2424c1653 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/generateaccesstoken/SyncGenerateAccessToken.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/generateaccesstoken/SyncGenerateAccessToken.java @@ -45,6 +45,7 @@ public static void syncGenerateAccessToken() throws Exception { "[WORKSTATION_CONFIG]", "[WORKSTATION]") .toString()) + .setPort(3446913) .build(); GenerateAccessTokenResponse response = workstationsClient.generateAccessToken(request); } diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationclusters/AsyncListWorkstationClusters.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationclusters/AsyncListWorkstationClusters.java index 5161dac52e6d..6f652f798f63 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationclusters/AsyncListWorkstationClusters.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationclusters/AsyncListWorkstationClusters.java @@ -41,6 +41,7 @@ public static void asyncListWorkstationClusters() throws Exception { .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); ApiFuture future = workstationsClient.listWorkstationClustersPagedCallable().futureCall(request); diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationclusters/AsyncListWorkstationClustersPaged.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationclusters/AsyncListWorkstationClustersPaged.java index 7244da8a6047..10061abc37db 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationclusters/AsyncListWorkstationClustersPaged.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationclusters/AsyncListWorkstationClustersPaged.java @@ -42,6 +42,7 @@ public static void asyncListWorkstationClustersPaged() throws Exception { .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); while (true) { ListWorkstationClustersResponse response = diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationclusters/SyncListWorkstationClusters.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationclusters/SyncListWorkstationClusters.java index 22ed7472812b..532058e0bcab 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationclusters/SyncListWorkstationClusters.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationclusters/SyncListWorkstationClusters.java @@ -40,6 +40,7 @@ public static void syncListWorkstationClusters() throws Exception { .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); for (WorkstationCluster element : workstationsClient.listWorkstationClusters(request).iterateAll()) { diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationconfigs/AsyncListWorkstationConfigs.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationconfigs/AsyncListWorkstationConfigs.java index d566b8d8aa9b..909bab21559a 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationconfigs/AsyncListWorkstationConfigs.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationconfigs/AsyncListWorkstationConfigs.java @@ -43,6 +43,7 @@ public static void asyncListWorkstationConfigs() throws Exception { .toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); ApiFuture future = workstationsClient.listWorkstationConfigsPagedCallable().futureCall(request); diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationconfigs/AsyncListWorkstationConfigsPaged.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationconfigs/AsyncListWorkstationConfigsPaged.java index 995731a41d82..643b814c8436 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationconfigs/AsyncListWorkstationConfigsPaged.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationconfigs/AsyncListWorkstationConfigsPaged.java @@ -44,6 +44,7 @@ public static void asyncListWorkstationConfigsPaged() throws Exception { .toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); while (true) { ListWorkstationConfigsResponse response = diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationconfigs/SyncListWorkstationConfigs.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationconfigs/SyncListWorkstationConfigs.java index 1ff0aa17702b..bf4b5b57bad2 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationconfigs/SyncListWorkstationConfigs.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstationconfigs/SyncListWorkstationConfigs.java @@ -42,6 +42,7 @@ public static void syncListWorkstationConfigs() throws Exception { .toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); for (WorkstationConfig element : workstationsClient.listWorkstationConfigs(request).iterateAll()) { diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstations/AsyncListWorkstations.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstations/AsyncListWorkstations.java index 77964d716a7e..283d8c9b0217 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstations/AsyncListWorkstations.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstations/AsyncListWorkstations.java @@ -47,6 +47,7 @@ public static void asyncListWorkstations() throws Exception { .toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); ApiFuture future = workstationsClient.listWorkstationsPagedCallable().futureCall(request); diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstations/AsyncListWorkstationsPaged.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstations/AsyncListWorkstationsPaged.java index ce827db90546..b3af2e474a9d 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstations/AsyncListWorkstationsPaged.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstations/AsyncListWorkstationsPaged.java @@ -48,6 +48,7 @@ public static void asyncListWorkstationsPaged() throws Exception { .toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); while (true) { ListWorkstationsResponse response = diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstations/SyncListWorkstations.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstations/SyncListWorkstations.java index 7fe539ccca9a..55662415f526 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstations/SyncListWorkstations.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/listworkstations/SyncListWorkstations.java @@ -46,6 +46,7 @@ public static void syncListWorkstations() throws Exception { .toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); for (Workstation element : workstationsClient.listWorkstations(request).iterateAll()) { // doThingsWith(element); diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/startworkstation/AsyncStartWorkstation.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/startworkstation/AsyncStartWorkstation.java index 62abcb5552c1..ff43337e7722 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/startworkstation/AsyncStartWorkstation.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/startworkstation/AsyncStartWorkstation.java @@ -48,6 +48,7 @@ public static void asyncStartWorkstation() throws Exception { .toString()) .setValidateOnly(true) .setEtag("etag3123477") + .setBoostConfig("boostConfig1345260741") .build(); ApiFuture future = workstationsClient.startWorkstationCallable().futureCall(request); diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/startworkstation/AsyncStartWorkstationLRO.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/startworkstation/AsyncStartWorkstationLRO.java index 73cb2995fa70..17465069e7bc 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/startworkstation/AsyncStartWorkstationLRO.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/startworkstation/AsyncStartWorkstationLRO.java @@ -49,6 +49,7 @@ public static void asyncStartWorkstationLRO() throws Exception { .toString()) .setValidateOnly(true) .setEtag("etag3123477") + .setBoostConfig("boostConfig1345260741") .build(); OperationFuture future = workstationsClient.startWorkstationOperationCallable().futureCall(request); diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/startworkstation/SyncStartWorkstation.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/startworkstation/SyncStartWorkstation.java index d293c91ca96a..1248d9e5901c 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/startworkstation/SyncStartWorkstation.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1/workstations/startworkstation/SyncStartWorkstation.java @@ -47,6 +47,7 @@ public static void syncStartWorkstation() throws Exception { .toString()) .setValidateOnly(true) .setEtag("etag3123477") + .setBoostConfig("boostConfig1345260741") .build(); Workstation response = workstationsClient.startWorkstationAsync(request).get(); } diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/generateaccesstoken/AsyncGenerateAccessToken.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/generateaccesstoken/AsyncGenerateAccessToken.java index 9cdfa7be60de..35c833f14fd2 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/generateaccesstoken/AsyncGenerateAccessToken.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/generateaccesstoken/AsyncGenerateAccessToken.java @@ -46,6 +46,7 @@ public static void asyncGenerateAccessToken() throws Exception { "[WORKSTATION_CONFIG]", "[WORKSTATION]") .toString()) + .setPort(3446913) .build(); ApiFuture future = workstationsClient.generateAccessTokenCallable().futureCall(request); diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/generateaccesstoken/SyncGenerateAccessToken.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/generateaccesstoken/SyncGenerateAccessToken.java index 52d9f0f6a83b..40d4b11eaa06 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/generateaccesstoken/SyncGenerateAccessToken.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/generateaccesstoken/SyncGenerateAccessToken.java @@ -45,6 +45,7 @@ public static void syncGenerateAccessToken() throws Exception { "[WORKSTATION_CONFIG]", "[WORKSTATION]") .toString()) + .setPort(3446913) .build(); GenerateAccessTokenResponse response = workstationsClient.generateAccessToken(request); } diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationclusters/AsyncListWorkstationClusters.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationclusters/AsyncListWorkstationClusters.java index ffb78d6abf76..b03657e77bfc 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationclusters/AsyncListWorkstationClusters.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationclusters/AsyncListWorkstationClusters.java @@ -41,6 +41,7 @@ public static void asyncListWorkstationClusters() throws Exception { .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); ApiFuture future = workstationsClient.listWorkstationClustersPagedCallable().futureCall(request); diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationclusters/AsyncListWorkstationClustersPaged.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationclusters/AsyncListWorkstationClustersPaged.java index b152ad57829e..808bb9ca00a4 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationclusters/AsyncListWorkstationClustersPaged.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationclusters/AsyncListWorkstationClustersPaged.java @@ -42,6 +42,7 @@ public static void asyncListWorkstationClustersPaged() throws Exception { .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); while (true) { ListWorkstationClustersResponse response = diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationclusters/SyncListWorkstationClusters.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationclusters/SyncListWorkstationClusters.java index 0eef3aa98c6d..dd8188e46889 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationclusters/SyncListWorkstationClusters.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationclusters/SyncListWorkstationClusters.java @@ -40,6 +40,7 @@ public static void syncListWorkstationClusters() throws Exception { .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); for (WorkstationCluster element : workstationsClient.listWorkstationClusters(request).iterateAll()) { diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationconfigs/AsyncListWorkstationConfigs.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationconfigs/AsyncListWorkstationConfigs.java index 6ee29b6cd623..85718f0e3b4b 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationconfigs/AsyncListWorkstationConfigs.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationconfigs/AsyncListWorkstationConfigs.java @@ -43,6 +43,7 @@ public static void asyncListWorkstationConfigs() throws Exception { .toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); ApiFuture future = workstationsClient.listWorkstationConfigsPagedCallable().futureCall(request); diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationconfigs/AsyncListWorkstationConfigsPaged.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationconfigs/AsyncListWorkstationConfigsPaged.java index 446295818c34..e0128575b821 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationconfigs/AsyncListWorkstationConfigsPaged.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationconfigs/AsyncListWorkstationConfigsPaged.java @@ -44,6 +44,7 @@ public static void asyncListWorkstationConfigsPaged() throws Exception { .toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); while (true) { ListWorkstationConfigsResponse response = diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationconfigs/SyncListWorkstationConfigs.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationconfigs/SyncListWorkstationConfigs.java index af34dd2dbb71..8e97f1dce916 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationconfigs/SyncListWorkstationConfigs.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstationconfigs/SyncListWorkstationConfigs.java @@ -42,6 +42,7 @@ public static void syncListWorkstationConfigs() throws Exception { .toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); for (WorkstationConfig element : workstationsClient.listWorkstationConfigs(request).iterateAll()) { diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstations/AsyncListWorkstations.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstations/AsyncListWorkstations.java index e9c68f98c3c1..1dbcd332ebda 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstations/AsyncListWorkstations.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstations/AsyncListWorkstations.java @@ -47,6 +47,7 @@ public static void asyncListWorkstations() throws Exception { .toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); ApiFuture future = workstationsClient.listWorkstationsPagedCallable().futureCall(request); diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstations/AsyncListWorkstationsPaged.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstations/AsyncListWorkstationsPaged.java index 1226fdddb294..3716dcc42fb6 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstations/AsyncListWorkstationsPaged.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstations/AsyncListWorkstationsPaged.java @@ -48,6 +48,7 @@ public static void asyncListWorkstationsPaged() throws Exception { .toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); while (true) { ListWorkstationsResponse response = diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstations/SyncListWorkstations.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstations/SyncListWorkstations.java index 5664e5be23eb..8c7eda477d79 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstations/SyncListWorkstations.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/listworkstations/SyncListWorkstations.java @@ -46,6 +46,7 @@ public static void syncListWorkstations() throws Exception { .toString()) .setPageSize(883849137) .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") .build(); for (Workstation element : workstationsClient.listWorkstations(request).iterateAll()) { // doThingsWith(element); diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/AsyncPushCredentials.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/AsyncPushCredentials.java new file mode 100644 index 000000000000..e0e8a09ad832 --- /dev/null +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/AsyncPushCredentials.java @@ -0,0 +1,59 @@ +/* + * 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.cloud.workstations.v1beta.samples; + +// [START workstations_v1beta_generated_Workstations_PushCredentials_async] +import com.google.api.core.ApiFuture; +import com.google.cloud.workstations.v1beta.PushCredentialsRequest; +import com.google.cloud.workstations.v1beta.WorkstationName; +import com.google.cloud.workstations.v1beta.WorkstationsClient; +import com.google.longrunning.Operation; + +public class AsyncPushCredentials { + + public static void main(String[] args) throws Exception { + asyncPushCredentials(); + } + + public static void asyncPushCredentials() 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 (WorkstationsClient workstationsClient = WorkstationsClient.create()) { + PushCredentialsRequest request = + PushCredentialsRequest.newBuilder() + .setWorkstation( + WorkstationName.of( + "[PROJECT]", + "[LOCATION]", + "[WORKSTATION_CLUSTER]", + "[WORKSTATION_CONFIG]", + "[WORKSTATION]") + .toString()) + .setApplicationDefaultCredentials( + PushCredentialsRequest.OAuthToken.newBuilder().build()) + .build(); + ApiFuture future = + workstationsClient.pushCredentialsCallable().futureCall(request); + // Do something. + Operation response = future.get(); + } + } +} +// [END workstations_v1beta_generated_Workstations_PushCredentials_async] diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/AsyncPushCredentialsLRO.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/AsyncPushCredentialsLRO.java new file mode 100644 index 000000000000..7429a4b173ca --- /dev/null +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/AsyncPushCredentialsLRO.java @@ -0,0 +1,60 @@ +/* + * 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.cloud.workstations.v1beta.samples; + +// [START workstations_v1beta_generated_Workstations_PushCredentials_LRO_async] +import com.google.api.gax.longrunning.OperationFuture; +import com.google.cloud.workstations.v1beta.PushCredentialsMetadata; +import com.google.cloud.workstations.v1beta.PushCredentialsRequest; +import com.google.cloud.workstations.v1beta.Workstation; +import com.google.cloud.workstations.v1beta.WorkstationName; +import com.google.cloud.workstations.v1beta.WorkstationsClient; + +public class AsyncPushCredentialsLRO { + + public static void main(String[] args) throws Exception { + asyncPushCredentialsLRO(); + } + + public static void asyncPushCredentialsLRO() 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 (WorkstationsClient workstationsClient = WorkstationsClient.create()) { + PushCredentialsRequest request = + PushCredentialsRequest.newBuilder() + .setWorkstation( + WorkstationName.of( + "[PROJECT]", + "[LOCATION]", + "[WORKSTATION_CLUSTER]", + "[WORKSTATION_CONFIG]", + "[WORKSTATION]") + .toString()) + .setApplicationDefaultCredentials( + PushCredentialsRequest.OAuthToken.newBuilder().build()) + .build(); + OperationFuture future = + workstationsClient.pushCredentialsOperationCallable().futureCall(request); + // Do something. + Workstation response = future.get(); + } + } +} +// [END workstations_v1beta_generated_Workstations_PushCredentials_LRO_async] diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/SyncPushCredentials.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/SyncPushCredentials.java new file mode 100644 index 000000000000..56447373fc7e --- /dev/null +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/SyncPushCredentials.java @@ -0,0 +1,55 @@ +/* + * 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.cloud.workstations.v1beta.samples; + +// [START workstations_v1beta_generated_Workstations_PushCredentials_sync] +import com.google.cloud.workstations.v1beta.PushCredentialsRequest; +import com.google.cloud.workstations.v1beta.Workstation; +import com.google.cloud.workstations.v1beta.WorkstationName; +import com.google.cloud.workstations.v1beta.WorkstationsClient; + +public class SyncPushCredentials { + + public static void main(String[] args) throws Exception { + syncPushCredentials(); + } + + public static void syncPushCredentials() 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 (WorkstationsClient workstationsClient = WorkstationsClient.create()) { + PushCredentialsRequest request = + PushCredentialsRequest.newBuilder() + .setWorkstation( + WorkstationName.of( + "[PROJECT]", + "[LOCATION]", + "[WORKSTATION_CLUSTER]", + "[WORKSTATION_CONFIG]", + "[WORKSTATION]") + .toString()) + .setApplicationDefaultCredentials( + PushCredentialsRequest.OAuthToken.newBuilder().build()) + .build(); + Workstation response = workstationsClient.pushCredentialsAsync(request).get(); + } + } +} +// [END workstations_v1beta_generated_Workstations_PushCredentials_sync] diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/SyncPushCredentialsString.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/SyncPushCredentialsString.java new file mode 100644 index 000000000000..a7436c640e78 --- /dev/null +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/SyncPushCredentialsString.java @@ -0,0 +1,49 @@ +/* + * 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.cloud.workstations.v1beta.samples; + +// [START workstations_v1beta_generated_Workstations_PushCredentials_String_sync] +import com.google.cloud.workstations.v1beta.Workstation; +import com.google.cloud.workstations.v1beta.WorkstationName; +import com.google.cloud.workstations.v1beta.WorkstationsClient; + +public class SyncPushCredentialsString { + + public static void main(String[] args) throws Exception { + syncPushCredentialsString(); + } + + public static void syncPushCredentialsString() 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 (WorkstationsClient workstationsClient = WorkstationsClient.create()) { + String workstation = + WorkstationName.of( + "[PROJECT]", + "[LOCATION]", + "[WORKSTATION_CLUSTER]", + "[WORKSTATION_CONFIG]", + "[WORKSTATION]") + .toString(); + Workstation response = workstationsClient.pushCredentialsAsync(workstation).get(); + } + } +} +// [END workstations_v1beta_generated_Workstations_PushCredentials_String_sync] diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/SyncPushCredentialsWorkstationname.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/SyncPushCredentialsWorkstationname.java new file mode 100644 index 000000000000..1f1f5f69a480 --- /dev/null +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/pushcredentials/SyncPushCredentialsWorkstationname.java @@ -0,0 +1,48 @@ +/* + * 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.cloud.workstations.v1beta.samples; + +// [START workstations_v1beta_generated_Workstations_PushCredentials_Workstationname_sync] +import com.google.cloud.workstations.v1beta.Workstation; +import com.google.cloud.workstations.v1beta.WorkstationName; +import com.google.cloud.workstations.v1beta.WorkstationsClient; + +public class SyncPushCredentialsWorkstationname { + + public static void main(String[] args) throws Exception { + syncPushCredentialsWorkstationname(); + } + + public static void syncPushCredentialsWorkstationname() 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 (WorkstationsClient workstationsClient = WorkstationsClient.create()) { + WorkstationName workstation = + WorkstationName.of( + "[PROJECT]", + "[LOCATION]", + "[WORKSTATION_CLUSTER]", + "[WORKSTATION_CONFIG]", + "[WORKSTATION]"); + Workstation response = workstationsClient.pushCredentialsAsync(workstation).get(); + } + } +} +// [END workstations_v1beta_generated_Workstations_PushCredentials_Workstationname_sync] diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/startworkstation/AsyncStartWorkstation.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/startworkstation/AsyncStartWorkstation.java index 4c5a1d228254..ac4a9aaf1d71 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/startworkstation/AsyncStartWorkstation.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/startworkstation/AsyncStartWorkstation.java @@ -48,6 +48,7 @@ public static void asyncStartWorkstation() throws Exception { .toString()) .setValidateOnly(true) .setEtag("etag3123477") + .setBoostConfig("boostConfig1345260741") .build(); ApiFuture future = workstationsClient.startWorkstationCallable().futureCall(request); diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/startworkstation/AsyncStartWorkstationLRO.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/startworkstation/AsyncStartWorkstationLRO.java index 91a04fcf81e3..da759cdac82f 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/startworkstation/AsyncStartWorkstationLRO.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/startworkstation/AsyncStartWorkstationLRO.java @@ -49,6 +49,7 @@ public static void asyncStartWorkstationLRO() throws Exception { .toString()) .setValidateOnly(true) .setEtag("etag3123477") + .setBoostConfig("boostConfig1345260741") .build(); OperationFuture future = workstationsClient.startWorkstationOperationCallable().futureCall(request); diff --git a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/startworkstation/SyncStartWorkstation.java b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/startworkstation/SyncStartWorkstation.java index ef5230f83e74..fbaeb12ebb4b 100644 --- a/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/startworkstation/SyncStartWorkstation.java +++ b/java-workstations/samples/snippets/generated/com/google/cloud/workstations/v1beta/workstations/startworkstation/SyncStartWorkstation.java @@ -47,6 +47,7 @@ public static void syncStartWorkstation() throws Exception { .toString()) .setValidateOnly(true) .setEtag("etag3123477") + .setBoostConfig("boostConfig1345260741") .build(); Workstation response = workstationsClient.startWorkstationAsync(request).get(); }