diff --git a/java-iam-admin/README.md b/java-iam-admin/README.md index f741f89f4cbd..a4d12827ed2b 100644 --- a/java-iam-admin/README.md +++ b/java-iam-admin/README.md @@ -20,7 +20,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.23.0 + 26.27.0 pom import @@ -195,7 +195,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html [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.19.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-iam-admin/3.25.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/README.md b/java-iam/README.md index 374897d3ba88..a21f9db76ccc 100644 --- a/java-iam/README.md +++ b/java-iam/README.md @@ -20,7 +20,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.19.0 + 26.27.0 pom import @@ -195,7 +195,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-iam/java11.html [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.19.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-iam-policy/1.28.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 c0f50c744ccb..ba7907245939 100644 --- a/java-iamcredentials/README.md +++ b/java-iamcredentials/README.md @@ -20,7 +20,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.23.0 + 26.27.0 pom import @@ -195,7 +195,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html [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.24.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-iamcredentials/2.30.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 aec0ee00aa78..921a80df054f 100644 --- a/java-ids/README.md +++ b/java-ids/README.md @@ -20,7 +20,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.23.0 + 26.27.0 pom import @@ -195,7 +195,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html [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.23.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-ids/1.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-infra-manager/README.md b/java-infra-manager/README.md index ae9ac401e74e..fdfbf9baec5c 100644 --- a/java-infra-manager/README.md +++ b/java-infra-manager/README.md @@ -23,7 +23,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.23.0 + 26.27.0 pom import @@ -201,7 +201,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-infra-manager/java11.html [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-infra-manager.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-infra-manager/0.1.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-infra-manager/0.7.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 3f3783b0df5f..155c09f6979f 100644 --- a/java-iot/README.md +++ b/java-iot/README.md @@ -20,7 +20,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.23.0 + 26.27.0 pom import @@ -195,7 +195,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html [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.24.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-iot/2.30.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 a936f91ce6d6..5bb729344095 100644 --- a/java-kms/README.md +++ b/java-kms/README.md @@ -20,7 +20,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.23.0 + 26.27.0 pom import @@ -195,7 +195,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html [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.27.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-kms/2.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-kmsinventory/README.md b/java-kmsinventory/README.md index 094be909e313..7fd08d5c34d8 100644 --- a/java-kmsinventory/README.md +++ b/java-kmsinventory/README.md @@ -23,7 +23,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.23.0 + 26.27.0 pom import @@ -201,7 +201,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-kmsinventory/java11.html [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.13.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-kmsinventory/0.19.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 792dde2b55d3..4c23fe9a6152 100644 --- a/java-language/README.md +++ b/java-language/README.md @@ -20,7 +20,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.23.0 + 26.27.0 pom import @@ -227,7 +227,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html [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.25.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-language/2.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-life-sciences/README.md b/java-life-sciences/README.md index 6faebbde75eb..d6c09117b09d 100644 --- a/java-life-sciences/README.md +++ b/java-life-sciences/README.md @@ -23,7 +23,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.23.0 + 26.27.0 pom import @@ -201,7 +201,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html [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.26.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-life-sciences/0.32.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 c52016a4960b..a9cd14d68aec 100644 --- a/java-managed-identities/README.md +++ b/java-managed-identities/README.md @@ -20,7 +20,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.23.0 + 26.27.0 pom import @@ -195,7 +195,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html [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.22.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-managed-identities/1.28.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 2b9fd345eb52..c6c9fcab6d6c 100644 --- a/java-maps-addressvalidation/README.md +++ b/java-maps-addressvalidation/README.md @@ -23,7 +23,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.23.0 + 26.27.0 pom import @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.maps google-maps-addressvalidation - 0.24.0 + 0.23.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.maps:google-maps-addressvalidation:0.24.0' +implementation 'com.google.maps:google-maps-addressvalidation:0.23.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.maps" % "google-maps-addressvalidation" % "0.24.0" +libraryDependencies += "com.google.maps" % "google-maps-addressvalidation" % "0.23.0" ``` @@ -201,7 +201,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-maps-addressvalidation/java11.html [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.18.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-addressvalidation/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-maps-places/README.md b/java-maps-places/README.md index 6e827c2fd973..25c0f7530eb4 100644 --- a/java-maps-places/README.md +++ b/java-maps-places/README.md @@ -23,7 +23,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.26.0 + 26.27.0 pom import @@ -45,20 +45,20 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.maps google-maps-places - 0.1.0 + 0.0.0 ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.maps:google-maps-places:0.1.0' +implementation 'com.google.maps:google-maps-places:0.0.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.maps" % "google-maps-places" % "0.1.0" +libraryDependencies += "com.google.maps" % "google-maps-places" % "0.0.0" ``` diff --git a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/PlacesClient.java b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/PlacesClient.java index e01f7ae647fe..252d713f0974 100644 --- a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/PlacesClient.java +++ b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/PlacesClient.java @@ -26,7 +26,10 @@ // AUTO-GENERATED DOCUMENTATION AND CLASS. /** - * Service Description: Service definition for the Places API. + * Service Description: Service definition for the Places API. Note: every request actually requires + * a field mask set outside of the request proto (all/'*' is not assumed). That can be set via + * either a side channel (SystemParameterContext) over RPC, or a header (X-Goog-FieldMask) over + * HTTP. See: https://cloud.google.com/apis/docs/system-parameters * *

This class provides the ability to make remote calls to the backing service through method * calls that map to API methods. Sample code to get started: @@ -38,23 +41,18 @@ * // - 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 (PlacesClient placesClient = PlacesClient.create()) { - * SearchTextRequest request = - * SearchTextRequest.newBuilder() - * .setTextQuery("textQuery-1050470501") + * SearchNearbyRequest request = + * SearchNearbyRequest.newBuilder() * .setLanguageCode("languageCode-2092349083") * .setRegionCode("regionCode-1991004415") - * .setLocation(SearchTextRequest.Location.newBuilder().build()) - * .setIncludedType("includedType-45971946") - * .setOpenNow(true) - * .setPriceRange(Int32Range.newBuilder().build()) - * .setMinRating(-543315926) + * .addAllIncludedTypes(new ArrayList()) + * .addAllExcludedTypes(new ArrayList()) + * .addAllIncludedPrimaryTypes(new ArrayList()) + * .addAllExcludedPrimaryTypes(new ArrayList()) * .setMaxResultCount(-1736124056) - * .addAllPriceLevels(new ArrayList()) - * .setStrictTypeFiltering(true) - * .setLocationBias(SearchTextRequest.LocationBias.newBuilder().build()) - * .setLocationRestriction(SearchTextRequest.LocationRestriction.newBuilder().build()) + * .setLocationRestriction(SearchNearbyRequest.LocationRestriction.newBuilder().build()) * .build(); - * SearchTextResponse response = placesClient.searchText(request); + * SearchNearbyResponse response = placesClient.searchNearby(request); * } * } * @@ -174,6 +172,76 @@ public PlacesStub getStub() { return stub; } + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Search for places near locations. + * + *

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 (PlacesClient placesClient = PlacesClient.create()) {
+   *   SearchNearbyRequest request =
+   *       SearchNearbyRequest.newBuilder()
+   *           .setLanguageCode("languageCode-2092349083")
+   *           .setRegionCode("regionCode-1991004415")
+   *           .addAllIncludedTypes(new ArrayList())
+   *           .addAllExcludedTypes(new ArrayList())
+   *           .addAllIncludedPrimaryTypes(new ArrayList())
+   *           .addAllExcludedPrimaryTypes(new ArrayList())
+   *           .setMaxResultCount(-1736124056)
+   *           .setLocationRestriction(SearchNearbyRequest.LocationRestriction.newBuilder().build())
+   *           .build();
+   *   SearchNearbyResponse response = placesClient.searchNearby(request);
+   * }
+   * }
+ * + * @param request The request object containing all of the parameters for the API call. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final SearchNearbyResponse searchNearby(SearchNearbyRequest request) { + return searchNearbyCallable().call(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Search for places near locations. + * + *

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 (PlacesClient placesClient = PlacesClient.create()) {
+   *   SearchNearbyRequest request =
+   *       SearchNearbyRequest.newBuilder()
+   *           .setLanguageCode("languageCode-2092349083")
+   *           .setRegionCode("regionCode-1991004415")
+   *           .addAllIncludedTypes(new ArrayList())
+   *           .addAllExcludedTypes(new ArrayList())
+   *           .addAllIncludedPrimaryTypes(new ArrayList())
+   *           .addAllExcludedPrimaryTypes(new ArrayList())
+   *           .setMaxResultCount(-1736124056)
+   *           .setLocationRestriction(SearchNearbyRequest.LocationRestriction.newBuilder().build())
+   *           .build();
+   *   ApiFuture future =
+   *       placesClient.searchNearbyCallable().futureCall(request);
+   *   // Do something.
+   *   SearchNearbyResponse response = future.get();
+   * }
+   * }
+ */ + public final UnaryCallable searchNearbyCallable() { + return stub.searchNearbyCallable(); + } + // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Text query based place search. @@ -192,10 +260,8 @@ public PlacesStub getStub() { * .setTextQuery("textQuery-1050470501") * .setLanguageCode("languageCode-2092349083") * .setRegionCode("regionCode-1991004415") - * .setLocation(SearchTextRequest.Location.newBuilder().build()) * .setIncludedType("includedType-45971946") * .setOpenNow(true) - * .setPriceRange(Int32Range.newBuilder().build()) * .setMinRating(-543315926) * .setMaxResultCount(-1736124056) * .addAllPriceLevels(new ArrayList()) @@ -232,10 +298,8 @@ public final SearchTextResponse searchText(SearchTextRequest request) { * .setTextQuery("textQuery-1050470501") * .setLanguageCode("languageCode-2092349083") * .setRegionCode("regionCode-1991004415") - * .setLocation(SearchTextRequest.Location.newBuilder().build()) * .setIncludedType("includedType-45971946") * .setOpenNow(true) - * .setPriceRange(Int32Range.newBuilder().build()) * .setMinRating(-543315926) * .setMaxResultCount(-1736124056) * .addAllPriceLevels(new ArrayList()) @@ -253,6 +317,236 @@ public final UnaryCallable searchTextCall return stub.searchTextCallable(); } + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Get a photo media with a photo reference string. + * + *

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 (PlacesClient placesClient = PlacesClient.create()) {
+   *   PhotoMediaName name = PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]");
+   *   PhotoMedia response = placesClient.getPhotoMedia(name);
+   * }
+   * }
+ * + * @param name Required. The resource name of a photo. It is returned in Place's photos.name + * field. Format: places/<place_id>/photos/<photo_reference>/media. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final PhotoMedia getPhotoMedia(PhotoMediaName name) { + GetPhotoMediaRequest request = + GetPhotoMediaRequest.newBuilder().setName(name == null ? null : name.toString()).build(); + return getPhotoMedia(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Get a photo media with a photo reference string. + * + *

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 (PlacesClient placesClient = PlacesClient.create()) {
+   *   String name = PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]").toString();
+   *   PhotoMedia response = placesClient.getPhotoMedia(name);
+   * }
+   * }
+ * + * @param name Required. The resource name of a photo. It is returned in Place's photos.name + * field. Format: places/<place_id>/photos/<photo_reference>/media. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final PhotoMedia getPhotoMedia(String name) { + GetPhotoMediaRequest request = GetPhotoMediaRequest.newBuilder().setName(name).build(); + return getPhotoMedia(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Get a photo media with a photo reference string. + * + *

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 (PlacesClient placesClient = PlacesClient.create()) {
+   *   GetPhotoMediaRequest request =
+   *       GetPhotoMediaRequest.newBuilder()
+   *           .setName(PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]").toString())
+   *           .setMaxWidthPx(-428899428)
+   *           .setMaxHeightPx(-1974259963)
+   *           .setSkipHttpRedirect(true)
+   *           .build();
+   *   PhotoMedia response = placesClient.getPhotoMedia(request);
+   * }
+   * }
+ * + * @param request The request object containing all of the parameters for the API call. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final PhotoMedia getPhotoMedia(GetPhotoMediaRequest request) { + return getPhotoMediaCallable().call(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Get a photo media with a photo reference string. + * + *

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 (PlacesClient placesClient = PlacesClient.create()) {
+   *   GetPhotoMediaRequest request =
+   *       GetPhotoMediaRequest.newBuilder()
+   *           .setName(PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]").toString())
+   *           .setMaxWidthPx(-428899428)
+   *           .setMaxHeightPx(-1974259963)
+   *           .setSkipHttpRedirect(true)
+   *           .build();
+   *   ApiFuture future = placesClient.getPhotoMediaCallable().futureCall(request);
+   *   // Do something.
+   *   PhotoMedia response = future.get();
+   * }
+   * }
+ */ + public final UnaryCallable getPhotoMediaCallable() { + return stub.getPhotoMediaCallable(); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Get a Place with a place id (in a name) string. + * + *

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 (PlacesClient placesClient = PlacesClient.create()) {
+   *   PlaceName name = PlaceName.of("[PLACE_ID]");
+   *   Place response = placesClient.getPlace(name);
+   * }
+   * }
+ * + * @param name Required. A place_id returned in a Place (with "places/" prefix), or equivalently + * the name in the same Place. Format: places/<place_id>. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final Place getPlace(PlaceName name) { + GetPlaceRequest request = + GetPlaceRequest.newBuilder().setName(name == null ? null : name.toString()).build(); + return getPlace(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Get a Place with a place id (in a name) string. + * + *

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 (PlacesClient placesClient = PlacesClient.create()) {
+   *   String name = PlaceName.of("[PLACE_ID]").toString();
+   *   Place response = placesClient.getPlace(name);
+   * }
+   * }
+ * + * @param name Required. A place_id returned in a Place (with "places/" prefix), or equivalently + * the name in the same Place. Format: places/<place_id>. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final Place getPlace(String name) { + GetPlaceRequest request = GetPlaceRequest.newBuilder().setName(name).build(); + return getPlace(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Get a Place with a place id (in a name) string. + * + *

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 (PlacesClient placesClient = PlacesClient.create()) {
+   *   GetPlaceRequest request =
+   *       GetPlaceRequest.newBuilder()
+   *           .setName(PlaceName.of("[PLACE_ID]").toString())
+   *           .setLanguageCode("languageCode-2092349083")
+   *           .setRegionCode("regionCode-1991004415")
+   *           .build();
+   *   Place response = placesClient.getPlace(request);
+   * }
+   * }
+ * + * @param request The request object containing all of the parameters for the API call. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final Place getPlace(GetPlaceRequest request) { + return getPlaceCallable().call(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Get a Place with a place id (in a name) string. + * + *

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 (PlacesClient placesClient = PlacesClient.create()) {
+   *   GetPlaceRequest request =
+   *       GetPlaceRequest.newBuilder()
+   *           .setName(PlaceName.of("[PLACE_ID]").toString())
+   *           .setLanguageCode("languageCode-2092349083")
+   *           .setRegionCode("regionCode-1991004415")
+   *           .build();
+   *   ApiFuture future = placesClient.getPlaceCallable().futureCall(request);
+   *   // Do something.
+   *   Place response = future.get();
+   * }
+   * }
+ */ + public final UnaryCallable getPlaceCallable() { + return stub.getPlaceCallable(); + } + @Override public final void close() { stub.close(); diff --git a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/PlacesSettings.java b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/PlacesSettings.java index d31537f0c117..60119591b648 100644 --- a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/PlacesSettings.java +++ b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/PlacesSettings.java @@ -47,7 +47,7 @@ *

The builder of this class is recursive, so contained classes are themselves builders. When * build() is called, the tree of builders is called to create the complete settings object. * - *

For example, to set the total timeout of searchText to 30 seconds: + *

For example, to set the total timeout of searchNearby to 30 seconds: * *

{@code
  * // This snippet has been automatically generated and should be regarded as a code template only.
@@ -57,10 +57,10 @@
  * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
  * PlacesSettings.Builder placesSettingsBuilder = PlacesSettings.newBuilder();
  * placesSettingsBuilder
- *     .searchTextSettings()
+ *     .searchNearbySettings()
  *     .setRetrySettings(
  *         placesSettingsBuilder
- *             .searchTextSettings()
+ *             .searchNearbySettings()
  *             .getRetrySettings()
  *             .toBuilder()
  *             .setTotalTimeout(Duration.ofSeconds(30))
@@ -71,11 +71,26 @@
 @Generated("by gapic-generator-java")
 public class PlacesSettings extends ClientSettings {
 
+  /** Returns the object with the settings used for calls to searchNearby. */
+  public UnaryCallSettings searchNearbySettings() {
+    return ((PlacesStubSettings) getStubSettings()).searchNearbySettings();
+  }
+
   /** Returns the object with the settings used for calls to searchText. */
   public UnaryCallSettings searchTextSettings() {
     return ((PlacesStubSettings) getStubSettings()).searchTextSettings();
   }
 
+  /** Returns the object with the settings used for calls to getPhotoMedia. */
+  public UnaryCallSettings getPhotoMediaSettings() {
+    return ((PlacesStubSettings) getStubSettings()).getPhotoMediaSettings();
+  }
+
+  /** Returns the object with the settings used for calls to getPlace. */
+  public UnaryCallSettings getPlaceSettings() {
+    return ((PlacesStubSettings) getStubSettings()).getPlaceSettings();
+  }
+
   public static final PlacesSettings create(PlacesStubSettings stub) throws IOException {
     return new PlacesSettings.Builder(stub.toBuilder()).build();
   }
@@ -190,11 +205,27 @@ public Builder applyToAllUnaryMethods(
       return this;
     }
 
+    /** Returns the builder for the settings used for calls to searchNearby. */
+    public UnaryCallSettings.Builder
+        searchNearbySettings() {
+      return getStubSettingsBuilder().searchNearbySettings();
+    }
+
     /** Returns the builder for the settings used for calls to searchText. */
     public UnaryCallSettings.Builder searchTextSettings() {
       return getStubSettingsBuilder().searchTextSettings();
     }
 
+    /** Returns the builder for the settings used for calls to getPhotoMedia. */
+    public UnaryCallSettings.Builder getPhotoMediaSettings() {
+      return getStubSettingsBuilder().getPhotoMediaSettings();
+    }
+
+    /** Returns the builder for the settings used for calls to getPlace. */
+    public UnaryCallSettings.Builder getPlaceSettings() {
+      return getStubSettingsBuilder().getPlaceSettings();
+    }
+
     @Override
     public PlacesSettings build() throws IOException {
       return new PlacesSettings(this);
diff --git a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/gapic_metadata.json b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/gapic_metadata.json
index dc7d6951bb6c..d80ad078a4de 100644
--- a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/gapic_metadata.json
+++ b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/gapic_metadata.json
@@ -10,6 +10,15 @@
         "grpc": {
           "libraryClient": "PlacesClient",
           "rpcs": {
+            "GetPhotoMedia": {
+              "methods": ["getPhotoMedia", "getPhotoMedia", "getPhotoMedia", "getPhotoMediaCallable"]
+            },
+            "GetPlace": {
+              "methods": ["getPlace", "getPlace", "getPlace", "getPlaceCallable"]
+            },
+            "SearchNearby": {
+              "methods": ["searchNearby", "searchNearbyCallable"]
+            },
             "SearchText": {
               "methods": ["searchText", "searchTextCallable"]
             }
diff --git a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/package-info.java b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/package-info.java
index 0a2dd69a9bd6..aeba3cd61d45 100644
--- a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/package-info.java
+++ b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/package-info.java
@@ -21,7 +21,10 @@
  *
  * 

======================= PlacesClient ======================= * - *

Service Description: Service definition for the Places API. + *

Service Description: Service definition for the Places API. Note: every request actually + * requires a field mask set outside of the request proto (all/'*' is not assumed). That can be + * set via either a side channel (SystemParameterContext) over RPC, or a header (X-Goog-FieldMask) + * over HTTP. See: https://cloud.google.com/apis/docs/system-parameters * *

Sample for PlacesClient: * @@ -32,23 +35,18 @@ * // - 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 (PlacesClient placesClient = PlacesClient.create()) { - * SearchTextRequest request = - * SearchTextRequest.newBuilder() - * .setTextQuery("textQuery-1050470501") + * SearchNearbyRequest request = + * SearchNearbyRequest.newBuilder() * .setLanguageCode("languageCode-2092349083") * .setRegionCode("regionCode-1991004415") - * .setLocation(SearchTextRequest.Location.newBuilder().build()) - * .setIncludedType("includedType-45971946") - * .setOpenNow(true) - * .setPriceRange(Int32Range.newBuilder().build()) - * .setMinRating(-543315926) + * .addAllIncludedTypes(new ArrayList()) + * .addAllExcludedTypes(new ArrayList()) + * .addAllIncludedPrimaryTypes(new ArrayList()) + * .addAllExcludedPrimaryTypes(new ArrayList()) * .setMaxResultCount(-1736124056) - * .addAllPriceLevels(new ArrayList()) - * .setStrictTypeFiltering(true) - * .setLocationBias(SearchTextRequest.LocationBias.newBuilder().build()) - * .setLocationRestriction(SearchTextRequest.LocationRestriction.newBuilder().build()) + * .setLocationRestriction(SearchNearbyRequest.LocationRestriction.newBuilder().build()) * .build(); - * SearchTextResponse response = placesClient.searchText(request); + * SearchNearbyResponse response = placesClient.searchNearby(request); * } * }

*/ diff --git a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/GrpcPlacesStub.java b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/GrpcPlacesStub.java index d41d9ea50c63..4fe09d9c7ec5 100644 --- a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/GrpcPlacesStub.java +++ b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/GrpcPlacesStub.java @@ -21,8 +21,15 @@ import com.google.api.gax.grpc.GrpcCallSettings; import com.google.api.gax.grpc.GrpcStubCallableFactory; import com.google.api.gax.rpc.ClientContext; +import com.google.api.gax.rpc.RequestParamsBuilder; import com.google.api.gax.rpc.UnaryCallable; import com.google.longrunning.stub.GrpcOperationsStub; +import com.google.maps.places.v1.GetPhotoMediaRequest; +import com.google.maps.places.v1.GetPlaceRequest; +import com.google.maps.places.v1.PhotoMedia; +import com.google.maps.places.v1.Place; +import com.google.maps.places.v1.SearchNearbyRequest; +import com.google.maps.places.v1.SearchNearbyResponse; import com.google.maps.places.v1.SearchTextRequest; import com.google.maps.places.v1.SearchTextResponse; import io.grpc.MethodDescriptor; @@ -39,6 +46,16 @@ */ @Generated("by gapic-generator-java") public class GrpcPlacesStub extends PlacesStub { + private static final MethodDescriptor + searchNearbyMethodDescriptor = + MethodDescriptor.newBuilder() + .setType(MethodDescriptor.MethodType.UNARY) + .setFullMethodName("google.maps.places.v1.Places/SearchNearby") + .setRequestMarshaller(ProtoUtils.marshaller(SearchNearbyRequest.getDefaultInstance())) + .setResponseMarshaller( + ProtoUtils.marshaller(SearchNearbyResponse.getDefaultInstance())) + .build(); + private static final MethodDescriptor searchTextMethodDescriptor = MethodDescriptor.newBuilder() @@ -48,7 +65,28 @@ public class GrpcPlacesStub extends PlacesStub { .setResponseMarshaller(ProtoUtils.marshaller(SearchTextResponse.getDefaultInstance())) .build(); + private static final MethodDescriptor + getPhotoMediaMethodDescriptor = + MethodDescriptor.newBuilder() + .setType(MethodDescriptor.MethodType.UNARY) + .setFullMethodName("google.maps.places.v1.Places/GetPhotoMedia") + .setRequestMarshaller( + ProtoUtils.marshaller(GetPhotoMediaRequest.getDefaultInstance())) + .setResponseMarshaller(ProtoUtils.marshaller(PhotoMedia.getDefaultInstance())) + .build(); + + private static final MethodDescriptor getPlaceMethodDescriptor = + MethodDescriptor.newBuilder() + .setType(MethodDescriptor.MethodType.UNARY) + .setFullMethodName("google.maps.places.v1.Places/GetPlace") + .setRequestMarshaller(ProtoUtils.marshaller(GetPlaceRequest.getDefaultInstance())) + .setResponseMarshaller(ProtoUtils.marshaller(Place.getDefaultInstance())) + .build(); + + private final UnaryCallable searchNearbyCallable; private final UnaryCallable searchTextCallable; + private final UnaryCallable getPhotoMediaCallable; + private final UnaryCallable getPlaceCallable; private final BackgroundResource backgroundResources; private final GrpcOperationsStub operationsStub; @@ -89,14 +127,47 @@ protected GrpcPlacesStub( this.callableFactory = callableFactory; this.operationsStub = GrpcOperationsStub.create(clientContext, callableFactory); + GrpcCallSettings searchNearbyTransportSettings = + GrpcCallSettings.newBuilder() + .setMethodDescriptor(searchNearbyMethodDescriptor) + .build(); GrpcCallSettings searchTextTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(searchTextMethodDescriptor) .build(); + GrpcCallSettings getPhotoMediaTransportSettings = + GrpcCallSettings.newBuilder() + .setMethodDescriptor(getPhotoMediaMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add("name", String.valueOf(request.getName())); + return builder.build(); + }) + .build(); + GrpcCallSettings getPlaceTransportSettings = + GrpcCallSettings.newBuilder() + .setMethodDescriptor(getPlaceMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add("name", String.valueOf(request.getName())); + return builder.build(); + }) + .build(); + this.searchNearbyCallable = + callableFactory.createUnaryCallable( + searchNearbyTransportSettings, settings.searchNearbySettings(), clientContext); this.searchTextCallable = callableFactory.createUnaryCallable( searchTextTransportSettings, settings.searchTextSettings(), clientContext); + this.getPhotoMediaCallable = + callableFactory.createUnaryCallable( + getPhotoMediaTransportSettings, settings.getPhotoMediaSettings(), clientContext); + this.getPlaceCallable = + callableFactory.createUnaryCallable( + getPlaceTransportSettings, settings.getPlaceSettings(), clientContext); this.backgroundResources = new BackgroundResourceAggregation(clientContext.getBackgroundResources()); @@ -106,11 +177,26 @@ public GrpcOperationsStub getOperationsStub() { return operationsStub; } + @Override + public UnaryCallable searchNearbyCallable() { + return searchNearbyCallable; + } + @Override public UnaryCallable searchTextCallable() { return searchTextCallable; } + @Override + public UnaryCallable getPhotoMediaCallable() { + return getPhotoMediaCallable; + } + + @Override + public UnaryCallable getPlaceCallable() { + return getPlaceCallable; + } + @Override public final void close() { try { diff --git a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/HttpJsonPlacesStub.java b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/HttpJsonPlacesStub.java index d2e38b9f0ca7..c041f3a73f42 100644 --- a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/HttpJsonPlacesStub.java +++ b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/HttpJsonPlacesStub.java @@ -27,7 +27,14 @@ import com.google.api.gax.httpjson.ProtoMessageResponseParser; import com.google.api.gax.httpjson.ProtoRestSerializer; import com.google.api.gax.rpc.ClientContext; +import com.google.api.gax.rpc.RequestParamsBuilder; import com.google.api.gax.rpc.UnaryCallable; +import com.google.maps.places.v1.GetPhotoMediaRequest; +import com.google.maps.places.v1.GetPlaceRequest; +import com.google.maps.places.v1.PhotoMedia; +import com.google.maps.places.v1.Place; +import com.google.maps.places.v1.SearchNearbyRequest; +import com.google.maps.places.v1.SearchNearbyResponse; import com.google.maps.places.v1.SearchTextRequest; import com.google.maps.places.v1.SearchTextResponse; import com.google.protobuf.TypeRegistry; @@ -50,6 +57,42 @@ public class HttpJsonPlacesStub extends PlacesStub { private static final TypeRegistry typeRegistry = TypeRegistry.newBuilder().build(); + private static final ApiMethodDescriptor + searchNearbyMethodDescriptor = + ApiMethodDescriptor.newBuilder() + .setFullMethodName("google.maps.places.v1.Places/SearchNearby") + .setHttpMethod("POST") + .setType(ApiMethodDescriptor.MethodType.UNARY) + .setRequestFormatter( + ProtoMessageRequestFormatter.newBuilder() + .setPath( + "/v1/places:searchNearby", + request -> { + Map fields = new HashMap<>(); + ProtoRestSerializer serializer = + ProtoRestSerializer.create(); + 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().build(), true)) + .build()) + .setResponseParser( + ProtoMessageResponseParser.newBuilder() + .setDefaultInstance(SearchNearbyResponse.getDefaultInstance()) + .setDefaultTypeRegistry(typeRegistry) + .build()) + .build(); + private static final ApiMethodDescriptor searchTextMethodDescriptor = ApiMethodDescriptor.newBuilder() @@ -59,7 +102,7 @@ public class HttpJsonPlacesStub extends PlacesStub { .setRequestFormatter( ProtoMessageRequestFormatter.newBuilder() .setPath( - "/v1/Text:search", + "/v1/places:searchText", request -> { Map fields = new HashMap<>(); ProtoRestSerializer serializer = @@ -86,7 +129,84 @@ public class HttpJsonPlacesStub extends PlacesStub { .build()) .build(); + private static final ApiMethodDescriptor + getPhotoMediaMethodDescriptor = + ApiMethodDescriptor.newBuilder() + .setFullMethodName("google.maps.places.v1.Places/GetPhotoMedia") + .setHttpMethod("GET") + .setType(ApiMethodDescriptor.MethodType.UNARY) + .setRequestFormatter( + ProtoMessageRequestFormatter.newBuilder() + .setPath( + "/v1/{name=places/*/photos/*/media}", + request -> { + Map fields = new HashMap<>(); + ProtoRestSerializer serializer = + ProtoRestSerializer.create(); + serializer.putPathParam(fields, "name", request.getName()); + return fields; + }) + .setQueryParamsExtractor( + request -> { + Map> fields = new HashMap<>(); + ProtoRestSerializer serializer = + ProtoRestSerializer.create(); + serializer.putQueryParam( + fields, "maxHeightPx", request.getMaxHeightPx()); + serializer.putQueryParam(fields, "maxWidthPx", request.getMaxWidthPx()); + serializer.putQueryParam( + fields, "skipHttpRedirect", request.getSkipHttpRedirect()); + serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); + return fields; + }) + .setRequestBodyExtractor(request -> null) + .build()) + .setResponseParser( + ProtoMessageResponseParser.newBuilder() + .setDefaultInstance(PhotoMedia.getDefaultInstance()) + .setDefaultTypeRegistry(typeRegistry) + .build()) + .build(); + + private static final ApiMethodDescriptor getPlaceMethodDescriptor = + ApiMethodDescriptor.newBuilder() + .setFullMethodName("google.maps.places.v1.Places/GetPlace") + .setHttpMethod("GET") + .setType(ApiMethodDescriptor.MethodType.UNARY) + .setRequestFormatter( + ProtoMessageRequestFormatter.newBuilder() + .setPath( + "/v1/{name=places/*}", + request -> { + Map fields = new HashMap<>(); + ProtoRestSerializer serializer = + ProtoRestSerializer.create(); + serializer.putPathParam(fields, "name", request.getName()); + return fields; + }) + .setQueryParamsExtractor( + request -> { + Map> fields = new HashMap<>(); + ProtoRestSerializer serializer = + ProtoRestSerializer.create(); + serializer.putQueryParam(fields, "languageCode", request.getLanguageCode()); + serializer.putQueryParam(fields, "regionCode", request.getRegionCode()); + serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); + return fields; + }) + .setRequestBodyExtractor(request -> null) + .build()) + .setResponseParser( + ProtoMessageResponseParser.newBuilder() + .setDefaultInstance(Place.getDefaultInstance()) + .setDefaultTypeRegistry(typeRegistry) + .build()) + .build(); + + private final UnaryCallable searchNearbyCallable; private final UnaryCallable searchTextCallable; + private final UnaryCallable getPhotoMediaCallable; + private final UnaryCallable getPlaceCallable; private final BackgroundResource backgroundResources; private final HttpJsonStubCallableFactory callableFactory; @@ -127,15 +247,51 @@ protected HttpJsonPlacesStub( throws IOException { this.callableFactory = callableFactory; + HttpJsonCallSettings searchNearbyTransportSettings = + HttpJsonCallSettings.newBuilder() + .setMethodDescriptor(searchNearbyMethodDescriptor) + .setTypeRegistry(typeRegistry) + .build(); HttpJsonCallSettings searchTextTransportSettings = HttpJsonCallSettings.newBuilder() .setMethodDescriptor(searchTextMethodDescriptor) .setTypeRegistry(typeRegistry) .build(); + HttpJsonCallSettings getPhotoMediaTransportSettings = + HttpJsonCallSettings.newBuilder() + .setMethodDescriptor(getPhotoMediaMethodDescriptor) + .setTypeRegistry(typeRegistry) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add("name", String.valueOf(request.getName())); + return builder.build(); + }) + .build(); + HttpJsonCallSettings getPlaceTransportSettings = + HttpJsonCallSettings.newBuilder() + .setMethodDescriptor(getPlaceMethodDescriptor) + .setTypeRegistry(typeRegistry) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add("name", String.valueOf(request.getName())); + return builder.build(); + }) + .build(); + this.searchNearbyCallable = + callableFactory.createUnaryCallable( + searchNearbyTransportSettings, settings.searchNearbySettings(), clientContext); this.searchTextCallable = callableFactory.createUnaryCallable( searchTextTransportSettings, settings.searchTextSettings(), clientContext); + this.getPhotoMediaCallable = + callableFactory.createUnaryCallable( + getPhotoMediaTransportSettings, settings.getPhotoMediaSettings(), clientContext); + this.getPlaceCallable = + callableFactory.createUnaryCallable( + getPlaceTransportSettings, settings.getPlaceSettings(), clientContext); this.backgroundResources = new BackgroundResourceAggregation(clientContext.getBackgroundResources()); @@ -144,15 +300,33 @@ protected HttpJsonPlacesStub( @InternalApi public static List getMethodDescriptors() { List methodDescriptors = new ArrayList<>(); + methodDescriptors.add(searchNearbyMethodDescriptor); methodDescriptors.add(searchTextMethodDescriptor); + methodDescriptors.add(getPhotoMediaMethodDescriptor); + methodDescriptors.add(getPlaceMethodDescriptor); return methodDescriptors; } + @Override + public UnaryCallable searchNearbyCallable() { + return searchNearbyCallable; + } + @Override public UnaryCallable searchTextCallable() { return searchTextCallable; } + @Override + public UnaryCallable getPhotoMediaCallable() { + return getPhotoMediaCallable; + } + + @Override + public UnaryCallable getPlaceCallable() { + return getPlaceCallable; + } + @Override public final void close() { try { diff --git a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/PlacesStub.java b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/PlacesStub.java index 9b8f362851b1..d74ad4915b6e 100644 --- a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/PlacesStub.java +++ b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/PlacesStub.java @@ -18,6 +18,12 @@ import com.google.api.gax.core.BackgroundResource; import com.google.api.gax.rpc.UnaryCallable; +import com.google.maps.places.v1.GetPhotoMediaRequest; +import com.google.maps.places.v1.GetPlaceRequest; +import com.google.maps.places.v1.PhotoMedia; +import com.google.maps.places.v1.Place; +import com.google.maps.places.v1.SearchNearbyRequest; +import com.google.maps.places.v1.SearchNearbyResponse; import com.google.maps.places.v1.SearchTextRequest; import com.google.maps.places.v1.SearchTextResponse; import javax.annotation.Generated; @@ -31,10 +37,22 @@ @Generated("by gapic-generator-java") public abstract class PlacesStub implements BackgroundResource { + public UnaryCallable searchNearbyCallable() { + throw new UnsupportedOperationException("Not implemented: searchNearbyCallable()"); + } + public UnaryCallable searchTextCallable() { throw new UnsupportedOperationException("Not implemented: searchTextCallable()"); } + public UnaryCallable getPhotoMediaCallable() { + throw new UnsupportedOperationException("Not implemented: getPhotoMediaCallable()"); + } + + public UnaryCallable getPlaceCallable() { + throw new UnsupportedOperationException("Not implemented: getPlaceCallable()"); + } + @Override public abstract void close(); } diff --git a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/PlacesStubSettings.java b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/PlacesStubSettings.java index 35c058df3b03..3d207e0c4dd6 100644 --- a/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/PlacesStubSettings.java +++ b/java-maps-places/google-maps-places/src/main/java/com/google/maps/places/v1/stub/PlacesStubSettings.java @@ -38,6 +38,12 @@ import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Lists; +import com.google.maps.places.v1.GetPhotoMediaRequest; +import com.google.maps.places.v1.GetPlaceRequest; +import com.google.maps.places.v1.PhotoMedia; +import com.google.maps.places.v1.Place; +import com.google.maps.places.v1.SearchNearbyRequest; +import com.google.maps.places.v1.SearchNearbyResponse; import com.google.maps.places.v1.SearchTextRequest; import com.google.maps.places.v1.SearchTextResponse; import java.io.IOException; @@ -59,7 +65,7 @@ *

The builder of this class is recursive, so contained classes are themselves builders. When * build() is called, the tree of builders is called to create the complete settings object. * - *

For example, to set the total timeout of searchText to 30 seconds: + *

For example, to set the total timeout of searchNearby to 30 seconds: * *

{@code
  * // This snippet has been automatically generated and should be regarded as a code template only.
@@ -69,10 +75,10 @@
  * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
  * PlacesStubSettings.Builder placesSettingsBuilder = PlacesStubSettings.newBuilder();
  * placesSettingsBuilder
- *     .searchTextSettings()
+ *     .searchNearbySettings()
  *     .setRetrySettings(
  *         placesSettingsBuilder
- *             .searchTextSettings()
+ *             .searchNearbySettings()
  *             .getRetrySettings()
  *             .toBuilder()
  *             .setTotalTimeout(Duration.ofSeconds(30))
@@ -86,13 +92,31 @@ public class PlacesStubSettings extends StubSettings {
   private static final ImmutableList DEFAULT_SERVICE_SCOPES =
       ImmutableList.builder().build();
 
+  private final UnaryCallSettings searchNearbySettings;
   private final UnaryCallSettings searchTextSettings;
+  private final UnaryCallSettings getPhotoMediaSettings;
+  private final UnaryCallSettings getPlaceSettings;
+
+  /** Returns the object with the settings used for calls to searchNearby. */
+  public UnaryCallSettings searchNearbySettings() {
+    return searchNearbySettings;
+  }
 
   /** Returns the object with the settings used for calls to searchText. */
   public UnaryCallSettings searchTextSettings() {
     return searchTextSettings;
   }
 
+  /** Returns the object with the settings used for calls to getPhotoMedia. */
+  public UnaryCallSettings getPhotoMediaSettings() {
+    return getPhotoMediaSettings;
+  }
+
+  /** Returns the object with the settings used for calls to getPlace. */
+  public UnaryCallSettings getPlaceSettings() {
+    return getPlaceSettings;
+  }
+
   public PlacesStub createStub() throws IOException {
     if (getTransportChannelProvider()
         .getTransportName()
@@ -197,14 +221,21 @@ public Builder toBuilder() {
   protected PlacesStubSettings(Builder settingsBuilder) throws IOException {
     super(settingsBuilder);
 
+    searchNearbySettings = settingsBuilder.searchNearbySettings().build();
     searchTextSettings = settingsBuilder.searchTextSettings().build();
+    getPhotoMediaSettings = settingsBuilder.getPhotoMediaSettings().build();
+    getPlaceSettings = settingsBuilder.getPlaceSettings().build();
   }
 
   /** Builder for PlacesStubSettings. */
   public static class Builder extends StubSettings.Builder {
     private final ImmutableList> unaryMethodSettingsBuilders;
+    private final UnaryCallSettings.Builder
+        searchNearbySettings;
     private final UnaryCallSettings.Builder
         searchTextSettings;
+    private final UnaryCallSettings.Builder getPhotoMediaSettings;
+    private final UnaryCallSettings.Builder getPlaceSettings;
     private static final ImmutableMap>
         RETRYABLE_CODE_DEFINITIONS;
 
@@ -232,20 +263,28 @@ protected Builder() {
     protected Builder(ClientContext clientContext) {
       super(clientContext);
 
+      searchNearbySettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
       searchTextSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
+      getPhotoMediaSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
+      getPlaceSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
 
       unaryMethodSettingsBuilders =
-          ImmutableList.>of(searchTextSettings);
+          ImmutableList.>of(
+              searchNearbySettings, searchTextSettings, getPhotoMediaSettings, getPlaceSettings);
       initDefaults(this);
     }
 
     protected Builder(PlacesStubSettings settings) {
       super(settings);
 
+      searchNearbySettings = settings.searchNearbySettings.toBuilder();
       searchTextSettings = settings.searchTextSettings.toBuilder();
+      getPhotoMediaSettings = settings.getPhotoMediaSettings.toBuilder();
+      getPlaceSettings = settings.getPlaceSettings.toBuilder();
 
       unaryMethodSettingsBuilders =
-          ImmutableList.>of(searchTextSettings);
+          ImmutableList.>of(
+              searchNearbySettings, searchTextSettings, getPhotoMediaSettings, getPlaceSettings);
     }
 
     private static Builder createDefault() {
@@ -275,11 +314,26 @@ private static Builder createHttpJsonDefault() {
     }
 
     private static Builder initDefaults(Builder builder) {
+      builder
+          .searchNearbySettings()
+          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("no_retry_codes"))
+          .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("no_retry_params"));
+
       builder
           .searchTextSettings()
           .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("no_retry_codes"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("no_retry_params"));
 
+      builder
+          .getPhotoMediaSettings()
+          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("no_retry_codes"))
+          .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("no_retry_params"));
+
+      builder
+          .getPlaceSettings()
+          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("no_retry_codes"))
+          .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("no_retry_params"));
+
       return builder;
     }
 
@@ -298,11 +352,27 @@ public Builder applyToAllUnaryMethods(
       return unaryMethodSettingsBuilders;
     }
 
+    /** Returns the builder for the settings used for calls to searchNearby. */
+    public UnaryCallSettings.Builder
+        searchNearbySettings() {
+      return searchNearbySettings;
+    }
+
     /** Returns the builder for the settings used for calls to searchText. */
     public UnaryCallSettings.Builder searchTextSettings() {
       return searchTextSettings;
     }
 
+    /** Returns the builder for the settings used for calls to getPhotoMedia. */
+    public UnaryCallSettings.Builder getPhotoMediaSettings() {
+      return getPhotoMediaSettings;
+    }
+
+    /** Returns the builder for the settings used for calls to getPlace. */
+    public UnaryCallSettings.Builder getPlaceSettings() {
+      return getPlaceSettings;
+    }
+
     @Override
     public PlacesStubSettings build() throws IOException {
       return new PlacesStubSettings(this);
diff --git a/java-maps-places/google-maps-places/src/main/resources/META-INF/native-image/com.google.maps.places.v1/reflect-config.json b/java-maps-places/google-maps-places/src/main/resources/META-INF/native-image/com.google.maps.places.v1/reflect-config.json
new file mode 100644
index 000000000000..1a94c1fb69b2
--- /dev/null
+++ b/java-maps-places/google-maps-places/src/main/resources/META-INF/native-image/com.google.maps.places.v1/reflect-config.json
@@ -0,0 +1,1703 @@
+[
+  {
+    "name": "com.google.api.ClientLibraryDestination",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.ClientLibraryOrganization",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.ClientLibrarySettings",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.ClientLibrarySettings$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.CommonLanguageSettings",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.CommonLanguageSettings$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.CppSettings",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.CppSettings$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.CustomHttpPattern",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.CustomHttpPattern$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.DotnetSettings",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.DotnetSettings$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.FieldBehavior",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.GoSettings",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.GoSettings$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.Http",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.Http$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.HttpRule",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.HttpRule$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.JavaSettings",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.JavaSettings$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.LaunchStage",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.MethodSettings",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.MethodSettings$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.MethodSettings$LongRunning",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.MethodSettings$LongRunning$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.NodeSettings",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.NodeSettings$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.PhpSettings",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.PhpSettings$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.Publishing",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.Publishing$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.PythonSettings",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.PythonSettings$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.ResourceDescriptor",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.ResourceDescriptor$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.ResourceDescriptor$History",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.ResourceDescriptor$Style",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.ResourceReference",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.ResourceReference$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.RubySettings",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.api.RubySettings$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.geo.type.Viewport",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.geo.type.Viewport$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.AuthorAttribution",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.AuthorAttribution$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Circle",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Circle$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.EVChargeOptions",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.EVChargeOptions$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.EVChargeOptions$ConnectorAggregation",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.EVChargeOptions$ConnectorAggregation$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.EVConnectorType",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.FuelOptions",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.FuelOptions$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.FuelOptions$FuelPrice",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.FuelOptions$FuelPrice$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.FuelOptions$FuelPrice$FuelType",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.GetPhotoMediaRequest",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.GetPhotoMediaRequest$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.GetPlaceRequest",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.GetPlaceRequest$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Photo",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Photo$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.PhotoMedia",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.PhotoMedia$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$AccessibilityOptions",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$AccessibilityOptions$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$AddressComponent",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$AddressComponent$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$Attribution",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$Attribution$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$BusinessStatus",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$OpeningHours",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$OpeningHours$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$OpeningHours$Period",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$OpeningHours$Period$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$OpeningHours$Period$Point",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$OpeningHours$Period$Point$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$OpeningHours$SecondaryHoursType",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$OpeningHours$SpecialDay",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$OpeningHours$SpecialDay$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$ParkingOptions",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$ParkingOptions$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$PaymentOptions",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$PaymentOptions$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$PlusCode",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$PlusCode$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$SubDestination",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Place$SubDestination$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.PriceLevel",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Review",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.Review$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchNearbyRequest",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchNearbyRequest$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchNearbyRequest$LocationRestriction",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchNearbyRequest$LocationRestriction$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchNearbyRequest$RankPreference",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchNearbyResponse",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchNearbyResponse$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchTextRequest",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchTextRequest$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchTextRequest$LocationBias",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchTextRequest$LocationBias$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchTextRequest$LocationRestriction",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchTextRequest$LocationRestriction$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchTextRequest$RankPreference",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchTextResponse",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.maps.places.v1.SearchTextResponse$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$DescriptorProto",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$DescriptorProto$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$DescriptorProto$ExtensionRange",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$DescriptorProto$ExtensionRange$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$DescriptorProto$ReservedRange",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$DescriptorProto$ReservedRange$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$EnumDescriptorProto",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$EnumDescriptorProto$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$EnumDescriptorProto$EnumReservedRange",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$EnumDescriptorProto$EnumReservedRange$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$EnumOptions",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$EnumOptions$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$EnumValueDescriptorProto",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$EnumValueDescriptorProto$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$EnumValueOptions",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$EnumValueOptions$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$ExtensionRangeOptions",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$ExtensionRangeOptions$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$ExtensionRangeOptions$Declaration",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$ExtensionRangeOptions$Declaration$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$ExtensionRangeOptions$VerificationState",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FieldDescriptorProto",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FieldDescriptorProto$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FieldDescriptorProto$Label",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FieldDescriptorProto$Type",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FieldOptions",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FieldOptions$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FieldOptions$CType",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FieldOptions$JSType",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FieldOptions$OptionRetention",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FieldOptions$OptionTargetType",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FileDescriptorProto",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FileDescriptorProto$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FileDescriptorSet",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FileDescriptorSet$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FileOptions",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FileOptions$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$FileOptions$OptimizeMode",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$GeneratedCodeInfo",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$GeneratedCodeInfo$Annotation",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$GeneratedCodeInfo$Annotation$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$GeneratedCodeInfo$Annotation$Semantic",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$GeneratedCodeInfo$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$MessageOptions",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$MessageOptions$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$MethodDescriptorProto",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$MethodDescriptorProto$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$MethodOptions",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$MethodOptions$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$MethodOptions$IdempotencyLevel",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$OneofDescriptorProto",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$OneofDescriptorProto$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$OneofOptions",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$OneofOptions$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$ServiceDescriptorProto",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$ServiceDescriptorProto$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$ServiceOptions",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$ServiceOptions$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$SourceCodeInfo",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$SourceCodeInfo$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$SourceCodeInfo$Location",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$SourceCodeInfo$Location$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$UninterpretedOption",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$UninterpretedOption$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$UninterpretedOption$NamePart",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.DescriptorProtos$UninterpretedOption$NamePart$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.Duration",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.Duration$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.Timestamp",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.protobuf.Timestamp$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.type.Date",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.type.Date$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.type.LatLng",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.type.LatLng$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.type.LocalizedText",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.type.LocalizedText$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.type.Money",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  },
+  {
+    "name": "com.google.type.Money$Builder",
+    "queryAllDeclaredConstructors": true,
+    "queryAllPublicConstructors": true,
+    "queryAllDeclaredMethods": true,
+    "allPublicMethods": true,
+    "allDeclaredClasses": true,
+    "allPublicClasses": true
+  }
+]
\ No newline at end of file
diff --git a/java-maps-places/google-maps-places/src/test/java/com/google/maps/places/v1/MockPlacesImpl.java b/java-maps-places/google-maps-places/src/test/java/com/google/maps/places/v1/MockPlacesImpl.java
index c1eda4ef4111..2c247118806a 100644
--- a/java-maps-places/google-maps-places/src/test/java/com/google/maps/places/v1/MockPlacesImpl.java
+++ b/java-maps-places/google-maps-places/src/test/java/com/google/maps/places/v1/MockPlacesImpl.java
@@ -58,6 +58,27 @@ public void reset() {
     responses = new LinkedList<>();
   }
 
+  @Override
+  public void searchNearby(
+      SearchNearbyRequest request, StreamObserver responseObserver) {
+    Object response = responses.poll();
+    if (response instanceof SearchNearbyResponse) {
+      requests.add(request);
+      responseObserver.onNext(((SearchNearbyResponse) 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 SearchNearby, expected %s or %s",
+                  response == null ? "null" : response.getClass().getName(),
+                  SearchNearbyResponse.class.getName(),
+                  Exception.class.getName())));
+    }
+  }
+
   @Override
   public void searchText(
       SearchTextRequest request, StreamObserver responseObserver) {
@@ -78,4 +99,45 @@ public void searchText(
                   Exception.class.getName())));
     }
   }
+
+  @Override
+  public void getPhotoMedia(
+      GetPhotoMediaRequest request, StreamObserver responseObserver) {
+    Object response = responses.poll();
+    if (response instanceof PhotoMedia) {
+      requests.add(request);
+      responseObserver.onNext(((PhotoMedia) 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 GetPhotoMedia, expected %s or %s",
+                  response == null ? "null" : response.getClass().getName(),
+                  PhotoMedia.class.getName(),
+                  Exception.class.getName())));
+    }
+  }
+
+  @Override
+  public void getPlace(GetPlaceRequest request, StreamObserver responseObserver) {
+    Object response = responses.poll();
+    if (response instanceof Place) {
+      requests.add(request);
+      responseObserver.onNext(((Place) 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 GetPlace, expected %s or %s",
+                  response == null ? "null" : response.getClass().getName(),
+                  Place.class.getName(),
+                  Exception.class.getName())));
+    }
+  }
 }
diff --git a/java-maps-places/google-maps-places/src/test/java/com/google/maps/places/v1/PlacesClientHttpJsonTest.java b/java-maps-places/google-maps-places/src/test/java/com/google/maps/places/v1/PlacesClientHttpJsonTest.java
index 14642523373a..0a556b9dce13 100644
--- a/java-maps-places/google-maps-places/src/test/java/com/google/maps/places/v1/PlacesClientHttpJsonTest.java
+++ b/java-maps-places/google-maps-places/src/test/java/com/google/maps/places/v1/PlacesClientHttpJsonTest.java
@@ -25,7 +25,10 @@
 import com.google.api.gax.rpc.InvalidArgumentException;
 import com.google.api.gax.rpc.StatusCode;
 import com.google.api.gax.rpc.testing.FakeStatusCode;
+import com.google.geo.type.Viewport;
 import com.google.maps.places.v1.stub.HttpJsonPlacesStub;
+import com.google.type.LatLng;
+import com.google.type.LocalizedText;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
@@ -71,6 +74,68 @@ public void tearDown() throws Exception {
     mockService.reset();
   }
 
+  @Test
+  public void searchNearbyTest() throws Exception {
+    SearchNearbyResponse expectedResponse =
+        SearchNearbyResponse.newBuilder().addAllPlaces(new ArrayList()).build();
+    mockService.addResponse(expectedResponse);
+
+    SearchNearbyRequest request =
+        SearchNearbyRequest.newBuilder()
+            .setLanguageCode("languageCode-2092349083")
+            .setRegionCode("regionCode-1991004415")
+            .addAllIncludedTypes(new ArrayList())
+            .addAllExcludedTypes(new ArrayList())
+            .addAllIncludedPrimaryTypes(new ArrayList())
+            .addAllExcludedPrimaryTypes(new ArrayList())
+            .setMaxResultCount(-1736124056)
+            .setLocationRestriction(SearchNearbyRequest.LocationRestriction.newBuilder().build())
+            .build();
+
+    SearchNearbyResponse actualResponse = client.searchNearby(request);
+    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 searchNearbyExceptionTest() throws Exception {
+    ApiException exception =
+        ApiExceptionFactory.createException(
+            new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false);
+    mockService.addException(exception);
+
+    try {
+      SearchNearbyRequest request =
+          SearchNearbyRequest.newBuilder()
+              .setLanguageCode("languageCode-2092349083")
+              .setRegionCode("regionCode-1991004415")
+              .addAllIncludedTypes(new ArrayList())
+              .addAllExcludedTypes(new ArrayList())
+              .addAllIncludedPrimaryTypes(new ArrayList())
+              .addAllExcludedPrimaryTypes(new ArrayList())
+              .setMaxResultCount(-1736124056)
+              .setLocationRestriction(SearchNearbyRequest.LocationRestriction.newBuilder().build())
+              .build();
+      client.searchNearby(request);
+      Assert.fail("No exception raised");
+    } catch (InvalidArgumentException e) {
+      // Expected exception.
+    }
+  }
+
   @Test
   public void searchTextTest() throws Exception {
     SearchTextResponse expectedResponse =
@@ -82,10 +147,8 @@ public void searchTextTest() throws Exception {
             .setTextQuery("textQuery-1050470501")
             .setLanguageCode("languageCode-2092349083")
             .setRegionCode("regionCode-1991004415")
-            .setLocation(SearchTextRequest.Location.newBuilder().build())
             .setIncludedType("includedType-45971946")
             .setOpenNow(true)
-            .setPriceRange(Int32Range.newBuilder().build())
             .setMinRating(-543315926)
             .setMaxResultCount(-1736124056)
             .addAllPriceLevels(new ArrayList())
@@ -125,10 +188,8 @@ public void searchTextExceptionTest() throws Exception {
               .setTextQuery("textQuery-1050470501")
               .setLanguageCode("languageCode-2092349083")
               .setRegionCode("regionCode-1991004415")
-              .setLocation(SearchTextRequest.Location.newBuilder().build())
               .setIncludedType("includedType-45971946")
               .setOpenNow(true)
-              .setPriceRange(Int32Range.newBuilder().build())
               .setMinRating(-543315926)
               .setMaxResultCount(-1736124056)
               .addAllPriceLevels(new ArrayList())
@@ -142,4 +203,294 @@ public void searchTextExceptionTest() throws Exception {
       // Expected exception.
     }
   }
+
+  @Test
+  public void getPhotoMediaTest() throws Exception {
+    PhotoMedia expectedResponse =
+        PhotoMedia.newBuilder()
+            .setName(PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]").toString())
+            .setPhotoUri("photoUri-1274279462")
+            .build();
+    mockService.addResponse(expectedResponse);
+
+    PhotoMediaName name = PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]");
+
+    PhotoMedia actualResponse = client.getPhotoMedia(name);
+    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 getPhotoMediaExceptionTest() throws Exception {
+    ApiException exception =
+        ApiExceptionFactory.createException(
+            new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false);
+    mockService.addException(exception);
+
+    try {
+      PhotoMediaName name = PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]");
+      client.getPhotoMedia(name);
+      Assert.fail("No exception raised");
+    } catch (InvalidArgumentException e) {
+      // Expected exception.
+    }
+  }
+
+  @Test
+  public void getPhotoMediaTest2() throws Exception {
+    PhotoMedia expectedResponse =
+        PhotoMedia.newBuilder()
+            .setName(PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]").toString())
+            .setPhotoUri("photoUri-1274279462")
+            .build();
+    mockService.addResponse(expectedResponse);
+
+    String name = "places/place-3694/photos/photo-3694/media";
+
+    PhotoMedia actualResponse = client.getPhotoMedia(name);
+    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 getPhotoMediaExceptionTest2() throws Exception {
+    ApiException exception =
+        ApiExceptionFactory.createException(
+            new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false);
+    mockService.addException(exception);
+
+    try {
+      String name = "places/place-3694/photos/photo-3694/media";
+      client.getPhotoMedia(name);
+      Assert.fail("No exception raised");
+    } catch (InvalidArgumentException e) {
+      // Expected exception.
+    }
+  }
+
+  @Test
+  public void getPlaceTest() throws Exception {
+    Place expectedResponse =
+        Place.newBuilder()
+            .setName(PlaceName.of("[PLACE_ID]").toString())
+            .setId("id3355")
+            .setDisplayName(LocalizedText.newBuilder().build())
+            .addAllTypes(new ArrayList())
+            .setNationalPhoneNumber("nationalPhoneNumber-1432446651")
+            .setInternationalPhoneNumber("internationalPhoneNumber-74125591")
+            .setFormattedAddress("formattedAddress1036810136")
+            .addAllAddressComponents(new ArrayList())
+            .setPlusCode(Place.PlusCode.newBuilder().build())
+            .setLocation(LatLng.newBuilder().build())
+            .setViewport(Viewport.newBuilder().build())
+            .setRating(-938102371)
+            .setGoogleMapsUri("googleMapsUri1129292508")
+            .setWebsiteUri("websiteUri1317135057")
+            .addAllReviews(new ArrayList())
+            .setRegularOpeningHours(Place.OpeningHours.newBuilder().build())
+            .setUtcOffsetMinutes(1046614318)
+            .addAllPhotos(new ArrayList())
+            .setAdrFormatAddress("adrFormatAddress1685861262")
+            .setPriceLevel(PriceLevel.forNumber(0))
+            .addAllAttributions(new ArrayList())
+            .setUserRatingCount(-1453311007)
+            .setIconMaskBaseUri("iconMaskBaseUri-1698247146")
+            .setIconBackgroundColor("iconBackgroundColor1458295068")
+            .setTakeout(true)
+            .setDelivery(true)
+            .setDineIn(true)
+            .setCurbsidePickup(true)
+            .setReservable(true)
+            .setServesBreakfast(true)
+            .setServesLunch(true)
+            .setServesDinner(true)
+            .setServesBeer(true)
+            .setServesWine(true)
+            .setServesBrunch(true)
+            .setServesVegetarianFood(true)
+            .setCurrentOpeningHours(Place.OpeningHours.newBuilder().build())
+            .addAllCurrentSecondaryOpeningHours(new ArrayList())
+            .addAllRegularSecondaryOpeningHours(new ArrayList())
+            .setEditorialSummary(LocalizedText.newBuilder().build())
+            .setOutdoorSeating(true)
+            .setLiveMusic(true)
+            .setMenuForChildren(true)
+            .setServesCocktails(true)
+            .setServesDessert(true)
+            .setServesCoffee(true)
+            .setGoodForChildren(true)
+            .setAllowsDogs(true)
+            .setRestroom(true)
+            .setGoodForGroups(true)
+            .setGoodForWatchingSports(true)
+            .setPaymentOptions(Place.PaymentOptions.newBuilder().build())
+            .setParkingOptions(Place.ParkingOptions.newBuilder().build())
+            .addAllSubDestinations(new ArrayList())
+            .setAccessibilityOptions(Place.AccessibilityOptions.newBuilder().build())
+            .setFuelOptions(FuelOptions.newBuilder().build())
+            .setEvChargeOptions(EVChargeOptions.newBuilder().build())
+            .build();
+    mockService.addResponse(expectedResponse);
+
+    PlaceName name = PlaceName.of("[PLACE_ID]");
+
+    Place actualResponse = client.getPlace(name);
+    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 getPlaceExceptionTest() throws Exception {
+    ApiException exception =
+        ApiExceptionFactory.createException(
+            new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false);
+    mockService.addException(exception);
+
+    try {
+      PlaceName name = PlaceName.of("[PLACE_ID]");
+      client.getPlace(name);
+      Assert.fail("No exception raised");
+    } catch (InvalidArgumentException e) {
+      // Expected exception.
+    }
+  }
+
+  @Test
+  public void getPlaceTest2() throws Exception {
+    Place expectedResponse =
+        Place.newBuilder()
+            .setName(PlaceName.of("[PLACE_ID]").toString())
+            .setId("id3355")
+            .setDisplayName(LocalizedText.newBuilder().build())
+            .addAllTypes(new ArrayList())
+            .setNationalPhoneNumber("nationalPhoneNumber-1432446651")
+            .setInternationalPhoneNumber("internationalPhoneNumber-74125591")
+            .setFormattedAddress("formattedAddress1036810136")
+            .addAllAddressComponents(new ArrayList())
+            .setPlusCode(Place.PlusCode.newBuilder().build())
+            .setLocation(LatLng.newBuilder().build())
+            .setViewport(Viewport.newBuilder().build())
+            .setRating(-938102371)
+            .setGoogleMapsUri("googleMapsUri1129292508")
+            .setWebsiteUri("websiteUri1317135057")
+            .addAllReviews(new ArrayList())
+            .setRegularOpeningHours(Place.OpeningHours.newBuilder().build())
+            .setUtcOffsetMinutes(1046614318)
+            .addAllPhotos(new ArrayList())
+            .setAdrFormatAddress("adrFormatAddress1685861262")
+            .setPriceLevel(PriceLevel.forNumber(0))
+            .addAllAttributions(new ArrayList())
+            .setUserRatingCount(-1453311007)
+            .setIconMaskBaseUri("iconMaskBaseUri-1698247146")
+            .setIconBackgroundColor("iconBackgroundColor1458295068")
+            .setTakeout(true)
+            .setDelivery(true)
+            .setDineIn(true)
+            .setCurbsidePickup(true)
+            .setReservable(true)
+            .setServesBreakfast(true)
+            .setServesLunch(true)
+            .setServesDinner(true)
+            .setServesBeer(true)
+            .setServesWine(true)
+            .setServesBrunch(true)
+            .setServesVegetarianFood(true)
+            .setCurrentOpeningHours(Place.OpeningHours.newBuilder().build())
+            .addAllCurrentSecondaryOpeningHours(new ArrayList())
+            .addAllRegularSecondaryOpeningHours(new ArrayList())
+            .setEditorialSummary(LocalizedText.newBuilder().build())
+            .setOutdoorSeating(true)
+            .setLiveMusic(true)
+            .setMenuForChildren(true)
+            .setServesCocktails(true)
+            .setServesDessert(true)
+            .setServesCoffee(true)
+            .setGoodForChildren(true)
+            .setAllowsDogs(true)
+            .setRestroom(true)
+            .setGoodForGroups(true)
+            .setGoodForWatchingSports(true)
+            .setPaymentOptions(Place.PaymentOptions.newBuilder().build())
+            .setParkingOptions(Place.ParkingOptions.newBuilder().build())
+            .addAllSubDestinations(new ArrayList())
+            .setAccessibilityOptions(Place.AccessibilityOptions.newBuilder().build())
+            .setFuelOptions(FuelOptions.newBuilder().build())
+            .setEvChargeOptions(EVChargeOptions.newBuilder().build())
+            .build();
+    mockService.addResponse(expectedResponse);
+
+    String name = "places/place-6606";
+
+    Place actualResponse = client.getPlace(name);
+    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 getPlaceExceptionTest2() throws Exception {
+    ApiException exception =
+        ApiExceptionFactory.createException(
+            new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false);
+    mockService.addException(exception);
+
+    try {
+      String name = "places/place-6606";
+      client.getPlace(name);
+      Assert.fail("No exception raised");
+    } catch (InvalidArgumentException e) {
+      // Expected exception.
+    }
+  }
 }
diff --git a/java-maps-places/google-maps-places/src/test/java/com/google/maps/places/v1/PlacesClientTest.java b/java-maps-places/google-maps-places/src/test/java/com/google/maps/places/v1/PlacesClientTest.java
index e9483d226539..5d57fbc0a96a 100644
--- a/java-maps-places/google-maps-places/src/test/java/com/google/maps/places/v1/PlacesClientTest.java
+++ b/java-maps-places/google-maps-places/src/test/java/com/google/maps/places/v1/PlacesClientTest.java
@@ -23,7 +23,10 @@
 import com.google.api.gax.grpc.testing.MockServiceHelper;
 import com.google.api.gax.rpc.ApiClientHeaderProvider;
 import com.google.api.gax.rpc.InvalidArgumentException;
+import com.google.geo.type.Viewport;
 import com.google.protobuf.AbstractMessage;
+import com.google.type.LatLng;
+import com.google.type.LocalizedText;
 import io.grpc.StatusRuntimeException;
 import java.io.IOException;
 import java.util.ArrayList;
@@ -76,6 +79,72 @@ public void tearDown() throws Exception {
     client.close();
   }
 
+  @Test
+  public void searchNearbyTest() throws Exception {
+    SearchNearbyResponse expectedResponse =
+        SearchNearbyResponse.newBuilder().addAllPlaces(new ArrayList()).build();
+    mockPlaces.addResponse(expectedResponse);
+
+    SearchNearbyRequest request =
+        SearchNearbyRequest.newBuilder()
+            .setLanguageCode("languageCode-2092349083")
+            .setRegionCode("regionCode-1991004415")
+            .addAllIncludedTypes(new ArrayList())
+            .addAllExcludedTypes(new ArrayList())
+            .addAllIncludedPrimaryTypes(new ArrayList())
+            .addAllExcludedPrimaryTypes(new ArrayList())
+            .setMaxResultCount(-1736124056)
+            .setLocationRestriction(SearchNearbyRequest.LocationRestriction.newBuilder().build())
+            .build();
+
+    SearchNearbyResponse actualResponse = client.searchNearby(request);
+    Assert.assertEquals(expectedResponse, actualResponse);
+
+    List actualRequests = mockPlaces.getRequests();
+    Assert.assertEquals(1, actualRequests.size());
+    SearchNearbyRequest actualRequest = ((SearchNearbyRequest) actualRequests.get(0));
+
+    Assert.assertEquals(request.getLanguageCode(), actualRequest.getLanguageCode());
+    Assert.assertEquals(request.getRegionCode(), actualRequest.getRegionCode());
+    Assert.assertEquals(request.getIncludedTypesList(), actualRequest.getIncludedTypesList());
+    Assert.assertEquals(request.getExcludedTypesList(), actualRequest.getExcludedTypesList());
+    Assert.assertEquals(
+        request.getIncludedPrimaryTypesList(), actualRequest.getIncludedPrimaryTypesList());
+    Assert.assertEquals(
+        request.getExcludedPrimaryTypesList(), actualRequest.getExcludedPrimaryTypesList());
+    Assert.assertEquals(request.getMaxResultCount(), actualRequest.getMaxResultCount());
+    Assert.assertEquals(request.getLocationRestriction(), actualRequest.getLocationRestriction());
+    Assert.assertEquals(request.getRankPreference(), actualRequest.getRankPreference());
+    Assert.assertTrue(
+        channelProvider.isHeaderSent(
+            ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
+            GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
+  }
+
+  @Test
+  public void searchNearbyExceptionTest() throws Exception {
+    StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
+    mockPlaces.addException(exception);
+
+    try {
+      SearchNearbyRequest request =
+          SearchNearbyRequest.newBuilder()
+              .setLanguageCode("languageCode-2092349083")
+              .setRegionCode("regionCode-1991004415")
+              .addAllIncludedTypes(new ArrayList())
+              .addAllExcludedTypes(new ArrayList())
+              .addAllIncludedPrimaryTypes(new ArrayList())
+              .addAllExcludedPrimaryTypes(new ArrayList())
+              .setMaxResultCount(-1736124056)
+              .setLocationRestriction(SearchNearbyRequest.LocationRestriction.newBuilder().build())
+              .build();
+      client.searchNearby(request);
+      Assert.fail("No exception raised");
+    } catch (InvalidArgumentException e) {
+      // Expected exception.
+    }
+  }
+
   @Test
   public void searchTextTest() throws Exception {
     SearchTextResponse expectedResponse =
@@ -87,10 +156,8 @@ public void searchTextTest() throws Exception {
             .setTextQuery("textQuery-1050470501")
             .setLanguageCode("languageCode-2092349083")
             .setRegionCode("regionCode-1991004415")
-            .setLocation(SearchTextRequest.Location.newBuilder().build())
             .setIncludedType("includedType-45971946")
             .setOpenNow(true)
-            .setPriceRange(Int32Range.newBuilder().build())
             .setMinRating(-543315926)
             .setMaxResultCount(-1736124056)
             .addAllPriceLevels(new ArrayList())
@@ -110,10 +177,8 @@ public void searchTextTest() throws Exception {
     Assert.assertEquals(request.getLanguageCode(), actualRequest.getLanguageCode());
     Assert.assertEquals(request.getRegionCode(), actualRequest.getRegionCode());
     Assert.assertEquals(request.getRankPreference(), actualRequest.getRankPreference());
-    Assert.assertEquals(request.getLocation(), actualRequest.getLocation());
     Assert.assertEquals(request.getIncludedType(), actualRequest.getIncludedType());
     Assert.assertEquals(request.getOpenNow(), actualRequest.getOpenNow());
-    Assert.assertEquals(request.getPriceRange(), actualRequest.getPriceRange());
     Assert.assertEquals(request.getMinRating(), actualRequest.getMinRating(), 0.0001);
     Assert.assertEquals(request.getMaxResultCount(), actualRequest.getMaxResultCount());
     Assert.assertEquals(request.getPriceLevelsList(), actualRequest.getPriceLevelsList());
@@ -137,10 +202,8 @@ public void searchTextExceptionTest() throws Exception {
               .setTextQuery("textQuery-1050470501")
               .setLanguageCode("languageCode-2092349083")
               .setRegionCode("regionCode-1991004415")
-              .setLocation(SearchTextRequest.Location.newBuilder().build())
               .setIncludedType("includedType-45971946")
               .setOpenNow(true)
-              .setPriceRange(Int32Range.newBuilder().build())
               .setMinRating(-543315926)
               .setMaxResultCount(-1736124056)
               .addAllPriceLevels(new ArrayList())
@@ -154,4 +217,270 @@ public void searchTextExceptionTest() throws Exception {
       // Expected exception.
     }
   }
+
+  @Test
+  public void getPhotoMediaTest() throws Exception {
+    PhotoMedia expectedResponse =
+        PhotoMedia.newBuilder()
+            .setName(PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]").toString())
+            .setPhotoUri("photoUri-1274279462")
+            .build();
+    mockPlaces.addResponse(expectedResponse);
+
+    PhotoMediaName name = PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]");
+
+    PhotoMedia actualResponse = client.getPhotoMedia(name);
+    Assert.assertEquals(expectedResponse, actualResponse);
+
+    List actualRequests = mockPlaces.getRequests();
+    Assert.assertEquals(1, actualRequests.size());
+    GetPhotoMediaRequest actualRequest = ((GetPhotoMediaRequest) actualRequests.get(0));
+
+    Assert.assertEquals(name.toString(), actualRequest.getName());
+    Assert.assertTrue(
+        channelProvider.isHeaderSent(
+            ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
+            GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
+  }
+
+  @Test
+  public void getPhotoMediaExceptionTest() throws Exception {
+    StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
+    mockPlaces.addException(exception);
+
+    try {
+      PhotoMediaName name = PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]");
+      client.getPhotoMedia(name);
+      Assert.fail("No exception raised");
+    } catch (InvalidArgumentException e) {
+      // Expected exception.
+    }
+  }
+
+  @Test
+  public void getPhotoMediaTest2() throws Exception {
+    PhotoMedia expectedResponse =
+        PhotoMedia.newBuilder()
+            .setName(PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]").toString())
+            .setPhotoUri("photoUri-1274279462")
+            .build();
+    mockPlaces.addResponse(expectedResponse);
+
+    String name = "name3373707";
+
+    PhotoMedia actualResponse = client.getPhotoMedia(name);
+    Assert.assertEquals(expectedResponse, actualResponse);
+
+    List actualRequests = mockPlaces.getRequests();
+    Assert.assertEquals(1, actualRequests.size());
+    GetPhotoMediaRequest actualRequest = ((GetPhotoMediaRequest) actualRequests.get(0));
+
+    Assert.assertEquals(name, actualRequest.getName());
+    Assert.assertTrue(
+        channelProvider.isHeaderSent(
+            ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
+            GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
+  }
+
+  @Test
+  public void getPhotoMediaExceptionTest2() throws Exception {
+    StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
+    mockPlaces.addException(exception);
+
+    try {
+      String name = "name3373707";
+      client.getPhotoMedia(name);
+      Assert.fail("No exception raised");
+    } catch (InvalidArgumentException e) {
+      // Expected exception.
+    }
+  }
+
+  @Test
+  public void getPlaceTest() throws Exception {
+    Place expectedResponse =
+        Place.newBuilder()
+            .setName(PlaceName.of("[PLACE_ID]").toString())
+            .setId("id3355")
+            .setDisplayName(LocalizedText.newBuilder().build())
+            .addAllTypes(new ArrayList())
+            .setNationalPhoneNumber("nationalPhoneNumber-1432446651")
+            .setInternationalPhoneNumber("internationalPhoneNumber-74125591")
+            .setFormattedAddress("formattedAddress1036810136")
+            .addAllAddressComponents(new ArrayList())
+            .setPlusCode(Place.PlusCode.newBuilder().build())
+            .setLocation(LatLng.newBuilder().build())
+            .setViewport(Viewport.newBuilder().build())
+            .setRating(-938102371)
+            .setGoogleMapsUri("googleMapsUri1129292508")
+            .setWebsiteUri("websiteUri1317135057")
+            .addAllReviews(new ArrayList())
+            .setRegularOpeningHours(Place.OpeningHours.newBuilder().build())
+            .setUtcOffsetMinutes(1046614318)
+            .addAllPhotos(new ArrayList())
+            .setAdrFormatAddress("adrFormatAddress1685861262")
+            .setPriceLevel(PriceLevel.forNumber(0))
+            .addAllAttributions(new ArrayList())
+            .setUserRatingCount(-1453311007)
+            .setIconMaskBaseUri("iconMaskBaseUri-1698247146")
+            .setIconBackgroundColor("iconBackgroundColor1458295068")
+            .setTakeout(true)
+            .setDelivery(true)
+            .setDineIn(true)
+            .setCurbsidePickup(true)
+            .setReservable(true)
+            .setServesBreakfast(true)
+            .setServesLunch(true)
+            .setServesDinner(true)
+            .setServesBeer(true)
+            .setServesWine(true)
+            .setServesBrunch(true)
+            .setServesVegetarianFood(true)
+            .setCurrentOpeningHours(Place.OpeningHours.newBuilder().build())
+            .addAllCurrentSecondaryOpeningHours(new ArrayList())
+            .addAllRegularSecondaryOpeningHours(new ArrayList())
+            .setEditorialSummary(LocalizedText.newBuilder().build())
+            .setOutdoorSeating(true)
+            .setLiveMusic(true)
+            .setMenuForChildren(true)
+            .setServesCocktails(true)
+            .setServesDessert(true)
+            .setServesCoffee(true)
+            .setGoodForChildren(true)
+            .setAllowsDogs(true)
+            .setRestroom(true)
+            .setGoodForGroups(true)
+            .setGoodForWatchingSports(true)
+            .setPaymentOptions(Place.PaymentOptions.newBuilder().build())
+            .setParkingOptions(Place.ParkingOptions.newBuilder().build())
+            .addAllSubDestinations(new ArrayList())
+            .setAccessibilityOptions(Place.AccessibilityOptions.newBuilder().build())
+            .setFuelOptions(FuelOptions.newBuilder().build())
+            .setEvChargeOptions(EVChargeOptions.newBuilder().build())
+            .build();
+    mockPlaces.addResponse(expectedResponse);
+
+    PlaceName name = PlaceName.of("[PLACE_ID]");
+
+    Place actualResponse = client.getPlace(name);
+    Assert.assertEquals(expectedResponse, actualResponse);
+
+    List actualRequests = mockPlaces.getRequests();
+    Assert.assertEquals(1, actualRequests.size());
+    GetPlaceRequest actualRequest = ((GetPlaceRequest) actualRequests.get(0));
+
+    Assert.assertEquals(name.toString(), actualRequest.getName());
+    Assert.assertTrue(
+        channelProvider.isHeaderSent(
+            ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
+            GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
+  }
+
+  @Test
+  public void getPlaceExceptionTest() throws Exception {
+    StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
+    mockPlaces.addException(exception);
+
+    try {
+      PlaceName name = PlaceName.of("[PLACE_ID]");
+      client.getPlace(name);
+      Assert.fail("No exception raised");
+    } catch (InvalidArgumentException e) {
+      // Expected exception.
+    }
+  }
+
+  @Test
+  public void getPlaceTest2() throws Exception {
+    Place expectedResponse =
+        Place.newBuilder()
+            .setName(PlaceName.of("[PLACE_ID]").toString())
+            .setId("id3355")
+            .setDisplayName(LocalizedText.newBuilder().build())
+            .addAllTypes(new ArrayList())
+            .setNationalPhoneNumber("nationalPhoneNumber-1432446651")
+            .setInternationalPhoneNumber("internationalPhoneNumber-74125591")
+            .setFormattedAddress("formattedAddress1036810136")
+            .addAllAddressComponents(new ArrayList())
+            .setPlusCode(Place.PlusCode.newBuilder().build())
+            .setLocation(LatLng.newBuilder().build())
+            .setViewport(Viewport.newBuilder().build())
+            .setRating(-938102371)
+            .setGoogleMapsUri("googleMapsUri1129292508")
+            .setWebsiteUri("websiteUri1317135057")
+            .addAllReviews(new ArrayList())
+            .setRegularOpeningHours(Place.OpeningHours.newBuilder().build())
+            .setUtcOffsetMinutes(1046614318)
+            .addAllPhotos(new ArrayList())
+            .setAdrFormatAddress("adrFormatAddress1685861262")
+            .setPriceLevel(PriceLevel.forNumber(0))
+            .addAllAttributions(new ArrayList())
+            .setUserRatingCount(-1453311007)
+            .setIconMaskBaseUri("iconMaskBaseUri-1698247146")
+            .setIconBackgroundColor("iconBackgroundColor1458295068")
+            .setTakeout(true)
+            .setDelivery(true)
+            .setDineIn(true)
+            .setCurbsidePickup(true)
+            .setReservable(true)
+            .setServesBreakfast(true)
+            .setServesLunch(true)
+            .setServesDinner(true)
+            .setServesBeer(true)
+            .setServesWine(true)
+            .setServesBrunch(true)
+            .setServesVegetarianFood(true)
+            .setCurrentOpeningHours(Place.OpeningHours.newBuilder().build())
+            .addAllCurrentSecondaryOpeningHours(new ArrayList())
+            .addAllRegularSecondaryOpeningHours(new ArrayList())
+            .setEditorialSummary(LocalizedText.newBuilder().build())
+            .setOutdoorSeating(true)
+            .setLiveMusic(true)
+            .setMenuForChildren(true)
+            .setServesCocktails(true)
+            .setServesDessert(true)
+            .setServesCoffee(true)
+            .setGoodForChildren(true)
+            .setAllowsDogs(true)
+            .setRestroom(true)
+            .setGoodForGroups(true)
+            .setGoodForWatchingSports(true)
+            .setPaymentOptions(Place.PaymentOptions.newBuilder().build())
+            .setParkingOptions(Place.ParkingOptions.newBuilder().build())
+            .addAllSubDestinations(new ArrayList())
+            .setAccessibilityOptions(Place.AccessibilityOptions.newBuilder().build())
+            .setFuelOptions(FuelOptions.newBuilder().build())
+            .setEvChargeOptions(EVChargeOptions.newBuilder().build())
+            .build();
+    mockPlaces.addResponse(expectedResponse);
+
+    String name = "name3373707";
+
+    Place actualResponse = client.getPlace(name);
+    Assert.assertEquals(expectedResponse, actualResponse);
+
+    List actualRequests = mockPlaces.getRequests();
+    Assert.assertEquals(1, actualRequests.size());
+    GetPlaceRequest actualRequest = ((GetPlaceRequest) actualRequests.get(0));
+
+    Assert.assertEquals(name, actualRequest.getName());
+    Assert.assertTrue(
+        channelProvider.isHeaderSent(
+            ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
+            GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
+  }
+
+  @Test
+  public void getPlaceExceptionTest2() throws Exception {
+    StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
+    mockPlaces.addException(exception);
+
+    try {
+      String name = "name3373707";
+      client.getPlace(name);
+      Assert.fail("No exception raised");
+    } catch (InvalidArgumentException e) {
+      // Expected exception.
+    }
+  }
 }
diff --git a/java-maps-places/grpc-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlacesGrpc.java b/java-maps-places/grpc-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlacesGrpc.java
index 488105d4411b..40ed354df6a6 100644
--- a/java-maps-places/grpc-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlacesGrpc.java
+++ b/java-maps-places/grpc-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlacesGrpc.java
@@ -22,6 +22,10 @@
  *
  * 
  * Service definition for the Places API.
+ * Note: every request actually requires a field mask set outside of the request
+ * proto (all/'*' is not assumed).  That can be set via either a side channel
+ * (SystemParameterContext) over RPC, or a header (X-Goog-FieldMask) over HTTP.
+ * See: https://cloud.google.com/apis/docs/system-parameters
  * 
*/ @javax.annotation.Generated( @@ -32,9 +36,53 @@ public final class PlacesGrpc { private PlacesGrpc() {} - public static final String SERVICE_NAME = "google.maps.places.v1.Places"; + public static final java.lang.String SERVICE_NAME = "google.maps.places.v1.Places"; // Static method descriptors that strictly reflect the proto. + private static volatile io.grpc.MethodDescriptor< + com.google.maps.places.v1.SearchNearbyRequest, + com.google.maps.places.v1.SearchNearbyResponse> + getSearchNearbyMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "SearchNearby", + requestType = com.google.maps.places.v1.SearchNearbyRequest.class, + responseType = com.google.maps.places.v1.SearchNearbyResponse.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor< + com.google.maps.places.v1.SearchNearbyRequest, + com.google.maps.places.v1.SearchNearbyResponse> + getSearchNearbyMethod() { + io.grpc.MethodDescriptor< + com.google.maps.places.v1.SearchNearbyRequest, + com.google.maps.places.v1.SearchNearbyResponse> + getSearchNearbyMethod; + if ((getSearchNearbyMethod = PlacesGrpc.getSearchNearbyMethod) == null) { + synchronized (PlacesGrpc.class) { + if ((getSearchNearbyMethod = PlacesGrpc.getSearchNearbyMethod) == null) { + PlacesGrpc.getSearchNearbyMethod = + getSearchNearbyMethod = + io.grpc.MethodDescriptor + . + newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "SearchNearby")) + .setSampledToLocalTracing(true) + .setRequestMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.maps.places.v1.SearchNearbyRequest.getDefaultInstance())) + .setResponseMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.maps.places.v1.SearchNearbyResponse.getDefaultInstance())) + .setSchemaDescriptor(new PlacesMethodDescriptorSupplier("SearchNearby")) + .build(); + } + } + } + return getSearchNearbyMethod; + } + private static volatile io.grpc.MethodDescriptor< com.google.maps.places.v1.SearchTextRequest, com.google.maps.places.v1.SearchTextResponse> getSearchTextMethod; @@ -77,6 +125,87 @@ private PlacesGrpc() {} return getSearchTextMethod; } + private static volatile io.grpc.MethodDescriptor< + com.google.maps.places.v1.GetPhotoMediaRequest, com.google.maps.places.v1.PhotoMedia> + getGetPhotoMediaMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "GetPhotoMedia", + requestType = com.google.maps.places.v1.GetPhotoMediaRequest.class, + responseType = com.google.maps.places.v1.PhotoMedia.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor< + com.google.maps.places.v1.GetPhotoMediaRequest, com.google.maps.places.v1.PhotoMedia> + getGetPhotoMediaMethod() { + io.grpc.MethodDescriptor< + com.google.maps.places.v1.GetPhotoMediaRequest, com.google.maps.places.v1.PhotoMedia> + getGetPhotoMediaMethod; + if ((getGetPhotoMediaMethod = PlacesGrpc.getGetPhotoMediaMethod) == null) { + synchronized (PlacesGrpc.class) { + if ((getGetPhotoMediaMethod = PlacesGrpc.getGetPhotoMediaMethod) == null) { + PlacesGrpc.getGetPhotoMediaMethod = + getGetPhotoMediaMethod = + io.grpc.MethodDescriptor + . + newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "GetPhotoMedia")) + .setSampledToLocalTracing(true) + .setRequestMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.maps.places.v1.GetPhotoMediaRequest.getDefaultInstance())) + .setResponseMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.maps.places.v1.PhotoMedia.getDefaultInstance())) + .setSchemaDescriptor(new PlacesMethodDescriptorSupplier("GetPhotoMedia")) + .build(); + } + } + } + return getGetPhotoMediaMethod; + } + + private static volatile io.grpc.MethodDescriptor< + com.google.maps.places.v1.GetPlaceRequest, com.google.maps.places.v1.Place> + getGetPlaceMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "GetPlace", + requestType = com.google.maps.places.v1.GetPlaceRequest.class, + responseType = com.google.maps.places.v1.Place.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor< + com.google.maps.places.v1.GetPlaceRequest, com.google.maps.places.v1.Place> + getGetPlaceMethod() { + io.grpc.MethodDescriptor< + com.google.maps.places.v1.GetPlaceRequest, com.google.maps.places.v1.Place> + getGetPlaceMethod; + if ((getGetPlaceMethod = PlacesGrpc.getGetPlaceMethod) == null) { + synchronized (PlacesGrpc.class) { + if ((getGetPlaceMethod = PlacesGrpc.getGetPlaceMethod) == null) { + PlacesGrpc.getGetPlaceMethod = + getGetPlaceMethod = + io.grpc.MethodDescriptor + . + newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "GetPlace")) + .setSampledToLocalTracing(true) + .setRequestMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.maps.places.v1.GetPlaceRequest.getDefaultInstance())) + .setResponseMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.maps.places.v1.Place.getDefaultInstance())) + .setSchemaDescriptor(new PlacesMethodDescriptorSupplier("GetPlace")) + .build(); + } + } + } + return getGetPlaceMethod; + } + /** Creates a new async stub that supports all call types for the service */ public static PlacesStub newStub(io.grpc.Channel channel) { io.grpc.stub.AbstractStub.StubFactory factory = @@ -122,10 +251,29 @@ public PlacesFutureStub newStub( * *
    * Service definition for the Places API.
+   * Note: every request actually requires a field mask set outside of the request
+   * proto (all/'*' is not assumed).  That can be set via either a side channel
+   * (SystemParameterContext) over RPC, or a header (X-Goog-FieldMask) over HTTP.
+   * See: https://cloud.google.com/apis/docs/system-parameters
    * 
*/ public interface AsyncService { + /** + * + * + *
+     * Search for places near locations.
+     * 
+ */ + default void searchNearby( + com.google.maps.places.v1.SearchNearbyRequest request, + io.grpc.stub.StreamObserver + responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( + getSearchNearbyMethod(), responseObserver); + } + /** * * @@ -139,6 +287,33 @@ default void searchText( responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getSearchTextMethod(), responseObserver); } + + /** + * + * + *
+     * Get a photo media with a photo reference string.
+     * 
+ */ + default void getPhotoMedia( + com.google.maps.places.v1.GetPhotoMediaRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( + getGetPhotoMediaMethod(), responseObserver); + } + + /** + * + * + *
+     * Get a Place with a place id (in a name) string.
+     * 
+ */ + default void getPlace( + com.google.maps.places.v1.GetPlaceRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetPlaceMethod(), responseObserver); + } } /** @@ -146,6 +321,10 @@ default void searchText( * *
    * Service definition for the Places API.
+   * Note: every request actually requires a field mask set outside of the request
+   * proto (all/'*' is not assumed).  That can be set via either a side channel
+   * (SystemParameterContext) over RPC, or a header (X-Goog-FieldMask) over HTTP.
+   * See: https://cloud.google.com/apis/docs/system-parameters
    * 
*/ public abstract static class PlacesImplBase implements io.grpc.BindableService, AsyncService { @@ -161,6 +340,10 @@ public final io.grpc.ServerServiceDefinition bindService() { * *
    * Service definition for the Places API.
+   * Note: every request actually requires a field mask set outside of the request
+   * proto (all/'*' is not assumed).  That can be set via either a side channel
+   * (SystemParameterContext) over RPC, or a header (X-Goog-FieldMask) over HTTP.
+   * See: https://cloud.google.com/apis/docs/system-parameters
    * 
*/ public static final class PlacesStub extends io.grpc.stub.AbstractAsyncStub { @@ -173,6 +356,23 @@ protected PlacesStub build(io.grpc.Channel channel, io.grpc.CallOptions callOpti return new PlacesStub(channel, callOptions); } + /** + * + * + *
+     * Search for places near locations.
+     * 
+ */ + public void searchNearby( + com.google.maps.places.v1.SearchNearbyRequest request, + io.grpc.stub.StreamObserver + responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getSearchNearbyMethod(), getCallOptions()), + request, + responseObserver); + } + /** * * @@ -187,6 +387,36 @@ public void searchText( io.grpc.stub.ClientCalls.asyncUnaryCall( getChannel().newCall(getSearchTextMethod(), getCallOptions()), request, responseObserver); } + + /** + * + * + *
+     * Get a photo media with a photo reference string.
+     * 
+ */ + public void getPhotoMedia( + com.google.maps.places.v1.GetPhotoMediaRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getGetPhotoMediaMethod(), getCallOptions()), + request, + responseObserver); + } + + /** + * + * + *
+     * Get a Place with a place id (in a name) string.
+     * 
+ */ + public void getPlace( + com.google.maps.places.v1.GetPlaceRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getGetPlaceMethod(), getCallOptions()), request, responseObserver); + } } /** @@ -194,6 +424,10 @@ public void searchText( * *
    * Service definition for the Places API.
+   * Note: every request actually requires a field mask set outside of the request
+   * proto (all/'*' is not assumed).  That can be set via either a side channel
+   * (SystemParameterContext) over RPC, or a header (X-Goog-FieldMask) over HTTP.
+   * See: https://cloud.google.com/apis/docs/system-parameters
    * 
*/ public static final class PlacesBlockingStub @@ -207,6 +441,19 @@ protected PlacesBlockingStub build(io.grpc.Channel channel, io.grpc.CallOptions return new PlacesBlockingStub(channel, callOptions); } + /** + * + * + *
+     * Search for places near locations.
+     * 
+ */ + public com.google.maps.places.v1.SearchNearbyResponse searchNearby( + com.google.maps.places.v1.SearchNearbyRequest request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getSearchNearbyMethod(), getCallOptions(), request); + } + /** * * @@ -219,6 +466,32 @@ public com.google.maps.places.v1.SearchTextResponse searchText( return io.grpc.stub.ClientCalls.blockingUnaryCall( getChannel(), getSearchTextMethod(), getCallOptions(), request); } + + /** + * + * + *
+     * Get a photo media with a photo reference string.
+     * 
+ */ + public com.google.maps.places.v1.PhotoMedia getPhotoMedia( + com.google.maps.places.v1.GetPhotoMediaRequest request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getGetPhotoMediaMethod(), getCallOptions(), request); + } + + /** + * + * + *
+     * Get a Place with a place id (in a name) string.
+     * 
+ */ + public com.google.maps.places.v1.Place getPlace( + com.google.maps.places.v1.GetPlaceRequest request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getGetPlaceMethod(), getCallOptions(), request); + } } /** @@ -226,6 +499,10 @@ public com.google.maps.places.v1.SearchTextResponse searchText( * *
    * Service definition for the Places API.
+   * Note: every request actually requires a field mask set outside of the request
+   * proto (all/'*' is not assumed).  That can be set via either a side channel
+   * (SystemParameterContext) over RPC, or a header (X-Goog-FieldMask) over HTTP.
+   * See: https://cloud.google.com/apis/docs/system-parameters
    * 
*/ public static final class PlacesFutureStub @@ -239,6 +516,20 @@ protected PlacesFutureStub build(io.grpc.Channel channel, io.grpc.CallOptions ca return new PlacesFutureStub(channel, callOptions); } + /** + * + * + *
+     * Search for places near locations.
+     * 
+ */ + public com.google.common.util.concurrent.ListenableFuture< + com.google.maps.places.v1.SearchNearbyResponse> + searchNearby(com.google.maps.places.v1.SearchNearbyRequest request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getSearchNearbyMethod(), getCallOptions()), request); + } + /** * * @@ -252,9 +543,38 @@ protected PlacesFutureStub build(io.grpc.Channel channel, io.grpc.CallOptions ca return io.grpc.stub.ClientCalls.futureUnaryCall( getChannel().newCall(getSearchTextMethod(), getCallOptions()), request); } + + /** + * + * + *
+     * Get a photo media with a photo reference string.
+     * 
+ */ + public com.google.common.util.concurrent.ListenableFuture + getPhotoMedia(com.google.maps.places.v1.GetPhotoMediaRequest request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getGetPhotoMediaMethod(), getCallOptions()), request); + } + + /** + * + * + *
+     * Get a Place with a place id (in a name) string.
+     * 
+ */ + public com.google.common.util.concurrent.ListenableFuture + getPlace(com.google.maps.places.v1.GetPlaceRequest request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getGetPlaceMethod(), getCallOptions()), request); + } } - private static final int METHODID_SEARCH_TEXT = 0; + private static final int METHODID_SEARCH_NEARBY = 0; + private static final int METHODID_SEARCH_TEXT = 1; + private static final int METHODID_GET_PHOTO_MEDIA = 2; + private static final int METHODID_GET_PLACE = 3; private static final class MethodHandlers implements io.grpc.stub.ServerCalls.UnaryMethod, @@ -273,12 +593,28 @@ private static final class MethodHandlers @java.lang.SuppressWarnings("unchecked") public void invoke(Req request, io.grpc.stub.StreamObserver responseObserver) { switch (methodId) { + case METHODID_SEARCH_NEARBY: + serviceImpl.searchNearby( + (com.google.maps.places.v1.SearchNearbyRequest) request, + (io.grpc.stub.StreamObserver) + responseObserver); + break; case METHODID_SEARCH_TEXT: serviceImpl.searchText( (com.google.maps.places.v1.SearchTextRequest) request, (io.grpc.stub.StreamObserver) responseObserver); break; + case METHODID_GET_PHOTO_MEDIA: + serviceImpl.getPhotoMedia( + (com.google.maps.places.v1.GetPhotoMediaRequest) request, + (io.grpc.stub.StreamObserver) responseObserver); + break; + case METHODID_GET_PLACE: + serviceImpl.getPlace( + (com.google.maps.places.v1.GetPlaceRequest) request, + (io.grpc.stub.StreamObserver) responseObserver); + break; default: throw new AssertionError(); } @@ -297,12 +633,31 @@ public io.grpc.stub.StreamObserver invoke( public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) { return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) + .addMethod( + getSearchNearbyMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + com.google.maps.places.v1.SearchNearbyRequest, + com.google.maps.places.v1.SearchNearbyResponse>( + service, METHODID_SEARCH_NEARBY))) .addMethod( getSearchTextMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( new MethodHandlers< com.google.maps.places.v1.SearchTextRequest, com.google.maps.places.v1.SearchTextResponse>(service, METHODID_SEARCH_TEXT))) + .addMethod( + getGetPhotoMediaMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + com.google.maps.places.v1.GetPhotoMediaRequest, + com.google.maps.places.v1.PhotoMedia>(service, METHODID_GET_PHOTO_MEDIA))) + .addMethod( + getGetPlaceMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + com.google.maps.places.v1.GetPlaceRequest, com.google.maps.places.v1.Place>( + service, METHODID_GET_PLACE))) .build(); } @@ -328,9 +683,9 @@ private static final class PlacesFileDescriptorSupplier extends PlacesBaseDescri private static final class PlacesMethodDescriptorSupplier extends PlacesBaseDescriptorSupplier implements io.grpc.protobuf.ProtoMethodDescriptorSupplier { - private final String methodName; + private final java.lang.String methodName; - PlacesMethodDescriptorSupplier(String methodName) { + PlacesMethodDescriptorSupplier(java.lang.String methodName) { this.methodName = methodName; } @@ -352,7 +707,10 @@ public static io.grpc.ServiceDescriptor getServiceDescriptor() { result = io.grpc.ServiceDescriptor.newBuilder(SERVICE_NAME) .setSchemaDescriptor(new PlacesFileDescriptorSupplier()) + .addMethod(getSearchNearbyMethod()) .addMethod(getSearchTextMethod()) + .addMethod(getGetPhotoMediaMethod()) + .addMethod(getGetPlaceMethod()) .build(); } } diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/AttributionProto.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/AttributionProto.java new file mode 100644 index 000000000000..18a47d907220 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/AttributionProto.java @@ -0,0 +1,77 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/attribution.proto + +package com.google.maps.places.v1; + +public final class AttributionProto { + private AttributionProto() {} + + public static void registerAllExtensions(com.google.protobuf.ExtensionRegistryLite registry) {} + + public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions((com.google.protobuf.ExtensionRegistryLite) registry); + } + + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_maps_places_v1_AuthorAttribution_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_maps_places_v1_AuthorAttribution_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + return descriptor; + } + + private static com.google.protobuf.Descriptors.FileDescriptor descriptor; + + static { + java.lang.String[] descriptorData = { + "\n\'google/maps/places/v1/attribution.prot" + + "o\022\025google.maps.places.v1\032\037google/api/fie" + + "ld_behavior.proto\"[\n\021AuthorAttribution\022\032" + + "\n\014display_name\030\001 \001(\tB\004\342A\001\003\022\021\n\003uri\030\002 \001(\tB" + + "\004\342A\001\003\022\027\n\tphoto_uri\030\003 \001(\tB\004\342A\001\003B\244\001\n\031com.g" + + "oogle.maps.places.v1B\020AttributionProtoP\001" + + "Z7cloud.google.com/go/maps/places/apiv1/" + + "placespb;placespb\370\001\001\242\002\006GMPSV1\252\002\025Google.M" + + "aps.Places.V1\312\002\025Google\\Maps\\Places\\V1b\006p" + + "roto3" + }; + descriptor = + com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( + descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + com.google.api.FieldBehaviorProto.getDescriptor(), + }); + internal_static_google_maps_places_v1_AuthorAttribution_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_google_maps_places_v1_AuthorAttribution_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_AuthorAttribution_descriptor, + new java.lang.String[] { + "DisplayName", "Uri", "PhotoUri", + }); + com.google.protobuf.ExtensionRegistry registry = + com.google.protobuf.ExtensionRegistry.newInstance(); + registry.add(com.google.api.FieldBehaviorProto.fieldBehavior); + com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor( + descriptor, registry); + com.google.api.FieldBehaviorProto.getDescriptor(); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/AuthorAttribution.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/AuthorAttribution.java new file mode 100644 index 000000000000..524744753a98 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/AuthorAttribution.java @@ -0,0 +1,1019 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/attribution.proto + +package com.google.maps.places.v1; + +/** + * + * + *
+ * Information about the author of the UGC data. Used in
+ * [Photo][google.maps.places.v1.Photo], and
+ * [Review][google.maps.places.v1.Review].
+ * 
+ * + * Protobuf type {@code google.maps.places.v1.AuthorAttribution} + */ +public final class AuthorAttribution extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.AuthorAttribution) + AuthorAttributionOrBuilder { + private static final long serialVersionUID = 0L; + // Use AuthorAttribution.newBuilder() to construct. + private AuthorAttribution(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private AuthorAttribution() { + displayName_ = ""; + uri_ = ""; + photoUri_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new AuthorAttribution(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.AttributionProto + .internal_static_google_maps_places_v1_AuthorAttribution_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.AttributionProto + .internal_static_google_maps_places_v1_AuthorAttribution_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.AuthorAttribution.class, + com.google.maps.places.v1.AuthorAttribution.Builder.class); + } + + public static final int DISPLAY_NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object displayName_ = ""; + /** + * + * + *
+   * Output only. Name of the author of the [Photo][google.maps.places.v1.Photo]
+   * or [Review][google.maps.places.v1.Review].
+   * 
+ * + * string display_name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @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; + } + } + /** + * + * + *
+   * Output only. Name of the author of the [Photo][google.maps.places.v1.Photo]
+   * or [Review][google.maps.places.v1.Review].
+   * 
+ * + * string display_name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @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 URI_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object uri_ = ""; + /** + * + * + *
+   * Output only. URI of the author of the [Photo][google.maps.places.v1.Photo]
+   * or [Review][google.maps.places.v1.Review].
+   * 
+ * + * string uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The uri. + */ + @java.lang.Override + public java.lang.String getUri() { + java.lang.Object ref = uri_; + 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(); + uri_ = s; + return s; + } + } + /** + * + * + *
+   * Output only. URI of the author of the [Photo][google.maps.places.v1.Photo]
+   * or [Review][google.maps.places.v1.Review].
+   * 
+ * + * string uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for uri. + */ + @java.lang.Override + public com.google.protobuf.ByteString getUriBytes() { + java.lang.Object ref = uri_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uri_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PHOTO_URI_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object photoUri_ = ""; + /** + * + * + *
+   * Output only. Profile photo URI of the author of the
+   * [Photo][google.maps.places.v1.Photo] or
+   * [Review][google.maps.places.v1.Review].
+   * 
+ * + * string photo_uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The photoUri. + */ + @java.lang.Override + public java.lang.String getPhotoUri() { + java.lang.Object ref = photoUri_; + 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(); + photoUri_ = s; + return s; + } + } + /** + * + * + *
+   * Output only. Profile photo URI of the author of the
+   * [Photo][google.maps.places.v1.Photo] or
+   * [Review][google.maps.places.v1.Review].
+   * 
+ * + * string photo_uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for photoUri. + */ + @java.lang.Override + public com.google.protobuf.ByteString getPhotoUriBytes() { + java.lang.Object ref = photoUri_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + photoUri_ = 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.GeneratedMessageV3.isStringEmpty(displayName_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, displayName_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uri_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, uri_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(photoUri_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, photoUri_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, displayName_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uri_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, uri_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(photoUri_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, photoUri_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.maps.places.v1.AuthorAttribution)) { + return super.equals(obj); + } + com.google.maps.places.v1.AuthorAttribution other = + (com.google.maps.places.v1.AuthorAttribution) obj; + + if (!getDisplayName().equals(other.getDisplayName())) return false; + if (!getUri().equals(other.getUri())) return false; + if (!getPhotoUri().equals(other.getPhotoUri())) 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) + DISPLAY_NAME_FIELD_NUMBER; + hash = (53 * hash) + getDisplayName().hashCode(); + hash = (37 * hash) + URI_FIELD_NUMBER; + hash = (53 * hash) + getUri().hashCode(); + hash = (37 * hash) + PHOTO_URI_FIELD_NUMBER; + hash = (53 * hash) + getPhotoUri().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.AuthorAttribution parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.AuthorAttribution parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.AuthorAttribution parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.AuthorAttribution parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.AuthorAttribution parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.AuthorAttribution parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.AuthorAttribution parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.AuthorAttribution parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.AuthorAttribution parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.AuthorAttribution parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.AuthorAttribution parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.AuthorAttribution parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.maps.places.v1.AuthorAttribution 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+   * Information about the author of the UGC data. Used in
+   * [Photo][google.maps.places.v1.Photo], and
+   * [Review][google.maps.places.v1.Review].
+   * 
+ * + * Protobuf type {@code google.maps.places.v1.AuthorAttribution} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.AuthorAttribution) + com.google.maps.places.v1.AuthorAttributionOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.AttributionProto + .internal_static_google_maps_places_v1_AuthorAttribution_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.AttributionProto + .internal_static_google_maps_places_v1_AuthorAttribution_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.AuthorAttribution.class, + com.google.maps.places.v1.AuthorAttribution.Builder.class); + } + + // Construct using com.google.maps.places.v1.AuthorAttribution.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + displayName_ = ""; + uri_ = ""; + photoUri_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.AttributionProto + .internal_static_google_maps_places_v1_AuthorAttribution_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.AuthorAttribution getDefaultInstanceForType() { + return com.google.maps.places.v1.AuthorAttribution.getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.AuthorAttribution build() { + com.google.maps.places.v1.AuthorAttribution result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.AuthorAttribution buildPartial() { + com.google.maps.places.v1.AuthorAttribution result = + new com.google.maps.places.v1.AuthorAttribution(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.maps.places.v1.AuthorAttribution result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.displayName_ = displayName_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.uri_ = uri_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.photoUri_ = photoUri_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.AuthorAttribution) { + return mergeFrom((com.google.maps.places.v1.AuthorAttribution) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.maps.places.v1.AuthorAttribution other) { + if (other == com.google.maps.places.v1.AuthorAttribution.getDefaultInstance()) return this; + if (!other.getDisplayName().isEmpty()) { + displayName_ = other.displayName_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getUri().isEmpty()) { + uri_ = other.uri_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getPhotoUri().isEmpty()) { + photoUri_ = other.photoUri_; + 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: + { + displayName_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + uri_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + photoUri_ = 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 displayName_ = ""; + /** + * + * + *
+     * Output only. Name of the author of the [Photo][google.maps.places.v1.Photo]
+     * or [Review][google.maps.places.v1.Review].
+     * 
+ * + * string display_name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @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; + } + } + /** + * + * + *
+     * Output only. Name of the author of the [Photo][google.maps.places.v1.Photo]
+     * or [Review][google.maps.places.v1.Review].
+     * 
+ * + * string display_name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @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; + } + } + /** + * + * + *
+     * Output only. Name of the author of the [Photo][google.maps.places.v1.Photo]
+     * or [Review][google.maps.places.v1.Review].
+     * 
+ * + * string display_name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @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_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. Name of the author of the [Photo][google.maps.places.v1.Photo]
+     * or [Review][google.maps.places.v1.Review].
+     * 
+ * + * string display_name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearDisplayName() { + displayName_ = getDefaultInstance().getDisplayName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. Name of the author of the [Photo][google.maps.places.v1.Photo]
+     * or [Review][google.maps.places.v1.Review].
+     * 
+ * + * string display_name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @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_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object uri_ = ""; + /** + * + * + *
+     * Output only. URI of the author of the [Photo][google.maps.places.v1.Photo]
+     * or [Review][google.maps.places.v1.Review].
+     * 
+ * + * string uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The uri. + */ + public java.lang.String getUri() { + java.lang.Object ref = uri_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + uri_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Output only. URI of the author of the [Photo][google.maps.places.v1.Photo]
+     * or [Review][google.maps.places.v1.Review].
+     * 
+ * + * string uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for uri. + */ + public com.google.protobuf.ByteString getUriBytes() { + java.lang.Object ref = uri_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uri_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Output only. URI of the author of the [Photo][google.maps.places.v1.Photo]
+     * or [Review][google.maps.places.v1.Review].
+     * 
+ * + * string uri = 2 [(.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(); + } + uri_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. URI of the author of the [Photo][google.maps.places.v1.Photo]
+     * or [Review][google.maps.places.v1.Review].
+     * 
+ * + * string uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearUri() { + uri_ = getDefaultInstance().getUri(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. URI of the author of the [Photo][google.maps.places.v1.Photo]
+     * or [Review][google.maps.places.v1.Review].
+     * 
+ * + * string uri = 2 [(.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); + uri_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object photoUri_ = ""; + /** + * + * + *
+     * Output only. Profile photo URI of the author of the
+     * [Photo][google.maps.places.v1.Photo] or
+     * [Review][google.maps.places.v1.Review].
+     * 
+ * + * string photo_uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The photoUri. + */ + public java.lang.String getPhotoUri() { + java.lang.Object ref = photoUri_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + photoUri_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Output only. Profile photo URI of the author of the
+     * [Photo][google.maps.places.v1.Photo] or
+     * [Review][google.maps.places.v1.Review].
+     * 
+ * + * string photo_uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for photoUri. + */ + public com.google.protobuf.ByteString getPhotoUriBytes() { + java.lang.Object ref = photoUri_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + photoUri_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Output only. Profile photo URI of the author of the
+     * [Photo][google.maps.places.v1.Photo] or
+     * [Review][google.maps.places.v1.Review].
+     * 
+ * + * string photo_uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The photoUri to set. + * @return This builder for chaining. + */ + public Builder setPhotoUri(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + photoUri_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. Profile photo URI of the author of the
+     * [Photo][google.maps.places.v1.Photo] or
+     * [Review][google.maps.places.v1.Review].
+     * 
+ * + * string photo_uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearPhotoUri() { + photoUri_ = getDefaultInstance().getPhotoUri(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. Profile photo URI of the author of the
+     * [Photo][google.maps.places.v1.Photo] or
+     * [Review][google.maps.places.v1.Review].
+     * 
+ * + * string photo_uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for photoUri to set. + * @return This builder for chaining. + */ + public Builder setPhotoUriBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + photoUri_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + @java.lang.Override + public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.AuthorAttribution) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.AuthorAttribution) + private static final com.google.maps.places.v1.AuthorAttribution DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.AuthorAttribution(); + } + + public static com.google.maps.places.v1.AuthorAttribution getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public AuthorAttribution 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.maps.places.v1.AuthorAttribution getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/AuthorAttributionOrBuilder.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/AuthorAttributionOrBuilder.java new file mode 100644 index 000000000000..9c5f4b49bffb --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/AuthorAttributionOrBuilder.java @@ -0,0 +1,108 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/attribution.proto + +package com.google.maps.places.v1; + +public interface AuthorAttributionOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.AuthorAttribution) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Output only. Name of the author of the [Photo][google.maps.places.v1.Photo]
+   * or [Review][google.maps.places.v1.Review].
+   * 
+ * + * string display_name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The displayName. + */ + java.lang.String getDisplayName(); + /** + * + * + *
+   * Output only. Name of the author of the [Photo][google.maps.places.v1.Photo]
+   * or [Review][google.maps.places.v1.Review].
+   * 
+ * + * string display_name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for displayName. + */ + com.google.protobuf.ByteString getDisplayNameBytes(); + + /** + * + * + *
+   * Output only. URI of the author of the [Photo][google.maps.places.v1.Photo]
+   * or [Review][google.maps.places.v1.Review].
+   * 
+ * + * string uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The uri. + */ + java.lang.String getUri(); + /** + * + * + *
+   * Output only. URI of the author of the [Photo][google.maps.places.v1.Photo]
+   * or [Review][google.maps.places.v1.Review].
+   * 
+ * + * string uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for uri. + */ + com.google.protobuf.ByteString getUriBytes(); + + /** + * + * + *
+   * Output only. Profile photo URI of the author of the
+   * [Photo][google.maps.places.v1.Photo] or
+   * [Review][google.maps.places.v1.Review].
+   * 
+ * + * string photo_uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The photoUri. + */ + java.lang.String getPhotoUri(); + /** + * + * + *
+   * Output only. Profile photo URI of the author of the
+   * [Photo][google.maps.places.v1.Photo] or
+   * [Review][google.maps.places.v1.Review].
+   * 
+ * + * string photo_uri = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for photoUri. + */ + com.google.protobuf.ByteString getPhotoUriBytes(); +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Circle.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Circle.java index 4d2a618e8bfa..36cfd845702d 100644 --- a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Circle.java +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Circle.java @@ -45,11 +45,6 @@ protected java.lang.Object newInstance(UnusedPrivateParameter unused) { return new Circle(); } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; - } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.GeometryProto .internal_static_google_maps_places_v1_Circle_descriptor; @@ -71,8 +66,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * *
    * Required. Center latitude and longitude.
-   * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-   * longitude must be within `[-180.0, 180.0]`.
+   *
+   * The range of latitude must be within [-90.0, 90.0]. The range of the
+   * longitude must be within [-180.0, 180.0].
    * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -88,8 +84,9 @@ public boolean hasCenter() { * *
    * Required. Center latitude and longitude.
-   * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-   * longitude must be within `[-180.0, 180.0]`.
+   *
+   * The range of latitude must be within [-90.0, 90.0]. The range of the
+   * longitude must be within [-180.0, 180.0].
    * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -105,8 +102,9 @@ public com.google.type.LatLng getCenter() { * *
    * Required. Center latitude and longitude.
-   * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-   * longitude must be within `[-180.0, 180.0]`.
+   *
+   * The range of latitude must be within [-90.0, 90.0]. The range of the
+   * longitude must be within [-180.0, 180.0].
    * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -122,8 +120,8 @@ public com.google.type.LatLngOrBuilder getCenterOrBuilder() { * * *
-   * Required. Radius measured in meters. The radius must be within `[0.0,
-   * 50000.0]`.
+   * Required. Radius measured in meters. The radius must be within [0.0,
+   * 50000.0].
    * 
* * double radius = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -514,8 +512,9 @@ public Builder mergeFrom( * *
      * Required. Center latitude and longitude.
-     * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-     * longitude must be within `[-180.0, 180.0]`.
+     *
+     * The range of latitude must be within [-90.0, 90.0]. The range of the
+     * longitude must be within [-180.0, 180.0].
      * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -530,8 +529,9 @@ public boolean hasCenter() { * *
      * Required. Center latitude and longitude.
-     * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-     * longitude must be within `[-180.0, 180.0]`.
+     *
+     * The range of latitude must be within [-90.0, 90.0]. The range of the
+     * longitude must be within [-180.0, 180.0].
      * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -550,8 +550,9 @@ public com.google.type.LatLng getCenter() { * *
      * Required. Center latitude and longitude.
-     * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-     * longitude must be within `[-180.0, 180.0]`.
+     *
+     * The range of latitude must be within [-90.0, 90.0]. The range of the
+     * longitude must be within [-180.0, 180.0].
      * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -574,8 +575,9 @@ public Builder setCenter(com.google.type.LatLng value) { * *
      * Required. Center latitude and longitude.
-     * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-     * longitude must be within `[-180.0, 180.0]`.
+     *
+     * The range of latitude must be within [-90.0, 90.0]. The range of the
+     * longitude must be within [-180.0, 180.0].
      * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -595,8 +597,9 @@ public Builder setCenter(com.google.type.LatLng.Builder builderForValue) { * *
      * Required. Center latitude and longitude.
-     * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-     * longitude must be within `[-180.0, 180.0]`.
+     *
+     * The range of latitude must be within [-90.0, 90.0]. The range of the
+     * longitude must be within [-180.0, 180.0].
      * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -622,8 +625,9 @@ public Builder mergeCenter(com.google.type.LatLng value) { * *
      * Required. Center latitude and longitude.
-     * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-     * longitude must be within `[-180.0, 180.0]`.
+     *
+     * The range of latitude must be within [-90.0, 90.0]. The range of the
+     * longitude must be within [-180.0, 180.0].
      * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -643,8 +647,9 @@ public Builder clearCenter() { * *
      * Required. Center latitude and longitude.
-     * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-     * longitude must be within `[-180.0, 180.0]`.
+     *
+     * The range of latitude must be within [-90.0, 90.0]. The range of the
+     * longitude must be within [-180.0, 180.0].
      * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -659,8 +664,9 @@ public com.google.type.LatLng.Builder getCenterBuilder() { * *
      * Required. Center latitude and longitude.
-     * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-     * longitude must be within `[-180.0, 180.0]`.
+     *
+     * The range of latitude must be within [-90.0, 90.0]. The range of the
+     * longitude must be within [-180.0, 180.0].
      * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -677,8 +683,9 @@ public com.google.type.LatLngOrBuilder getCenterOrBuilder() { * *
      * Required. Center latitude and longitude.
-     * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-     * longitude must be within `[-180.0, 180.0]`.
+     *
+     * The range of latitude must be within [-90.0, 90.0]. The range of the
+     * longitude must be within [-180.0, 180.0].
      * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -702,8 +709,8 @@ public com.google.type.LatLngOrBuilder getCenterOrBuilder() { * * *
-     * Required. Radius measured in meters. The radius must be within `[0.0,
-     * 50000.0]`.
+     * Required. Radius measured in meters. The radius must be within [0.0,
+     * 50000.0].
      * 
* * double radius = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -718,8 +725,8 @@ public double getRadius() { * * *
-     * Required. Radius measured in meters. The radius must be within `[0.0,
-     * 50000.0]`.
+     * Required. Radius measured in meters. The radius must be within [0.0,
+     * 50000.0].
      * 
* * double radius = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -738,8 +745,8 @@ public Builder setRadius(double value) { * * *
-     * Required. Radius measured in meters. The radius must be within `[0.0,
-     * 50000.0]`.
+     * Required. Radius measured in meters. The radius must be within [0.0,
+     * 50000.0].
      * 
* * double radius = 2 [(.google.api.field_behavior) = REQUIRED]; diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/CircleOrBuilder.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/CircleOrBuilder.java index 20d1e1d6c098..2452200c821f 100644 --- a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/CircleOrBuilder.java +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/CircleOrBuilder.java @@ -28,8 +28,9 @@ public interface CircleOrBuilder * *
    * Required. Center latitude and longitude.
-   * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-   * longitude must be within `[-180.0, 180.0]`.
+   *
+   * The range of latitude must be within [-90.0, 90.0]. The range of the
+   * longitude must be within [-180.0, 180.0].
    * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -42,8 +43,9 @@ public interface CircleOrBuilder * *
    * Required. Center latitude and longitude.
-   * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-   * longitude must be within `[-180.0, 180.0]`.
+   *
+   * The range of latitude must be within [-90.0, 90.0]. The range of the
+   * longitude must be within [-180.0, 180.0].
    * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -56,8 +58,9 @@ public interface CircleOrBuilder * *
    * Required. Center latitude and longitude.
-   * The range of latitude must be within `[-90.0, 90.0]`. The range of the
-   * longitude must be within `[-180.0, 180.0]`.
+   *
+   * The range of latitude must be within [-90.0, 90.0]. The range of the
+   * longitude must be within [-180.0, 180.0].
    * 
* * .google.type.LatLng center = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -68,8 +71,8 @@ public interface CircleOrBuilder * * *
-   * Required. Radius measured in meters. The radius must be within `[0.0,
-   * 50000.0]`.
+   * Required. Radius measured in meters. The radius must be within [0.0,
+   * 50000.0].
    * 
* * double radius = 2 [(.google.api.field_behavior) = REQUIRED]; diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/EVChargeOptions.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/EVChargeOptions.java new file mode 100644 index 000000000000..d37f7d945053 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/EVChargeOptions.java @@ -0,0 +1,2623 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/ev_charging.proto + +package com.google.maps.places.v1; + +/** + * + * + *
+ * Information about the EV Charge Station hosted in Place.
+ * Terminology follows
+ * https://afdc.energy.gov/fuels/electricity_infrastructure.html One port
+ * could charge one car at a time. One port has one or more connectors. One
+ * station has one or more ports.
+ * 
+ * + * Protobuf type {@code google.maps.places.v1.EVChargeOptions} + */ +public final class EVChargeOptions extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.EVChargeOptions) + EVChargeOptionsOrBuilder { + private static final long serialVersionUID = 0L; + // Use EVChargeOptions.newBuilder() to construct. + private EVChargeOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private EVChargeOptions() { + connectorAggregation_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new EVChargeOptions(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.EvChargingProto + .internal_static_google_maps_places_v1_EVChargeOptions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.EvChargingProto + .internal_static_google_maps_places_v1_EVChargeOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.EVChargeOptions.class, + com.google.maps.places.v1.EVChargeOptions.Builder.class); + } + + public interface ConnectorAggregationOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.EVChargeOptions.ConnectorAggregation) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+     * The connector type of this aggregation.
+     * 
+ * + * .google.maps.places.v1.EVConnectorType type = 1; + * + * @return The enum numeric value on the wire for type. + */ + int getTypeValue(); + /** + * + * + *
+     * The connector type of this aggregation.
+     * 
+ * + * .google.maps.places.v1.EVConnectorType type = 1; + * + * @return The type. + */ + com.google.maps.places.v1.EVConnectorType getType(); + + /** + * + * + *
+     * The static max charging rate in kw of each connector in the aggregation.
+     * 
+ * + * double max_charge_rate_kw = 2; + * + * @return The maxChargeRateKw. + */ + double getMaxChargeRateKw(); + + /** + * + * + *
+     * Number of connectors in this aggregation.
+     * 
+ * + * int32 count = 3; + * + * @return The count. + */ + int getCount(); + + /** + * + * + *
+     * Number of connectors in this aggregation that are currently available.
+     * 
+ * + * optional int32 available_count = 4; + * + * @return Whether the availableCount field is set. + */ + boolean hasAvailableCount(); + /** + * + * + *
+     * Number of connectors in this aggregation that are currently available.
+     * 
+ * + * optional int32 available_count = 4; + * + * @return The availableCount. + */ + int getAvailableCount(); + + /** + * + * + *
+     * Number of connectors in this aggregation that are currently out of
+     * service.
+     * 
+ * + * optional int32 out_of_service_count = 5; + * + * @return Whether the outOfServiceCount field is set. + */ + boolean hasOutOfServiceCount(); + /** + * + * + *
+     * Number of connectors in this aggregation that are currently out of
+     * service.
+     * 
+ * + * optional int32 out_of_service_count = 5; + * + * @return The outOfServiceCount. + */ + int getOutOfServiceCount(); + + /** + * + * + *
+     * The timestamp when the connector availability information in this
+     * aggregation was last updated.
+     * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + * + * @return Whether the availabilityLastUpdateTime field is set. + */ + boolean hasAvailabilityLastUpdateTime(); + /** + * + * + *
+     * The timestamp when the connector availability information in this
+     * aggregation was last updated.
+     * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + * + * @return The availabilityLastUpdateTime. + */ + com.google.protobuf.Timestamp getAvailabilityLastUpdateTime(); + /** + * + * + *
+     * The timestamp when the connector availability information in this
+     * aggregation was last updated.
+     * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + */ + com.google.protobuf.TimestampOrBuilder getAvailabilityLastUpdateTimeOrBuilder(); + } + /** + * + * + *
+   * EV charging information grouped by [type, max_charge_rate_kw].
+   * Shows EV charge aggregation of connectors that have the same type and max
+   * charge rate in kw.
+   * 
+ * + * Protobuf type {@code google.maps.places.v1.EVChargeOptions.ConnectorAggregation} + */ + public static final class ConnectorAggregation extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.EVChargeOptions.ConnectorAggregation) + ConnectorAggregationOrBuilder { + private static final long serialVersionUID = 0L; + // Use ConnectorAggregation.newBuilder() to construct. + private ConnectorAggregation(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private ConnectorAggregation() { + type_ = 0; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new ConnectorAggregation(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.EvChargingProto + .internal_static_google_maps_places_v1_EVChargeOptions_ConnectorAggregation_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.EvChargingProto + .internal_static_google_maps_places_v1_EVChargeOptions_ConnectorAggregation_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.class, + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.Builder.class); + } + + private int bitField0_; + public static final int TYPE_FIELD_NUMBER = 1; + private int type_ = 0; + /** + * + * + *
+     * The connector type of this aggregation.
+     * 
+ * + * .google.maps.places.v1.EVConnectorType type = 1; + * + * @return The enum numeric value on the wire for type. + */ + @java.lang.Override + public int getTypeValue() { + return type_; + } + /** + * + * + *
+     * The connector type of this aggregation.
+     * 
+ * + * .google.maps.places.v1.EVConnectorType type = 1; + * + * @return The type. + */ + @java.lang.Override + public com.google.maps.places.v1.EVConnectorType getType() { + com.google.maps.places.v1.EVConnectorType result = + com.google.maps.places.v1.EVConnectorType.forNumber(type_); + return result == null ? com.google.maps.places.v1.EVConnectorType.UNRECOGNIZED : result; + } + + public static final int MAX_CHARGE_RATE_KW_FIELD_NUMBER = 2; + private double maxChargeRateKw_ = 0D; + /** + * + * + *
+     * The static max charging rate in kw of each connector in the aggregation.
+     * 
+ * + * double max_charge_rate_kw = 2; + * + * @return The maxChargeRateKw. + */ + @java.lang.Override + public double getMaxChargeRateKw() { + return maxChargeRateKw_; + } + + public static final int COUNT_FIELD_NUMBER = 3; + private int count_ = 0; + /** + * + * + *
+     * Number of connectors in this aggregation.
+     * 
+ * + * int32 count = 3; + * + * @return The count. + */ + @java.lang.Override + public int getCount() { + return count_; + } + + public static final int AVAILABLE_COUNT_FIELD_NUMBER = 4; + private int availableCount_ = 0; + /** + * + * + *
+     * Number of connectors in this aggregation that are currently available.
+     * 
+ * + * optional int32 available_count = 4; + * + * @return Whether the availableCount field is set. + */ + @java.lang.Override + public boolean hasAvailableCount() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * + * + *
+     * Number of connectors in this aggregation that are currently available.
+     * 
+ * + * optional int32 available_count = 4; + * + * @return The availableCount. + */ + @java.lang.Override + public int getAvailableCount() { + return availableCount_; + } + + public static final int OUT_OF_SERVICE_COUNT_FIELD_NUMBER = 5; + private int outOfServiceCount_ = 0; + /** + * + * + *
+     * Number of connectors in this aggregation that are currently out of
+     * service.
+     * 
+ * + * optional int32 out_of_service_count = 5; + * + * @return Whether the outOfServiceCount field is set. + */ + @java.lang.Override + public boolean hasOutOfServiceCount() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * + * + *
+     * Number of connectors in this aggregation that are currently out of
+     * service.
+     * 
+ * + * optional int32 out_of_service_count = 5; + * + * @return The outOfServiceCount. + */ + @java.lang.Override + public int getOutOfServiceCount() { + return outOfServiceCount_; + } + + public static final int AVAILABILITY_LAST_UPDATE_TIME_FIELD_NUMBER = 6; + private com.google.protobuf.Timestamp availabilityLastUpdateTime_; + /** + * + * + *
+     * The timestamp when the connector availability information in this
+     * aggregation was last updated.
+     * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + * + * @return Whether the availabilityLastUpdateTime field is set. + */ + @java.lang.Override + public boolean hasAvailabilityLastUpdateTime() { + return availabilityLastUpdateTime_ != null; + } + /** + * + * + *
+     * The timestamp when the connector availability information in this
+     * aggregation was last updated.
+     * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + * + * @return The availabilityLastUpdateTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getAvailabilityLastUpdateTime() { + return availabilityLastUpdateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : availabilityLastUpdateTime_; + } + /** + * + * + *
+     * The timestamp when the connector availability information in this
+     * aggregation was last updated.
+     * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getAvailabilityLastUpdateTimeOrBuilder() { + return availabilityLastUpdateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : availabilityLastUpdateTime_; + } + + 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 (type_ + != com.google.maps.places.v1.EVConnectorType.EV_CONNECTOR_TYPE_UNSPECIFIED.getNumber()) { + output.writeEnum(1, type_); + } + if (java.lang.Double.doubleToRawLongBits(maxChargeRateKw_) != 0) { + output.writeDouble(2, maxChargeRateKw_); + } + if (count_ != 0) { + output.writeInt32(3, count_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeInt32(4, availableCount_); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeInt32(5, outOfServiceCount_); + } + if (availabilityLastUpdateTime_ != null) { + output.writeMessage(6, getAvailabilityLastUpdateTime()); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (type_ + != com.google.maps.places.v1.EVConnectorType.EV_CONNECTOR_TYPE_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(1, type_); + } + if (java.lang.Double.doubleToRawLongBits(maxChargeRateKw_) != 0) { + size += com.google.protobuf.CodedOutputStream.computeDoubleSize(2, maxChargeRateKw_); + } + if (count_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(3, count_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(4, availableCount_); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(5, outOfServiceCount_); + } + if (availabilityLastUpdateTime_ != null) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 6, getAvailabilityLastUpdateTime()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation)) { + return super.equals(obj); + } + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation other = + (com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation) obj; + + if (type_ != other.type_) return false; + if (java.lang.Double.doubleToLongBits(getMaxChargeRateKw()) + != java.lang.Double.doubleToLongBits(other.getMaxChargeRateKw())) return false; + if (getCount() != other.getCount()) return false; + if (hasAvailableCount() != other.hasAvailableCount()) return false; + if (hasAvailableCount()) { + if (getAvailableCount() != other.getAvailableCount()) return false; + } + if (hasOutOfServiceCount() != other.hasOutOfServiceCount()) return false; + if (hasOutOfServiceCount()) { + if (getOutOfServiceCount() != other.getOutOfServiceCount()) return false; + } + if (hasAvailabilityLastUpdateTime() != other.hasAvailabilityLastUpdateTime()) return false; + if (hasAvailabilityLastUpdateTime()) { + if (!getAvailabilityLastUpdateTime().equals(other.getAvailabilityLastUpdateTime())) + 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) + TYPE_FIELD_NUMBER; + hash = (53 * hash) + type_; + hash = (37 * hash) + MAX_CHARGE_RATE_KW_FIELD_NUMBER; + hash = + (53 * hash) + + com.google.protobuf.Internal.hashLong( + java.lang.Double.doubleToLongBits(getMaxChargeRateKw())); + hash = (37 * hash) + COUNT_FIELD_NUMBER; + hash = (53 * hash) + getCount(); + if (hasAvailableCount()) { + hash = (37 * hash) + AVAILABLE_COUNT_FIELD_NUMBER; + hash = (53 * hash) + getAvailableCount(); + } + if (hasOutOfServiceCount()) { + hash = (37 * hash) + OUT_OF_SERVICE_COUNT_FIELD_NUMBER; + hash = (53 * hash) + getOutOfServiceCount(); + } + if (hasAvailabilityLastUpdateTime()) { + hash = (37 * hash) + AVAILABILITY_LAST_UPDATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getAvailabilityLastUpdateTime().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+     * EV charging information grouped by [type, max_charge_rate_kw].
+     * Shows EV charge aggregation of connectors that have the same type and max
+     * charge rate in kw.
+     * 
+ * + * Protobuf type {@code google.maps.places.v1.EVChargeOptions.ConnectorAggregation} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.EVChargeOptions.ConnectorAggregation) + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregationOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.EvChargingProto + .internal_static_google_maps_places_v1_EVChargeOptions_ConnectorAggregation_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.EvChargingProto + .internal_static_google_maps_places_v1_EVChargeOptions_ConnectorAggregation_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.class, + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.Builder.class); + } + + // Construct using com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + type_ = 0; + maxChargeRateKw_ = 0D; + count_ = 0; + availableCount_ = 0; + outOfServiceCount_ = 0; + availabilityLastUpdateTime_ = null; + if (availabilityLastUpdateTimeBuilder_ != null) { + availabilityLastUpdateTimeBuilder_.dispose(); + availabilityLastUpdateTimeBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.EvChargingProto + .internal_static_google_maps_places_v1_EVChargeOptions_ConnectorAggregation_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation + getDefaultInstanceForType() { + return com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation build() { + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation buildPartial() { + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation result = + new com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.type_ = type_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.maxChargeRateKw_ = maxChargeRateKw_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.count_ = count_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000008) != 0)) { + result.availableCount_ = availableCount_; + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.outOfServiceCount_ = outOfServiceCount_; + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.availabilityLastUpdateTime_ = + availabilityLastUpdateTimeBuilder_ == null + ? availabilityLastUpdateTime_ + : availabilityLastUpdateTimeBuilder_.build(); + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation) { + return mergeFrom((com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation other) { + if (other + == com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.getDefaultInstance()) + return this; + if (other.type_ != 0) { + setTypeValue(other.getTypeValue()); + } + if (other.getMaxChargeRateKw() != 0D) { + setMaxChargeRateKw(other.getMaxChargeRateKw()); + } + if (other.getCount() != 0) { + setCount(other.getCount()); + } + if (other.hasAvailableCount()) { + setAvailableCount(other.getAvailableCount()); + } + if (other.hasOutOfServiceCount()) { + setOutOfServiceCount(other.getOutOfServiceCount()); + } + if (other.hasAvailabilityLastUpdateTime()) { + mergeAvailabilityLastUpdateTime(other.getAvailabilityLastUpdateTime()); + } + 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: + { + type_ = input.readEnum(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 17: + { + maxChargeRateKw_ = input.readDouble(); + bitField0_ |= 0x00000002; + break; + } // case 17 + case 24: + { + count_ = input.readInt32(); + bitField0_ |= 0x00000004; + break; + } // case 24 + case 32: + { + availableCount_ = input.readInt32(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 40: + { + outOfServiceCount_ = input.readInt32(); + bitField0_ |= 0x00000010; + break; + } // case 40 + case 50: + { + input.readMessage( + getAvailabilityLastUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000020; + break; + } // case 50 + 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 type_ = 0; + /** + * + * + *
+       * The connector type of this aggregation.
+       * 
+ * + * .google.maps.places.v1.EVConnectorType type = 1; + * + * @return The enum numeric value on the wire for type. + */ + @java.lang.Override + public int getTypeValue() { + return type_; + } + /** + * + * + *
+       * The connector type of this aggregation.
+       * 
+ * + * .google.maps.places.v1.EVConnectorType type = 1; + * + * @param value The enum numeric value on the wire for type to set. + * @return This builder for chaining. + */ + public Builder setTypeValue(int value) { + type_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+       * The connector type of this aggregation.
+       * 
+ * + * .google.maps.places.v1.EVConnectorType type = 1; + * + * @return The type. + */ + @java.lang.Override + public com.google.maps.places.v1.EVConnectorType getType() { + com.google.maps.places.v1.EVConnectorType result = + com.google.maps.places.v1.EVConnectorType.forNumber(type_); + return result == null ? com.google.maps.places.v1.EVConnectorType.UNRECOGNIZED : result; + } + /** + * + * + *
+       * The connector type of this aggregation.
+       * 
+ * + * .google.maps.places.v1.EVConnectorType type = 1; + * + * @param value The type to set. + * @return This builder for chaining. + */ + public Builder setType(com.google.maps.places.v1.EVConnectorType value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000001; + type_ = value.getNumber(); + onChanged(); + return this; + } + /** + * + * + *
+       * The connector type of this aggregation.
+       * 
+ * + * .google.maps.places.v1.EVConnectorType type = 1; + * + * @return This builder for chaining. + */ + public Builder clearType() { + bitField0_ = (bitField0_ & ~0x00000001); + type_ = 0; + onChanged(); + return this; + } + + private double maxChargeRateKw_; + /** + * + * + *
+       * The static max charging rate in kw of each connector in the aggregation.
+       * 
+ * + * double max_charge_rate_kw = 2; + * + * @return The maxChargeRateKw. + */ + @java.lang.Override + public double getMaxChargeRateKw() { + return maxChargeRateKw_; + } + /** + * + * + *
+       * The static max charging rate in kw of each connector in the aggregation.
+       * 
+ * + * double max_charge_rate_kw = 2; + * + * @param value The maxChargeRateKw to set. + * @return This builder for chaining. + */ + public Builder setMaxChargeRateKw(double value) { + + maxChargeRateKw_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * + * + *
+       * The static max charging rate in kw of each connector in the aggregation.
+       * 
+ * + * double max_charge_rate_kw = 2; + * + * @return This builder for chaining. + */ + public Builder clearMaxChargeRateKw() { + bitField0_ = (bitField0_ & ~0x00000002); + maxChargeRateKw_ = 0D; + onChanged(); + return this; + } + + private int count_; + /** + * + * + *
+       * Number of connectors in this aggregation.
+       * 
+ * + * int32 count = 3; + * + * @return The count. + */ + @java.lang.Override + public int getCount() { + return count_; + } + /** + * + * + *
+       * Number of connectors in this aggregation.
+       * 
+ * + * int32 count = 3; + * + * @param value The count to set. + * @return This builder for chaining. + */ + public Builder setCount(int value) { + + count_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+       * Number of connectors in this aggregation.
+       * 
+ * + * int32 count = 3; + * + * @return This builder for chaining. + */ + public Builder clearCount() { + bitField0_ = (bitField0_ & ~0x00000004); + count_ = 0; + onChanged(); + return this; + } + + private int availableCount_; + /** + * + * + *
+       * Number of connectors in this aggregation that are currently available.
+       * 
+ * + * optional int32 available_count = 4; + * + * @return Whether the availableCount field is set. + */ + @java.lang.Override + public boolean hasAvailableCount() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + * + * + *
+       * Number of connectors in this aggregation that are currently available.
+       * 
+ * + * optional int32 available_count = 4; + * + * @return The availableCount. + */ + @java.lang.Override + public int getAvailableCount() { + return availableCount_; + } + /** + * + * + *
+       * Number of connectors in this aggregation that are currently available.
+       * 
+ * + * optional int32 available_count = 4; + * + * @param value The availableCount to set. + * @return This builder for chaining. + */ + public Builder setAvailableCount(int value) { + + availableCount_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+       * Number of connectors in this aggregation that are currently available.
+       * 
+ * + * optional int32 available_count = 4; + * + * @return This builder for chaining. + */ + public Builder clearAvailableCount() { + bitField0_ = (bitField0_ & ~0x00000008); + availableCount_ = 0; + onChanged(); + return this; + } + + private int outOfServiceCount_; + /** + * + * + *
+       * Number of connectors in this aggregation that are currently out of
+       * service.
+       * 
+ * + * optional int32 out_of_service_count = 5; + * + * @return Whether the outOfServiceCount field is set. + */ + @java.lang.Override + public boolean hasOutOfServiceCount() { + return ((bitField0_ & 0x00000010) != 0); + } + /** + * + * + *
+       * Number of connectors in this aggregation that are currently out of
+       * service.
+       * 
+ * + * optional int32 out_of_service_count = 5; + * + * @return The outOfServiceCount. + */ + @java.lang.Override + public int getOutOfServiceCount() { + return outOfServiceCount_; + } + /** + * + * + *
+       * Number of connectors in this aggregation that are currently out of
+       * service.
+       * 
+ * + * optional int32 out_of_service_count = 5; + * + * @param value The outOfServiceCount to set. + * @return This builder for chaining. + */ + public Builder setOutOfServiceCount(int value) { + + outOfServiceCount_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * + * + *
+       * Number of connectors in this aggregation that are currently out of
+       * service.
+       * 
+ * + * optional int32 out_of_service_count = 5; + * + * @return This builder for chaining. + */ + public Builder clearOutOfServiceCount() { + bitField0_ = (bitField0_ & ~0x00000010); + outOfServiceCount_ = 0; + onChanged(); + return this; + } + + private com.google.protobuf.Timestamp availabilityLastUpdateTime_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + availabilityLastUpdateTimeBuilder_; + /** + * + * + *
+       * The timestamp when the connector availability information in this
+       * aggregation was last updated.
+       * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + * + * @return Whether the availabilityLastUpdateTime field is set. + */ + public boolean hasAvailabilityLastUpdateTime() { + return ((bitField0_ & 0x00000020) != 0); + } + /** + * + * + *
+       * The timestamp when the connector availability information in this
+       * aggregation was last updated.
+       * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + * + * @return The availabilityLastUpdateTime. + */ + public com.google.protobuf.Timestamp getAvailabilityLastUpdateTime() { + if (availabilityLastUpdateTimeBuilder_ == null) { + return availabilityLastUpdateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : availabilityLastUpdateTime_; + } else { + return availabilityLastUpdateTimeBuilder_.getMessage(); + } + } + /** + * + * + *
+       * The timestamp when the connector availability information in this
+       * aggregation was last updated.
+       * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + */ + public Builder setAvailabilityLastUpdateTime(com.google.protobuf.Timestamp value) { + if (availabilityLastUpdateTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + availabilityLastUpdateTime_ = value; + } else { + availabilityLastUpdateTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * + * + *
+       * The timestamp when the connector availability information in this
+       * aggregation was last updated.
+       * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + */ + public Builder setAvailabilityLastUpdateTime( + com.google.protobuf.Timestamp.Builder builderForValue) { + if (availabilityLastUpdateTimeBuilder_ == null) { + availabilityLastUpdateTime_ = builderForValue.build(); + } else { + availabilityLastUpdateTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * + * + *
+       * The timestamp when the connector availability information in this
+       * aggregation was last updated.
+       * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + */ + public Builder mergeAvailabilityLastUpdateTime(com.google.protobuf.Timestamp value) { + if (availabilityLastUpdateTimeBuilder_ == null) { + if (((bitField0_ & 0x00000020) != 0) + && availabilityLastUpdateTime_ != null + && availabilityLastUpdateTime_ + != com.google.protobuf.Timestamp.getDefaultInstance()) { + getAvailabilityLastUpdateTimeBuilder().mergeFrom(value); + } else { + availabilityLastUpdateTime_ = value; + } + } else { + availabilityLastUpdateTimeBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * + * + *
+       * The timestamp when the connector availability information in this
+       * aggregation was last updated.
+       * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + */ + public Builder clearAvailabilityLastUpdateTime() { + bitField0_ = (bitField0_ & ~0x00000020); + availabilityLastUpdateTime_ = null; + if (availabilityLastUpdateTimeBuilder_ != null) { + availabilityLastUpdateTimeBuilder_.dispose(); + availabilityLastUpdateTimeBuilder_ = null; + } + onChanged(); + return this; + } + /** + * + * + *
+       * The timestamp when the connector availability information in this
+       * aggregation was last updated.
+       * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + */ + public com.google.protobuf.Timestamp.Builder getAvailabilityLastUpdateTimeBuilder() { + bitField0_ |= 0x00000020; + onChanged(); + return getAvailabilityLastUpdateTimeFieldBuilder().getBuilder(); + } + /** + * + * + *
+       * The timestamp when the connector availability information in this
+       * aggregation was last updated.
+       * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + */ + public com.google.protobuf.TimestampOrBuilder getAvailabilityLastUpdateTimeOrBuilder() { + if (availabilityLastUpdateTimeBuilder_ != null) { + return availabilityLastUpdateTimeBuilder_.getMessageOrBuilder(); + } else { + return availabilityLastUpdateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : availabilityLastUpdateTime_; + } + } + /** + * + * + *
+       * The timestamp when the connector availability information in this
+       * aggregation was last updated.
+       * 
+ * + * .google.protobuf.Timestamp availability_last_update_time = 6; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + getAvailabilityLastUpdateTimeFieldBuilder() { + if (availabilityLastUpdateTimeBuilder_ == null) { + availabilityLastUpdateTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getAvailabilityLastUpdateTime(), getParentForChildren(), isClean()); + availabilityLastUpdateTime_ = null; + } + return availabilityLastUpdateTimeBuilder_; + } + + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.EVChargeOptions.ConnectorAggregation) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.EVChargeOptions.ConnectorAggregation) + private static final com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation(); + } + + public static com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public ConnectorAggregation 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.maps.places.v1.EVChargeOptions.ConnectorAggregation + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public static final int CONNECTOR_COUNT_FIELD_NUMBER = 1; + private int connectorCount_ = 0; + /** + * + * + *
+   * Number of connectors at this station. However, because some ports can have
+   * multiple connectors but only be able to charge one car at a time (e.g.) the
+   * number of connectors may be greater than the total number of cars which can
+   * charge simultaneously.
+   * 
+ * + * int32 connector_count = 1; + * + * @return The connectorCount. + */ + @java.lang.Override + public int getConnectorCount() { + return connectorCount_; + } + + public static final int CONNECTOR_AGGREGATION_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private java.util.List + connectorAggregation_; + /** + * + * + *
+   * A list of EV charging connector aggregations that contain connectors of the
+   * same type and same charge rate.
+   * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + @java.lang.Override + public java.util.List + getConnectorAggregationList() { + return connectorAggregation_; + } + /** + * + * + *
+   * A list of EV charging connector aggregations that contain connectors of the
+   * same type and same charge rate.
+   * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.maps.places.v1.EVChargeOptions.ConnectorAggregationOrBuilder> + getConnectorAggregationOrBuilderList() { + return connectorAggregation_; + } + /** + * + * + *
+   * A list of EV charging connector aggregations that contain connectors of the
+   * same type and same charge rate.
+   * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + @java.lang.Override + public int getConnectorAggregationCount() { + return connectorAggregation_.size(); + } + /** + * + * + *
+   * A list of EV charging connector aggregations that contain connectors of the
+   * same type and same charge rate.
+   * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + @java.lang.Override + public com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation getConnectorAggregation( + int index) { + return connectorAggregation_.get(index); + } + /** + * + * + *
+   * A list of EV charging connector aggregations that contain connectors of the
+   * same type and same charge rate.
+   * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + @java.lang.Override + public com.google.maps.places.v1.EVChargeOptions.ConnectorAggregationOrBuilder + getConnectorAggregationOrBuilder(int index) { + return connectorAggregation_.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 (connectorCount_ != 0) { + output.writeInt32(1, connectorCount_); + } + for (int i = 0; i < connectorAggregation_.size(); i++) { + output.writeMessage(2, connectorAggregation_.get(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (connectorCount_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, connectorCount_); + } + for (int i = 0; i < connectorAggregation_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(2, connectorAggregation_.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.maps.places.v1.EVChargeOptions)) { + return super.equals(obj); + } + com.google.maps.places.v1.EVChargeOptions other = + (com.google.maps.places.v1.EVChargeOptions) obj; + + if (getConnectorCount() != other.getConnectorCount()) return false; + if (!getConnectorAggregationList().equals(other.getConnectorAggregationList())) 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) + CONNECTOR_COUNT_FIELD_NUMBER; + hash = (53 * hash) + getConnectorCount(); + if (getConnectorAggregationCount() > 0) { + hash = (37 * hash) + CONNECTOR_AGGREGATION_FIELD_NUMBER; + hash = (53 * hash) + getConnectorAggregationList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.EVChargeOptions parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.EVChargeOptions parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.EVChargeOptions parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.EVChargeOptions parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.EVChargeOptions parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.EVChargeOptions parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.EVChargeOptions parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.EVChargeOptions parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.EVChargeOptions parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.EVChargeOptions parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.EVChargeOptions parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.EVChargeOptions parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.maps.places.v1.EVChargeOptions 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+   * Information about the EV Charge Station hosted in Place.
+   * Terminology follows
+   * https://afdc.energy.gov/fuels/electricity_infrastructure.html One port
+   * could charge one car at a time. One port has one or more connectors. One
+   * station has one or more ports.
+   * 
+ * + * Protobuf type {@code google.maps.places.v1.EVChargeOptions} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.EVChargeOptions) + com.google.maps.places.v1.EVChargeOptionsOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.EvChargingProto + .internal_static_google_maps_places_v1_EVChargeOptions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.EvChargingProto + .internal_static_google_maps_places_v1_EVChargeOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.EVChargeOptions.class, + com.google.maps.places.v1.EVChargeOptions.Builder.class); + } + + // Construct using com.google.maps.places.v1.EVChargeOptions.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + connectorCount_ = 0; + if (connectorAggregationBuilder_ == null) { + connectorAggregation_ = java.util.Collections.emptyList(); + } else { + connectorAggregation_ = null; + connectorAggregationBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000002); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.EvChargingProto + .internal_static_google_maps_places_v1_EVChargeOptions_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.EVChargeOptions getDefaultInstanceForType() { + return com.google.maps.places.v1.EVChargeOptions.getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.EVChargeOptions build() { + com.google.maps.places.v1.EVChargeOptions result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.EVChargeOptions buildPartial() { + com.google.maps.places.v1.EVChargeOptions result = + new com.google.maps.places.v1.EVChargeOptions(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(com.google.maps.places.v1.EVChargeOptions result) { + if (connectorAggregationBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + connectorAggregation_ = java.util.Collections.unmodifiableList(connectorAggregation_); + bitField0_ = (bitField0_ & ~0x00000002); + } + result.connectorAggregation_ = connectorAggregation_; + } else { + result.connectorAggregation_ = connectorAggregationBuilder_.build(); + } + } + + private void buildPartial0(com.google.maps.places.v1.EVChargeOptions result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.connectorCount_ = connectorCount_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.EVChargeOptions) { + return mergeFrom((com.google.maps.places.v1.EVChargeOptions) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.maps.places.v1.EVChargeOptions other) { + if (other == com.google.maps.places.v1.EVChargeOptions.getDefaultInstance()) return this; + if (other.getConnectorCount() != 0) { + setConnectorCount(other.getConnectorCount()); + } + if (connectorAggregationBuilder_ == null) { + if (!other.connectorAggregation_.isEmpty()) { + if (connectorAggregation_.isEmpty()) { + connectorAggregation_ = other.connectorAggregation_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureConnectorAggregationIsMutable(); + connectorAggregation_.addAll(other.connectorAggregation_); + } + onChanged(); + } + } else { + if (!other.connectorAggregation_.isEmpty()) { + if (connectorAggregationBuilder_.isEmpty()) { + connectorAggregationBuilder_.dispose(); + connectorAggregationBuilder_ = null; + connectorAggregation_ = other.connectorAggregation_; + bitField0_ = (bitField0_ & ~0x00000002); + connectorAggregationBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders + ? getConnectorAggregationFieldBuilder() + : null; + } else { + connectorAggregationBuilder_.addAllMessages(other.connectorAggregation_); + } + } + } + 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: + { + connectorCount_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: + { + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation m = + input.readMessage( + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.parser(), + extensionRegistry); + if (connectorAggregationBuilder_ == null) { + ensureConnectorAggregationIsMutable(); + connectorAggregation_.add(m); + } else { + connectorAggregationBuilder_.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 int connectorCount_; + /** + * + * + *
+     * Number of connectors at this station. However, because some ports can have
+     * multiple connectors but only be able to charge one car at a time (e.g.) the
+     * number of connectors may be greater than the total number of cars which can
+     * charge simultaneously.
+     * 
+ * + * int32 connector_count = 1; + * + * @return The connectorCount. + */ + @java.lang.Override + public int getConnectorCount() { + return connectorCount_; + } + /** + * + * + *
+     * Number of connectors at this station. However, because some ports can have
+     * multiple connectors but only be able to charge one car at a time (e.g.) the
+     * number of connectors may be greater than the total number of cars which can
+     * charge simultaneously.
+     * 
+ * + * int32 connector_count = 1; + * + * @param value The connectorCount to set. + * @return This builder for chaining. + */ + public Builder setConnectorCount(int value) { + + connectorCount_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+     * Number of connectors at this station. However, because some ports can have
+     * multiple connectors but only be able to charge one car at a time (e.g.) the
+     * number of connectors may be greater than the total number of cars which can
+     * charge simultaneously.
+     * 
+ * + * int32 connector_count = 1; + * + * @return This builder for chaining. + */ + public Builder clearConnectorCount() { + bitField0_ = (bitField0_ & ~0x00000001); + connectorCount_ = 0; + onChanged(); + return this; + } + + private java.util.List + connectorAggregation_ = java.util.Collections.emptyList(); + + private void ensureConnectorAggregationIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + connectorAggregation_ = + new java.util.ArrayList( + connectorAggregation_); + bitField0_ |= 0x00000002; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation, + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.Builder, + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregationOrBuilder> + connectorAggregationBuilder_; + + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public java.util.List + getConnectorAggregationList() { + if (connectorAggregationBuilder_ == null) { + return java.util.Collections.unmodifiableList(connectorAggregation_); + } else { + return connectorAggregationBuilder_.getMessageList(); + } + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public int getConnectorAggregationCount() { + if (connectorAggregationBuilder_ == null) { + return connectorAggregation_.size(); + } else { + return connectorAggregationBuilder_.getCount(); + } + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation getConnectorAggregation( + int index) { + if (connectorAggregationBuilder_ == null) { + return connectorAggregation_.get(index); + } else { + return connectorAggregationBuilder_.getMessage(index); + } + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public Builder setConnectorAggregation( + int index, com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation value) { + if (connectorAggregationBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConnectorAggregationIsMutable(); + connectorAggregation_.set(index, value); + onChanged(); + } else { + connectorAggregationBuilder_.setMessage(index, value); + } + return this; + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public Builder setConnectorAggregation( + int index, + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.Builder builderForValue) { + if (connectorAggregationBuilder_ == null) { + ensureConnectorAggregationIsMutable(); + connectorAggregation_.set(index, builderForValue.build()); + onChanged(); + } else { + connectorAggregationBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public Builder addConnectorAggregation( + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation value) { + if (connectorAggregationBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConnectorAggregationIsMutable(); + connectorAggregation_.add(value); + onChanged(); + } else { + connectorAggregationBuilder_.addMessage(value); + } + return this; + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public Builder addConnectorAggregation( + int index, com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation value) { + if (connectorAggregationBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConnectorAggregationIsMutable(); + connectorAggregation_.add(index, value); + onChanged(); + } else { + connectorAggregationBuilder_.addMessage(index, value); + } + return this; + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public Builder addConnectorAggregation( + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.Builder builderForValue) { + if (connectorAggregationBuilder_ == null) { + ensureConnectorAggregationIsMutable(); + connectorAggregation_.add(builderForValue.build()); + onChanged(); + } else { + connectorAggregationBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public Builder addConnectorAggregation( + int index, + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.Builder builderForValue) { + if (connectorAggregationBuilder_ == null) { + ensureConnectorAggregationIsMutable(); + connectorAggregation_.add(index, builderForValue.build()); + onChanged(); + } else { + connectorAggregationBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public Builder addAllConnectorAggregation( + java.lang.Iterable + values) { + if (connectorAggregationBuilder_ == null) { + ensureConnectorAggregationIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, connectorAggregation_); + onChanged(); + } else { + connectorAggregationBuilder_.addAllMessages(values); + } + return this; + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public Builder clearConnectorAggregation() { + if (connectorAggregationBuilder_ == null) { + connectorAggregation_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + } else { + connectorAggregationBuilder_.clear(); + } + return this; + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public Builder removeConnectorAggregation(int index) { + if (connectorAggregationBuilder_ == null) { + ensureConnectorAggregationIsMutable(); + connectorAggregation_.remove(index); + onChanged(); + } else { + connectorAggregationBuilder_.remove(index); + } + return this; + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.Builder + getConnectorAggregationBuilder(int index) { + return getConnectorAggregationFieldBuilder().getBuilder(index); + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public com.google.maps.places.v1.EVChargeOptions.ConnectorAggregationOrBuilder + getConnectorAggregationOrBuilder(int index) { + if (connectorAggregationBuilder_ == null) { + return connectorAggregation_.get(index); + } else { + return connectorAggregationBuilder_.getMessageOrBuilder(index); + } + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public java.util.List< + ? extends com.google.maps.places.v1.EVChargeOptions.ConnectorAggregationOrBuilder> + getConnectorAggregationOrBuilderList() { + if (connectorAggregationBuilder_ != null) { + return connectorAggregationBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(connectorAggregation_); + } + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.Builder + addConnectorAggregationBuilder() { + return getConnectorAggregationFieldBuilder() + .addBuilder( + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.getDefaultInstance()); + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.Builder + addConnectorAggregationBuilder(int index) { + return getConnectorAggregationFieldBuilder() + .addBuilder( + index, + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.getDefaultInstance()); + } + /** + * + * + *
+     * A list of EV charging connector aggregations that contain connectors of the
+     * same type and same charge rate.
+     * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + public java.util.List + getConnectorAggregationBuilderList() { + return getConnectorAggregationFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation, + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.Builder, + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregationOrBuilder> + getConnectorAggregationFieldBuilder() { + if (connectorAggregationBuilder_ == null) { + connectorAggregationBuilder_ = + new com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation, + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation.Builder, + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregationOrBuilder>( + connectorAggregation_, + ((bitField0_ & 0x00000002) != 0), + getParentForChildren(), + isClean()); + connectorAggregation_ = null; + } + return connectorAggregationBuilder_; + } + + @java.lang.Override + public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.EVChargeOptions) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.EVChargeOptions) + private static final com.google.maps.places.v1.EVChargeOptions DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.EVChargeOptions(); + } + + public static com.google.maps.places.v1.EVChargeOptions getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public EVChargeOptions 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.maps.places.v1.EVChargeOptions getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/EVChargeOptionsOrBuilder.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/EVChargeOptionsOrBuilder.java new file mode 100644 index 000000000000..417824837e30 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/EVChargeOptionsOrBuilder.java @@ -0,0 +1,110 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/ev_charging.proto + +package com.google.maps.places.v1; + +public interface EVChargeOptionsOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.EVChargeOptions) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Number of connectors at this station. However, because some ports can have
+   * multiple connectors but only be able to charge one car at a time (e.g.) the
+   * number of connectors may be greater than the total number of cars which can
+   * charge simultaneously.
+   * 
+ * + * int32 connector_count = 1; + * + * @return The connectorCount. + */ + int getConnectorCount(); + + /** + * + * + *
+   * A list of EV charging connector aggregations that contain connectors of the
+   * same type and same charge rate.
+   * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + java.util.List + getConnectorAggregationList(); + /** + * + * + *
+   * A list of EV charging connector aggregations that contain connectors of the
+   * same type and same charge rate.
+   * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregation getConnectorAggregation(int index); + /** + * + * + *
+   * A list of EV charging connector aggregations that contain connectors of the
+   * same type and same charge rate.
+   * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + int getConnectorAggregationCount(); + /** + * + * + *
+   * A list of EV charging connector aggregations that contain connectors of the
+   * same type and same charge rate.
+   * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + java.util.List + getConnectorAggregationOrBuilderList(); + /** + * + * + *
+   * A list of EV charging connector aggregations that contain connectors of the
+   * same type and same charge rate.
+   * 
+ * + * + * repeated .google.maps.places.v1.EVChargeOptions.ConnectorAggregation connector_aggregation = 2; + * + */ + com.google.maps.places.v1.EVChargeOptions.ConnectorAggregationOrBuilder + getConnectorAggregationOrBuilder(int index); +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/EVConnectorType.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/EVConnectorType.java new file mode 100644 index 000000000000..645e4179b524 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/EVConnectorType.java @@ -0,0 +1,345 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/ev_charging.proto + +package com.google.maps.places.v1; + +/** + * + * + *
+ * See http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6872107 for
+ * additional information/context on EV charging connector types.
+ * 
+ * + * Protobuf enum {@code google.maps.places.v1.EVConnectorType} + */ +public enum EVConnectorType implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
+   * Unspecified connector.
+   * 
+ * + * EV_CONNECTOR_TYPE_UNSPECIFIED = 0; + */ + EV_CONNECTOR_TYPE_UNSPECIFIED(0), + /** + * + * + *
+   * Other connector types.
+   * 
+ * + * EV_CONNECTOR_TYPE_OTHER = 1; + */ + EV_CONNECTOR_TYPE_OTHER(1), + /** + * + * + *
+   * J1772 type 1 connector.
+   * 
+ * + * EV_CONNECTOR_TYPE_J1772 = 2; + */ + EV_CONNECTOR_TYPE_J1772(2), + /** + * + * + *
+   * IEC 62196 type 2 connector. Often referred to as MENNEKES.
+   * 
+ * + * EV_CONNECTOR_TYPE_TYPE_2 = 3; + */ + EV_CONNECTOR_TYPE_TYPE_2(3), + /** + * + * + *
+   * CHAdeMO type connector.
+   * 
+ * + * EV_CONNECTOR_TYPE_CHADEMO = 4; + */ + EV_CONNECTOR_TYPE_CHADEMO(4), + /** + * + * + *
+   * Combined Charging System (AC and DC). Based on SAE.
+   *  Type-1 J-1772 connector
+   * 
+ * + * EV_CONNECTOR_TYPE_CCS_COMBO_1 = 5; + */ + EV_CONNECTOR_TYPE_CCS_COMBO_1(5), + /** + * + * + *
+   * Combined Charging System (AC and DC). Based on Type-2
+   * Mennekes connector
+   * 
+ * + * EV_CONNECTOR_TYPE_CCS_COMBO_2 = 6; + */ + EV_CONNECTOR_TYPE_CCS_COMBO_2(6), + /** + * + * + *
+   * The generic TESLA connector. This is NACS in the North America but can be
+   * non-NACS in other parts of the world (e.g. CCS Combo 2 (CCS2) or GB/T).
+   * This value is less representative of an actual connector type, and more
+   * represents the ability to charge a Tesla brand vehicle at a Tesla owned
+   * charging station.
+   * 
+ * + * EV_CONNECTOR_TYPE_TESLA = 7; + */ + EV_CONNECTOR_TYPE_TESLA(7), + /** + * + * + *
+   * GB/T type corresponds to the GB/T standard in China. This type covers all
+   * GB_T types.
+   * 
+ * + * EV_CONNECTOR_TYPE_UNSPECIFIED_GB_T = 8; + */ + EV_CONNECTOR_TYPE_UNSPECIFIED_GB_T(8), + /** + * + * + *
+   * Unspecified wall outlet.
+   * 
+ * + * EV_CONNECTOR_TYPE_UNSPECIFIED_WALL_OUTLET = 9; + */ + EV_CONNECTOR_TYPE_UNSPECIFIED_WALL_OUTLET(9), + UNRECOGNIZED(-1), + ; + + /** + * + * + *
+   * Unspecified connector.
+   * 
+ * + * EV_CONNECTOR_TYPE_UNSPECIFIED = 0; + */ + public static final int EV_CONNECTOR_TYPE_UNSPECIFIED_VALUE = 0; + /** + * + * + *
+   * Other connector types.
+   * 
+ * + * EV_CONNECTOR_TYPE_OTHER = 1; + */ + public static final int EV_CONNECTOR_TYPE_OTHER_VALUE = 1; + /** + * + * + *
+   * J1772 type 1 connector.
+   * 
+ * + * EV_CONNECTOR_TYPE_J1772 = 2; + */ + public static final int EV_CONNECTOR_TYPE_J1772_VALUE = 2; + /** + * + * + *
+   * IEC 62196 type 2 connector. Often referred to as MENNEKES.
+   * 
+ * + * EV_CONNECTOR_TYPE_TYPE_2 = 3; + */ + public static final int EV_CONNECTOR_TYPE_TYPE_2_VALUE = 3; + /** + * + * + *
+   * CHAdeMO type connector.
+   * 
+ * + * EV_CONNECTOR_TYPE_CHADEMO = 4; + */ + public static final int EV_CONNECTOR_TYPE_CHADEMO_VALUE = 4; + /** + * + * + *
+   * Combined Charging System (AC and DC). Based on SAE.
+   *  Type-1 J-1772 connector
+   * 
+ * + * EV_CONNECTOR_TYPE_CCS_COMBO_1 = 5; + */ + public static final int EV_CONNECTOR_TYPE_CCS_COMBO_1_VALUE = 5; + /** + * + * + *
+   * Combined Charging System (AC and DC). Based on Type-2
+   * Mennekes connector
+   * 
+ * + * EV_CONNECTOR_TYPE_CCS_COMBO_2 = 6; + */ + public static final int EV_CONNECTOR_TYPE_CCS_COMBO_2_VALUE = 6; + /** + * + * + *
+   * The generic TESLA connector. This is NACS in the North America but can be
+   * non-NACS in other parts of the world (e.g. CCS Combo 2 (CCS2) or GB/T).
+   * This value is less representative of an actual connector type, and more
+   * represents the ability to charge a Tesla brand vehicle at a Tesla owned
+   * charging station.
+   * 
+ * + * EV_CONNECTOR_TYPE_TESLA = 7; + */ + public static final int EV_CONNECTOR_TYPE_TESLA_VALUE = 7; + /** + * + * + *
+   * GB/T type corresponds to the GB/T standard in China. This type covers all
+   * GB_T types.
+   * 
+ * + * EV_CONNECTOR_TYPE_UNSPECIFIED_GB_T = 8; + */ + public static final int EV_CONNECTOR_TYPE_UNSPECIFIED_GB_T_VALUE = 8; + /** + * + * + *
+   * Unspecified wall outlet.
+   * 
+ * + * EV_CONNECTOR_TYPE_UNSPECIFIED_WALL_OUTLET = 9; + */ + public static final int EV_CONNECTOR_TYPE_UNSPECIFIED_WALL_OUTLET_VALUE = 9; + + 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 EVConnectorType 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 EVConnectorType forNumber(int value) { + switch (value) { + case 0: + return EV_CONNECTOR_TYPE_UNSPECIFIED; + case 1: + return EV_CONNECTOR_TYPE_OTHER; + case 2: + return EV_CONNECTOR_TYPE_J1772; + case 3: + return EV_CONNECTOR_TYPE_TYPE_2; + case 4: + return EV_CONNECTOR_TYPE_CHADEMO; + case 5: + return EV_CONNECTOR_TYPE_CCS_COMBO_1; + case 6: + return EV_CONNECTOR_TYPE_CCS_COMBO_2; + case 7: + return EV_CONNECTOR_TYPE_TESLA; + case 8: + return EV_CONNECTOR_TYPE_UNSPECIFIED_GB_T; + case 9: + return EV_CONNECTOR_TYPE_UNSPECIFIED_WALL_OUTLET; + 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 EVConnectorType findValueByNumber(int number) { + return EVConnectorType.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 final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.maps.places.v1.EvChargingProto.getDescriptor().getEnumTypes().get(0); + } + + private static final EVConnectorType[] VALUES = values(); + + public static EVConnectorType 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 EVConnectorType(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:google.maps.places.v1.EVConnectorType) +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/EvChargingProto.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/EvChargingProto.java new file mode 100644 index 000000000000..1ad22746c5fd --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/EvChargingProto.java @@ -0,0 +1,108 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/ev_charging.proto + +package com.google.maps.places.v1; + +public final class EvChargingProto { + private EvChargingProto() {} + + public static void registerAllExtensions(com.google.protobuf.ExtensionRegistryLite registry) {} + + public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions((com.google.protobuf.ExtensionRegistryLite) registry); + } + + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_maps_places_v1_EVChargeOptions_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_maps_places_v1_EVChargeOptions_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_maps_places_v1_EVChargeOptions_ConnectorAggregation_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_maps_places_v1_EVChargeOptions_ConnectorAggregation_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + return descriptor; + } + + private static com.google.protobuf.Descriptors.FileDescriptor descriptor; + + static { + java.lang.String[] descriptorData = { + "\n\'google/maps/places/v1/ev_charging.prot" + + "o\022\025google.maps.places.v1\032\037google/protobu" + + "f/timestamp.proto\"\261\003\n\017EVChargeOptions\022\027\n" + + "\017connector_count\030\001 \001(\005\022Z\n\025connector_aggr" + + "egation\030\002 \003(\0132;.google.maps.places.v1.EV" + + "ChargeOptions.ConnectorAggregation\032\250\002\n\024C" + + "onnectorAggregation\0224\n\004type\030\001 \001(\0162&.goog" + + "le.maps.places.v1.EVConnectorType\022\032\n\022max" + + "_charge_rate_kw\030\002 \001(\001\022\r\n\005count\030\003 \001(\005\022\034\n\017" + + "available_count\030\004 \001(\005H\000\210\001\001\022!\n\024out_of_ser" + + "vice_count\030\005 \001(\005H\001\210\001\001\022A\n\035availability_la" + + "st_update_time\030\006 \001(\0132\032.google.protobuf.T" + + "imestampB\022\n\020_available_countB\027\n\025_out_of_" + + "service_count*\345\002\n\017EVConnectorType\022!\n\035EV_" + + "CONNECTOR_TYPE_UNSPECIFIED\020\000\022\033\n\027EV_CONNE" + + "CTOR_TYPE_OTHER\020\001\022\033\n\027EV_CONNECTOR_TYPE_J" + + "1772\020\002\022\034\n\030EV_CONNECTOR_TYPE_TYPE_2\020\003\022\035\n\031" + + "EV_CONNECTOR_TYPE_CHADEMO\020\004\022!\n\035EV_CONNEC" + + "TOR_TYPE_CCS_COMBO_1\020\005\022!\n\035EV_CONNECTOR_T" + + "YPE_CCS_COMBO_2\020\006\022\033\n\027EV_CONNECTOR_TYPE_T" + + "ESLA\020\007\022&\n\"EV_CONNECTOR_TYPE_UNSPECIFIED_" + + "GB_T\020\010\022-\n)EV_CONNECTOR_TYPE_UNSPECIFIED_" + + "WALL_OUTLET\020\tB\243\001\n\031com.google.maps.places" + + ".v1B\017EvChargingProtoP\001Z7cloud.google.com" + + "/go/maps/places/apiv1/placespb;placespb\370" + + "\001\001\242\002\006GMPSV1\252\002\025Google.Maps.Places.V1\312\002\025Go" + + "ogle\\Maps\\Places\\V1b\006proto3" + }; + descriptor = + com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( + descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + com.google.protobuf.TimestampProto.getDescriptor(), + }); + internal_static_google_maps_places_v1_EVChargeOptions_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_google_maps_places_v1_EVChargeOptions_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_EVChargeOptions_descriptor, + new java.lang.String[] { + "ConnectorCount", "ConnectorAggregation", + }); + internal_static_google_maps_places_v1_EVChargeOptions_ConnectorAggregation_descriptor = + internal_static_google_maps_places_v1_EVChargeOptions_descriptor.getNestedTypes().get(0); + internal_static_google_maps_places_v1_EVChargeOptions_ConnectorAggregation_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_EVChargeOptions_ConnectorAggregation_descriptor, + new java.lang.String[] { + "Type", + "MaxChargeRateKw", + "Count", + "AvailableCount", + "OutOfServiceCount", + "AvailabilityLastUpdateTime", + "AvailableCount", + "OutOfServiceCount", + }); + com.google.protobuf.TimestampProto.getDescriptor(); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/FuelOptions.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/FuelOptions.java new file mode 100644 index 000000000000..93dfe2f58a1a --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/FuelOptions.java @@ -0,0 +1,2669 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/fuel_options.proto + +package com.google.maps.places.v1; + +/** + * + * + *
+ * The most recent information about fuel options in a gas station. This
+ * information is updated regularly.
+ * 
+ * + * Protobuf type {@code google.maps.places.v1.FuelOptions} + */ +public final class FuelOptions extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.FuelOptions) + FuelOptionsOrBuilder { + private static final long serialVersionUID = 0L; + // Use FuelOptions.newBuilder() to construct. + private FuelOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private FuelOptions() { + fuelPrices_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new FuelOptions(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.FuelOptionsProto + .internal_static_google_maps_places_v1_FuelOptions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.FuelOptionsProto + .internal_static_google_maps_places_v1_FuelOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.FuelOptions.class, + com.google.maps.places.v1.FuelOptions.Builder.class); + } + + public interface FuelPriceOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.FuelOptions.FuelPrice) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+     * The type of fuel.
+     * 
+ * + * .google.maps.places.v1.FuelOptions.FuelPrice.FuelType type = 1; + * + * @return The enum numeric value on the wire for type. + */ + int getTypeValue(); + /** + * + * + *
+     * The type of fuel.
+     * 
+ * + * .google.maps.places.v1.FuelOptions.FuelPrice.FuelType type = 1; + * + * @return The type. + */ + com.google.maps.places.v1.FuelOptions.FuelPrice.FuelType getType(); + + /** + * + * + *
+     * The price of the fuel.
+     * 
+ * + * .google.type.Money price = 2; + * + * @return Whether the price field is set. + */ + boolean hasPrice(); + /** + * + * + *
+     * The price of the fuel.
+     * 
+ * + * .google.type.Money price = 2; + * + * @return The price. + */ + com.google.type.Money getPrice(); + /** + * + * + *
+     * The price of the fuel.
+     * 
+ * + * .google.type.Money price = 2; + */ + com.google.type.MoneyOrBuilder getPriceOrBuilder(); + + /** + * + * + *
+     * The time the fuel price was last updated.
+     * 
+ * + * .google.protobuf.Timestamp update_time = 3; + * + * @return Whether the updateTime field is set. + */ + boolean hasUpdateTime(); + /** + * + * + *
+     * The time the fuel price was last updated.
+     * 
+ * + * .google.protobuf.Timestamp update_time = 3; + * + * @return The updateTime. + */ + com.google.protobuf.Timestamp getUpdateTime(); + /** + * + * + *
+     * The time the fuel price was last updated.
+     * 
+ * + * .google.protobuf.Timestamp update_time = 3; + */ + com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder(); + } + /** + * + * + *
+   * Fuel price information for a given type.
+   * 
+ * + * Protobuf type {@code google.maps.places.v1.FuelOptions.FuelPrice} + */ + public static final class FuelPrice extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.FuelOptions.FuelPrice) + FuelPriceOrBuilder { + private static final long serialVersionUID = 0L; + // Use FuelPrice.newBuilder() to construct. + private FuelPrice(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private FuelPrice() { + type_ = 0; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new FuelPrice(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.FuelOptionsProto + .internal_static_google_maps_places_v1_FuelOptions_FuelPrice_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.FuelOptionsProto + .internal_static_google_maps_places_v1_FuelOptions_FuelPrice_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.FuelOptions.FuelPrice.class, + com.google.maps.places.v1.FuelOptions.FuelPrice.Builder.class); + } + + /** + * + * + *
+     * Types of fuel.
+     * 
+ * + * Protobuf enum {@code google.maps.places.v1.FuelOptions.FuelPrice.FuelType} + */ + public enum FuelType implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
+       * Unspecified fuel type.
+       * 
+ * + * FUEL_TYPE_UNSPECIFIED = 0; + */ + FUEL_TYPE_UNSPECIFIED(0), + /** + * + * + *
+       * Diesel fuel.
+       * 
+ * + * DIESEL = 1; + */ + DIESEL(1), + /** + * + * + *
+       * Regular unleaded.
+       * 
+ * + * REGULAR_UNLEADED = 2; + */ + REGULAR_UNLEADED(2), + /** + * + * + *
+       * Midgrade.
+       * 
+ * + * MIDGRADE = 3; + */ + MIDGRADE(3), + /** + * + * + *
+       * Premium.
+       * 
+ * + * PREMIUM = 4; + */ + PREMIUM(4), + /** + * + * + *
+       * SP 91.
+       * 
+ * + * SP91 = 5; + */ + SP91(5), + /** + * + * + *
+       * SP 91 E10.
+       * 
+ * + * SP91_E10 = 6; + */ + SP91_E10(6), + /** + * + * + *
+       * SP 92.
+       * 
+ * + * SP92 = 7; + */ + SP92(7), + /** + * + * + *
+       * SP 95.
+       * 
+ * + * SP95 = 8; + */ + SP95(8), + /** + * + * + *
+       * SP95 E10.
+       * 
+ * + * SP95_E10 = 9; + */ + SP95_E10(9), + /** + * + * + *
+       * SP 98.
+       * 
+ * + * SP98 = 10; + */ + SP98(10), + /** + * + * + *
+       * SP 99.
+       * 
+ * + * SP99 = 11; + */ + SP99(11), + /** + * + * + *
+       * SP 100.
+       * 
+ * + * SP100 = 12; + */ + SP100(12), + /** + * + * + *
+       * LPG.
+       * 
+ * + * LPG = 13; + */ + LPG(13), + /** + * + * + *
+       * E 80.
+       * 
+ * + * E80 = 14; + */ + E80(14), + /** + * + * + *
+       * E 85.
+       * 
+ * + * E85 = 15; + */ + E85(15), + /** + * + * + *
+       * Methane.
+       * 
+ * + * METHANE = 16; + */ + METHANE(16), + /** + * + * + *
+       * Bio-diesel.
+       * 
+ * + * BIO_DIESEL = 17; + */ + BIO_DIESEL(17), + /** + * + * + *
+       * Truck diesel.
+       * 
+ * + * TRUCK_DIESEL = 18; + */ + TRUCK_DIESEL(18), + UNRECOGNIZED(-1), + ; + + /** + * + * + *
+       * Unspecified fuel type.
+       * 
+ * + * FUEL_TYPE_UNSPECIFIED = 0; + */ + public static final int FUEL_TYPE_UNSPECIFIED_VALUE = 0; + /** + * + * + *
+       * Diesel fuel.
+       * 
+ * + * DIESEL = 1; + */ + public static final int DIESEL_VALUE = 1; + /** + * + * + *
+       * Regular unleaded.
+       * 
+ * + * REGULAR_UNLEADED = 2; + */ + public static final int REGULAR_UNLEADED_VALUE = 2; + /** + * + * + *
+       * Midgrade.
+       * 
+ * + * MIDGRADE = 3; + */ + public static final int MIDGRADE_VALUE = 3; + /** + * + * + *
+       * Premium.
+       * 
+ * + * PREMIUM = 4; + */ + public static final int PREMIUM_VALUE = 4; + /** + * + * + *
+       * SP 91.
+       * 
+ * + * SP91 = 5; + */ + public static final int SP91_VALUE = 5; + /** + * + * + *
+       * SP 91 E10.
+       * 
+ * + * SP91_E10 = 6; + */ + public static final int SP91_E10_VALUE = 6; + /** + * + * + *
+       * SP 92.
+       * 
+ * + * SP92 = 7; + */ + public static final int SP92_VALUE = 7; + /** + * + * + *
+       * SP 95.
+       * 
+ * + * SP95 = 8; + */ + public static final int SP95_VALUE = 8; + /** + * + * + *
+       * SP95 E10.
+       * 
+ * + * SP95_E10 = 9; + */ + public static final int SP95_E10_VALUE = 9; + /** + * + * + *
+       * SP 98.
+       * 
+ * + * SP98 = 10; + */ + public static final int SP98_VALUE = 10; + /** + * + * + *
+       * SP 99.
+       * 
+ * + * SP99 = 11; + */ + public static final int SP99_VALUE = 11; + /** + * + * + *
+       * SP 100.
+       * 
+ * + * SP100 = 12; + */ + public static final int SP100_VALUE = 12; + /** + * + * + *
+       * LPG.
+       * 
+ * + * LPG = 13; + */ + public static final int LPG_VALUE = 13; + /** + * + * + *
+       * E 80.
+       * 
+ * + * E80 = 14; + */ + public static final int E80_VALUE = 14; + /** + * + * + *
+       * E 85.
+       * 
+ * + * E85 = 15; + */ + public static final int E85_VALUE = 15; + /** + * + * + *
+       * Methane.
+       * 
+ * + * METHANE = 16; + */ + public static final int METHANE_VALUE = 16; + /** + * + * + *
+       * Bio-diesel.
+       * 
+ * + * BIO_DIESEL = 17; + */ + public static final int BIO_DIESEL_VALUE = 17; + /** + * + * + *
+       * Truck diesel.
+       * 
+ * + * TRUCK_DIESEL = 18; + */ + public static final int TRUCK_DIESEL_VALUE = 18; + + 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 FuelType 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 FuelType forNumber(int value) { + switch (value) { + case 0: + return FUEL_TYPE_UNSPECIFIED; + case 1: + return DIESEL; + case 2: + return REGULAR_UNLEADED; + case 3: + return MIDGRADE; + case 4: + return PREMIUM; + case 5: + return SP91; + case 6: + return SP91_E10; + case 7: + return SP92; + case 8: + return SP95; + case 9: + return SP95_E10; + case 10: + return SP98; + case 11: + return SP99; + case 12: + return SP100; + case 13: + return LPG; + case 14: + return E80; + case 15: + return E85; + case 16: + return METHANE; + case 17: + return BIO_DIESEL; + case 18: + return TRUCK_DIESEL; + 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 FuelType findValueByNumber(int number) { + return FuelType.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 final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.maps.places.v1.FuelOptions.FuelPrice.getDescriptor() + .getEnumTypes() + .get(0); + } + + private static final FuelType[] VALUES = values(); + + public static FuelType 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 FuelType(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:google.maps.places.v1.FuelOptions.FuelPrice.FuelType) + } + + public static final int TYPE_FIELD_NUMBER = 1; + private int type_ = 0; + /** + * + * + *
+     * The type of fuel.
+     * 
+ * + * .google.maps.places.v1.FuelOptions.FuelPrice.FuelType type = 1; + * + * @return The enum numeric value on the wire for type. + */ + @java.lang.Override + public int getTypeValue() { + return type_; + } + /** + * + * + *
+     * The type of fuel.
+     * 
+ * + * .google.maps.places.v1.FuelOptions.FuelPrice.FuelType type = 1; + * + * @return The type. + */ + @java.lang.Override + public com.google.maps.places.v1.FuelOptions.FuelPrice.FuelType getType() { + com.google.maps.places.v1.FuelOptions.FuelPrice.FuelType result = + com.google.maps.places.v1.FuelOptions.FuelPrice.FuelType.forNumber(type_); + return result == null + ? com.google.maps.places.v1.FuelOptions.FuelPrice.FuelType.UNRECOGNIZED + : result; + } + + public static final int PRICE_FIELD_NUMBER = 2; + private com.google.type.Money price_; + /** + * + * + *
+     * The price of the fuel.
+     * 
+ * + * .google.type.Money price = 2; + * + * @return Whether the price field is set. + */ + @java.lang.Override + public boolean hasPrice() { + return price_ != null; + } + /** + * + * + *
+     * The price of the fuel.
+     * 
+ * + * .google.type.Money price = 2; + * + * @return The price. + */ + @java.lang.Override + public com.google.type.Money getPrice() { + return price_ == null ? com.google.type.Money.getDefaultInstance() : price_; + } + /** + * + * + *
+     * The price of the fuel.
+     * 
+ * + * .google.type.Money price = 2; + */ + @java.lang.Override + public com.google.type.MoneyOrBuilder getPriceOrBuilder() { + return price_ == null ? com.google.type.Money.getDefaultInstance() : price_; + } + + public static final int UPDATE_TIME_FIELD_NUMBER = 3; + private com.google.protobuf.Timestamp updateTime_; + /** + * + * + *
+     * The time the fuel price was last updated.
+     * 
+ * + * .google.protobuf.Timestamp update_time = 3; + * + * @return Whether the updateTime field is set. + */ + @java.lang.Override + public boolean hasUpdateTime() { + return updateTime_ != null; + } + /** + * + * + *
+     * The time the fuel price was last updated.
+     * 
+ * + * .google.protobuf.Timestamp update_time = 3; + * + * @return The updateTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getUpdateTime() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + /** + * + * + *
+     * The time the fuel price was last updated.
+     * 
+ * + * .google.protobuf.Timestamp update_time = 3; + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + 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 (type_ + != com.google.maps.places.v1.FuelOptions.FuelPrice.FuelType.FUEL_TYPE_UNSPECIFIED + .getNumber()) { + output.writeEnum(1, type_); + } + if (price_ != null) { + output.writeMessage(2, getPrice()); + } + if (updateTime_ != null) { + output.writeMessage(3, getUpdateTime()); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (type_ + != com.google.maps.places.v1.FuelOptions.FuelPrice.FuelType.FUEL_TYPE_UNSPECIFIED + .getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(1, type_); + } + if (price_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getPrice()); + } + if (updateTime_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, getUpdateTime()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.maps.places.v1.FuelOptions.FuelPrice)) { + return super.equals(obj); + } + com.google.maps.places.v1.FuelOptions.FuelPrice other = + (com.google.maps.places.v1.FuelOptions.FuelPrice) obj; + + if (type_ != other.type_) return false; + if (hasPrice() != other.hasPrice()) return false; + if (hasPrice()) { + if (!getPrice().equals(other.getPrice())) return false; + } + if (hasUpdateTime() != other.hasUpdateTime()) return false; + if (hasUpdateTime()) { + if (!getUpdateTime().equals(other.getUpdateTime())) 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) + TYPE_FIELD_NUMBER; + hash = (53 * hash) + type_; + if (hasPrice()) { + hash = (37 * hash) + PRICE_FIELD_NUMBER; + hash = (53 * hash) + getPrice().hashCode(); + } + if (hasUpdateTime()) { + hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getUpdateTime().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.FuelOptions.FuelPrice parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.FuelOptions.FuelPrice parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.FuelOptions.FuelPrice parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.FuelOptions.FuelPrice parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.FuelOptions.FuelPrice parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.FuelOptions.FuelPrice parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.FuelOptions.FuelPrice parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.FuelOptions.FuelPrice parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.FuelOptions.FuelPrice parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.FuelOptions.FuelPrice parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.FuelOptions.FuelPrice parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.FuelOptions.FuelPrice parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.maps.places.v1.FuelOptions.FuelPrice 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+     * Fuel price information for a given type.
+     * 
+ * + * Protobuf type {@code google.maps.places.v1.FuelOptions.FuelPrice} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.FuelOptions.FuelPrice) + com.google.maps.places.v1.FuelOptions.FuelPriceOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.FuelOptionsProto + .internal_static_google_maps_places_v1_FuelOptions_FuelPrice_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.FuelOptionsProto + .internal_static_google_maps_places_v1_FuelOptions_FuelPrice_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.FuelOptions.FuelPrice.class, + com.google.maps.places.v1.FuelOptions.FuelPrice.Builder.class); + } + + // Construct using com.google.maps.places.v1.FuelOptions.FuelPrice.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + type_ = 0; + price_ = null; + if (priceBuilder_ != null) { + priceBuilder_.dispose(); + priceBuilder_ = null; + } + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.FuelOptionsProto + .internal_static_google_maps_places_v1_FuelOptions_FuelPrice_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.FuelOptions.FuelPrice getDefaultInstanceForType() { + return com.google.maps.places.v1.FuelOptions.FuelPrice.getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.FuelOptions.FuelPrice build() { + com.google.maps.places.v1.FuelOptions.FuelPrice result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.FuelOptions.FuelPrice buildPartial() { + com.google.maps.places.v1.FuelOptions.FuelPrice result = + new com.google.maps.places.v1.FuelOptions.FuelPrice(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.maps.places.v1.FuelOptions.FuelPrice result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.type_ = type_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.price_ = priceBuilder_ == null ? price_ : priceBuilder_.build(); + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.updateTime_ = + updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build(); + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.FuelOptions.FuelPrice) { + return mergeFrom((com.google.maps.places.v1.FuelOptions.FuelPrice) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.maps.places.v1.FuelOptions.FuelPrice other) { + if (other == com.google.maps.places.v1.FuelOptions.FuelPrice.getDefaultInstance()) + return this; + if (other.type_ != 0) { + setTypeValue(other.getTypeValue()); + } + if (other.hasPrice()) { + mergePrice(other.getPrice()); + } + if (other.hasUpdateTime()) { + mergeUpdateTime(other.getUpdateTime()); + } + 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: + { + type_ = input.readEnum(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: + { + input.readMessage(getPriceFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + input.readMessage(getUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); + 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 int type_ = 0; + /** + * + * + *
+       * The type of fuel.
+       * 
+ * + * .google.maps.places.v1.FuelOptions.FuelPrice.FuelType type = 1; + * + * @return The enum numeric value on the wire for type. + */ + @java.lang.Override + public int getTypeValue() { + return type_; + } + /** + * + * + *
+       * The type of fuel.
+       * 
+ * + * .google.maps.places.v1.FuelOptions.FuelPrice.FuelType type = 1; + * + * @param value The enum numeric value on the wire for type to set. + * @return This builder for chaining. + */ + public Builder setTypeValue(int value) { + type_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+       * The type of fuel.
+       * 
+ * + * .google.maps.places.v1.FuelOptions.FuelPrice.FuelType type = 1; + * + * @return The type. + */ + @java.lang.Override + public com.google.maps.places.v1.FuelOptions.FuelPrice.FuelType getType() { + com.google.maps.places.v1.FuelOptions.FuelPrice.FuelType result = + com.google.maps.places.v1.FuelOptions.FuelPrice.FuelType.forNumber(type_); + return result == null + ? com.google.maps.places.v1.FuelOptions.FuelPrice.FuelType.UNRECOGNIZED + : result; + } + /** + * + * + *
+       * The type of fuel.
+       * 
+ * + * .google.maps.places.v1.FuelOptions.FuelPrice.FuelType type = 1; + * + * @param value The type to set. + * @return This builder for chaining. + */ + public Builder setType(com.google.maps.places.v1.FuelOptions.FuelPrice.FuelType value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000001; + type_ = value.getNumber(); + onChanged(); + return this; + } + /** + * + * + *
+       * The type of fuel.
+       * 
+ * + * .google.maps.places.v1.FuelOptions.FuelPrice.FuelType type = 1; + * + * @return This builder for chaining. + */ + public Builder clearType() { + bitField0_ = (bitField0_ & ~0x00000001); + type_ = 0; + onChanged(); + return this; + } + + private com.google.type.Money price_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.Money, com.google.type.Money.Builder, com.google.type.MoneyOrBuilder> + priceBuilder_; + /** + * + * + *
+       * The price of the fuel.
+       * 
+ * + * .google.type.Money price = 2; + * + * @return Whether the price field is set. + */ + public boolean hasPrice() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * + * + *
+       * The price of the fuel.
+       * 
+ * + * .google.type.Money price = 2; + * + * @return The price. + */ + public com.google.type.Money getPrice() { + if (priceBuilder_ == null) { + return price_ == null ? com.google.type.Money.getDefaultInstance() : price_; + } else { + return priceBuilder_.getMessage(); + } + } + /** + * + * + *
+       * The price of the fuel.
+       * 
+ * + * .google.type.Money price = 2; + */ + public Builder setPrice(com.google.type.Money value) { + if (priceBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + price_ = value; + } else { + priceBuilder_.setMessage(value); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * + * + *
+       * The price of the fuel.
+       * 
+ * + * .google.type.Money price = 2; + */ + public Builder setPrice(com.google.type.Money.Builder builderForValue) { + if (priceBuilder_ == null) { + price_ = builderForValue.build(); + } else { + priceBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * + * + *
+       * The price of the fuel.
+       * 
+ * + * .google.type.Money price = 2; + */ + public Builder mergePrice(com.google.type.Money value) { + if (priceBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0) + && price_ != null + && price_ != com.google.type.Money.getDefaultInstance()) { + getPriceBuilder().mergeFrom(value); + } else { + price_ = value; + } + } else { + priceBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * + * + *
+       * The price of the fuel.
+       * 
+ * + * .google.type.Money price = 2; + */ + public Builder clearPrice() { + bitField0_ = (bitField0_ & ~0x00000002); + price_ = null; + if (priceBuilder_ != null) { + priceBuilder_.dispose(); + priceBuilder_ = null; + } + onChanged(); + return this; + } + /** + * + * + *
+       * The price of the fuel.
+       * 
+ * + * .google.type.Money price = 2; + */ + public com.google.type.Money.Builder getPriceBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return getPriceFieldBuilder().getBuilder(); + } + /** + * + * + *
+       * The price of the fuel.
+       * 
+ * + * .google.type.Money price = 2; + */ + public com.google.type.MoneyOrBuilder getPriceOrBuilder() { + if (priceBuilder_ != null) { + return priceBuilder_.getMessageOrBuilder(); + } else { + return price_ == null ? com.google.type.Money.getDefaultInstance() : price_; + } + } + /** + * + * + *
+       * The price of the fuel.
+       * 
+ * + * .google.type.Money price = 2; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.Money, com.google.type.Money.Builder, com.google.type.MoneyOrBuilder> + getPriceFieldBuilder() { + if (priceBuilder_ == null) { + priceBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.type.Money, + com.google.type.Money.Builder, + com.google.type.MoneyOrBuilder>(getPrice(), getParentForChildren(), isClean()); + price_ = null; + } + return priceBuilder_; + } + + private com.google.protobuf.Timestamp updateTime_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + updateTimeBuilder_; + /** + * + * + *
+       * The time the fuel price was last updated.
+       * 
+ * + * .google.protobuf.Timestamp update_time = 3; + * + * @return Whether the updateTime field is set. + */ + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * + * + *
+       * The time the fuel price was last updated.
+       * 
+ * + * .google.protobuf.Timestamp update_time = 3; + * + * @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(); + } + } + /** + * + * + *
+       * The time the fuel price was last updated.
+       * 
+ * + * .google.protobuf.Timestamp update_time = 3; + */ + public Builder setUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + updateTime_ = value; + } else { + updateTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+       * The time the fuel price was last updated.
+       * 
+ * + * .google.protobuf.Timestamp update_time = 3; + */ + public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (updateTimeBuilder_ == null) { + updateTime_ = builderForValue.build(); + } else { + updateTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+       * The time the fuel price was last updated.
+       * 
+ * + * .google.protobuf.Timestamp update_time = 3; + */ + public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0) + && updateTime_ != null + && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getUpdateTimeBuilder().mergeFrom(value); + } else { + updateTime_ = value; + } + } else { + updateTimeBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+       * The time the fuel price was last updated.
+       * 
+ * + * .google.protobuf.Timestamp update_time = 3; + */ + public Builder clearUpdateTime() { + bitField0_ = (bitField0_ & ~0x00000004); + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; + } + onChanged(); + return this; + } + /** + * + * + *
+       * The time the fuel price was last updated.
+       * 
+ * + * .google.protobuf.Timestamp update_time = 3; + */ + public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { + bitField0_ |= 0x00000004; + onChanged(); + return getUpdateTimeFieldBuilder().getBuilder(); + } + /** + * + * + *
+       * The time the fuel price was last updated.
+       * 
+ * + * .google.protobuf.Timestamp update_time = 3; + */ + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + if (updateTimeBuilder_ != null) { + return updateTimeBuilder_.getMessageOrBuilder(); + } else { + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; + } + } + /** + * + * + *
+       * The time the fuel price was last updated.
+       * 
+ * + * .google.protobuf.Timestamp update_time = 3; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + getUpdateTimeFieldBuilder() { + if (updateTimeBuilder_ == null) { + updateTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getUpdateTime(), getParentForChildren(), isClean()); + updateTime_ = null; + } + return updateTimeBuilder_; + } + + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.FuelOptions.FuelPrice) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.FuelOptions.FuelPrice) + private static final com.google.maps.places.v1.FuelOptions.FuelPrice DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.FuelOptions.FuelPrice(); + } + + public static com.google.maps.places.v1.FuelOptions.FuelPrice getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public FuelPrice 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.maps.places.v1.FuelOptions.FuelPrice getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public static final int FUEL_PRICES_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private java.util.List fuelPrices_; + /** + * + * + *
+   * The last known fuel price for each type of fuel this station has. There is
+   * one entry per fuel type this station has. Order is not important.
+   * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + @java.lang.Override + public java.util.List getFuelPricesList() { + return fuelPrices_; + } + /** + * + * + *
+   * The last known fuel price for each type of fuel this station has. There is
+   * one entry per fuel type this station has. Order is not important.
+   * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + @java.lang.Override + public java.util.List + getFuelPricesOrBuilderList() { + return fuelPrices_; + } + /** + * + * + *
+   * The last known fuel price for each type of fuel this station has. There is
+   * one entry per fuel type this station has. Order is not important.
+   * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + @java.lang.Override + public int getFuelPricesCount() { + return fuelPrices_.size(); + } + /** + * + * + *
+   * The last known fuel price for each type of fuel this station has. There is
+   * one entry per fuel type this station has. Order is not important.
+   * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + @java.lang.Override + public com.google.maps.places.v1.FuelOptions.FuelPrice getFuelPrices(int index) { + return fuelPrices_.get(index); + } + /** + * + * + *
+   * The last known fuel price for each type of fuel this station has. There is
+   * one entry per fuel type this station has. Order is not important.
+   * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + @java.lang.Override + public com.google.maps.places.v1.FuelOptions.FuelPriceOrBuilder getFuelPricesOrBuilder( + int index) { + return fuelPrices_.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 < fuelPrices_.size(); i++) { + output.writeMessage(1, fuelPrices_.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 < fuelPrices_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, fuelPrices_.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.maps.places.v1.FuelOptions)) { + return super.equals(obj); + } + com.google.maps.places.v1.FuelOptions other = (com.google.maps.places.v1.FuelOptions) obj; + + if (!getFuelPricesList().equals(other.getFuelPricesList())) 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 (getFuelPricesCount() > 0) { + hash = (37 * hash) + FUEL_PRICES_FIELD_NUMBER; + hash = (53 * hash) + getFuelPricesList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.FuelOptions parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.FuelOptions parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.FuelOptions parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.FuelOptions parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.FuelOptions parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.FuelOptions parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.FuelOptions parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.FuelOptions parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.FuelOptions parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.FuelOptions parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.FuelOptions parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.FuelOptions parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.maps.places.v1.FuelOptions 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+   * The most recent information about fuel options in a gas station. This
+   * information is updated regularly.
+   * 
+ * + * Protobuf type {@code google.maps.places.v1.FuelOptions} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.FuelOptions) + com.google.maps.places.v1.FuelOptionsOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.FuelOptionsProto + .internal_static_google_maps_places_v1_FuelOptions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.FuelOptionsProto + .internal_static_google_maps_places_v1_FuelOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.FuelOptions.class, + com.google.maps.places.v1.FuelOptions.Builder.class); + } + + // Construct using com.google.maps.places.v1.FuelOptions.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (fuelPricesBuilder_ == null) { + fuelPrices_ = java.util.Collections.emptyList(); + } else { + fuelPrices_ = null; + fuelPricesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.FuelOptionsProto + .internal_static_google_maps_places_v1_FuelOptions_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.FuelOptions getDefaultInstanceForType() { + return com.google.maps.places.v1.FuelOptions.getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.FuelOptions build() { + com.google.maps.places.v1.FuelOptions result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.FuelOptions buildPartial() { + com.google.maps.places.v1.FuelOptions result = + new com.google.maps.places.v1.FuelOptions(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(com.google.maps.places.v1.FuelOptions result) { + if (fuelPricesBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + fuelPrices_ = java.util.Collections.unmodifiableList(fuelPrices_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.fuelPrices_ = fuelPrices_; + } else { + result.fuelPrices_ = fuelPricesBuilder_.build(); + } + } + + private void buildPartial0(com.google.maps.places.v1.FuelOptions result) { + int from_bitField0_ = bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.FuelOptions) { + return mergeFrom((com.google.maps.places.v1.FuelOptions) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.maps.places.v1.FuelOptions other) { + if (other == com.google.maps.places.v1.FuelOptions.getDefaultInstance()) return this; + if (fuelPricesBuilder_ == null) { + if (!other.fuelPrices_.isEmpty()) { + if (fuelPrices_.isEmpty()) { + fuelPrices_ = other.fuelPrices_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureFuelPricesIsMutable(); + fuelPrices_.addAll(other.fuelPrices_); + } + onChanged(); + } + } else { + if (!other.fuelPrices_.isEmpty()) { + if (fuelPricesBuilder_.isEmpty()) { + fuelPricesBuilder_.dispose(); + fuelPricesBuilder_ = null; + fuelPrices_ = other.fuelPrices_; + bitField0_ = (bitField0_ & ~0x00000001); + fuelPricesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders + ? getFuelPricesFieldBuilder() + : null; + } else { + fuelPricesBuilder_.addAllMessages(other.fuelPrices_); + } + } + } + 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.maps.places.v1.FuelOptions.FuelPrice m = + input.readMessage( + com.google.maps.places.v1.FuelOptions.FuelPrice.parser(), + extensionRegistry); + if (fuelPricesBuilder_ == null) { + ensureFuelPricesIsMutable(); + fuelPrices_.add(m); + } else { + fuelPricesBuilder_.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 fuelPrices_ = + java.util.Collections.emptyList(); + + private void ensureFuelPricesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + fuelPrices_ = + new java.util.ArrayList(fuelPrices_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.FuelOptions.FuelPrice, + com.google.maps.places.v1.FuelOptions.FuelPrice.Builder, + com.google.maps.places.v1.FuelOptions.FuelPriceOrBuilder> + fuelPricesBuilder_; + + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public java.util.List getFuelPricesList() { + if (fuelPricesBuilder_ == null) { + return java.util.Collections.unmodifiableList(fuelPrices_); + } else { + return fuelPricesBuilder_.getMessageList(); + } + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public int getFuelPricesCount() { + if (fuelPricesBuilder_ == null) { + return fuelPrices_.size(); + } else { + return fuelPricesBuilder_.getCount(); + } + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public com.google.maps.places.v1.FuelOptions.FuelPrice getFuelPrices(int index) { + if (fuelPricesBuilder_ == null) { + return fuelPrices_.get(index); + } else { + return fuelPricesBuilder_.getMessage(index); + } + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public Builder setFuelPrices(int index, com.google.maps.places.v1.FuelOptions.FuelPrice value) { + if (fuelPricesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureFuelPricesIsMutable(); + fuelPrices_.set(index, value); + onChanged(); + } else { + fuelPricesBuilder_.setMessage(index, value); + } + return this; + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public Builder setFuelPrices( + int index, com.google.maps.places.v1.FuelOptions.FuelPrice.Builder builderForValue) { + if (fuelPricesBuilder_ == null) { + ensureFuelPricesIsMutable(); + fuelPrices_.set(index, builderForValue.build()); + onChanged(); + } else { + fuelPricesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public Builder addFuelPrices(com.google.maps.places.v1.FuelOptions.FuelPrice value) { + if (fuelPricesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureFuelPricesIsMutable(); + fuelPrices_.add(value); + onChanged(); + } else { + fuelPricesBuilder_.addMessage(value); + } + return this; + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public Builder addFuelPrices(int index, com.google.maps.places.v1.FuelOptions.FuelPrice value) { + if (fuelPricesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureFuelPricesIsMutable(); + fuelPrices_.add(index, value); + onChanged(); + } else { + fuelPricesBuilder_.addMessage(index, value); + } + return this; + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public Builder addFuelPrices( + com.google.maps.places.v1.FuelOptions.FuelPrice.Builder builderForValue) { + if (fuelPricesBuilder_ == null) { + ensureFuelPricesIsMutable(); + fuelPrices_.add(builderForValue.build()); + onChanged(); + } else { + fuelPricesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public Builder addFuelPrices( + int index, com.google.maps.places.v1.FuelOptions.FuelPrice.Builder builderForValue) { + if (fuelPricesBuilder_ == null) { + ensureFuelPricesIsMutable(); + fuelPrices_.add(index, builderForValue.build()); + onChanged(); + } else { + fuelPricesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public Builder addAllFuelPrices( + java.lang.Iterable values) { + if (fuelPricesBuilder_ == null) { + ensureFuelPricesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, fuelPrices_); + onChanged(); + } else { + fuelPricesBuilder_.addAllMessages(values); + } + return this; + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public Builder clearFuelPrices() { + if (fuelPricesBuilder_ == null) { + fuelPrices_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + fuelPricesBuilder_.clear(); + } + return this; + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public Builder removeFuelPrices(int index) { + if (fuelPricesBuilder_ == null) { + ensureFuelPricesIsMutable(); + fuelPrices_.remove(index); + onChanged(); + } else { + fuelPricesBuilder_.remove(index); + } + return this; + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public com.google.maps.places.v1.FuelOptions.FuelPrice.Builder getFuelPricesBuilder(int index) { + return getFuelPricesFieldBuilder().getBuilder(index); + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public com.google.maps.places.v1.FuelOptions.FuelPriceOrBuilder getFuelPricesOrBuilder( + int index) { + if (fuelPricesBuilder_ == null) { + return fuelPrices_.get(index); + } else { + return fuelPricesBuilder_.getMessageOrBuilder(index); + } + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public java.util.List + getFuelPricesOrBuilderList() { + if (fuelPricesBuilder_ != null) { + return fuelPricesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(fuelPrices_); + } + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public com.google.maps.places.v1.FuelOptions.FuelPrice.Builder addFuelPricesBuilder() { + return getFuelPricesFieldBuilder() + .addBuilder(com.google.maps.places.v1.FuelOptions.FuelPrice.getDefaultInstance()); + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public com.google.maps.places.v1.FuelOptions.FuelPrice.Builder addFuelPricesBuilder(int index) { + return getFuelPricesFieldBuilder() + .addBuilder(index, com.google.maps.places.v1.FuelOptions.FuelPrice.getDefaultInstance()); + } + /** + * + * + *
+     * The last known fuel price for each type of fuel this station has. There is
+     * one entry per fuel type this station has. Order is not important.
+     * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + public java.util.List + getFuelPricesBuilderList() { + return getFuelPricesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.FuelOptions.FuelPrice, + com.google.maps.places.v1.FuelOptions.FuelPrice.Builder, + com.google.maps.places.v1.FuelOptions.FuelPriceOrBuilder> + getFuelPricesFieldBuilder() { + if (fuelPricesBuilder_ == null) { + fuelPricesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.FuelOptions.FuelPrice, + com.google.maps.places.v1.FuelOptions.FuelPrice.Builder, + com.google.maps.places.v1.FuelOptions.FuelPriceOrBuilder>( + fuelPrices_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); + fuelPrices_ = null; + } + return fuelPricesBuilder_; + } + + @java.lang.Override + public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.FuelOptions) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.FuelOptions) + private static final com.google.maps.places.v1.FuelOptions DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.FuelOptions(); + } + + public static com.google.maps.places.v1.FuelOptions getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public FuelOptions 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.maps.places.v1.FuelOptions getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/FuelOptionsOrBuilder.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/FuelOptionsOrBuilder.java new file mode 100644 index 000000000000..bbe32f72873d --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/FuelOptionsOrBuilder.java @@ -0,0 +1,82 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/fuel_options.proto + +package com.google.maps.places.v1; + +public interface FuelOptionsOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.FuelOptions) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * The last known fuel price for each type of fuel this station has. There is
+   * one entry per fuel type this station has. Order is not important.
+   * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + java.util.List getFuelPricesList(); + /** + * + * + *
+   * The last known fuel price for each type of fuel this station has. There is
+   * one entry per fuel type this station has. Order is not important.
+   * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + com.google.maps.places.v1.FuelOptions.FuelPrice getFuelPrices(int index); + /** + * + * + *
+   * The last known fuel price for each type of fuel this station has. There is
+   * one entry per fuel type this station has. Order is not important.
+   * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + int getFuelPricesCount(); + /** + * + * + *
+   * The last known fuel price for each type of fuel this station has. There is
+   * one entry per fuel type this station has. Order is not important.
+   * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + java.util.List + getFuelPricesOrBuilderList(); + /** + * + * + *
+   * The last known fuel price for each type of fuel this station has. There is
+   * one entry per fuel type this station has. Order is not important.
+   * 
+ * + * repeated .google.maps.places.v1.FuelOptions.FuelPrice fuel_prices = 1; + */ + com.google.maps.places.v1.FuelOptions.FuelPriceOrBuilder getFuelPricesOrBuilder(int index); +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/FuelOptionsProto.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/FuelOptionsProto.java new file mode 100644 index 000000000000..a0d237782066 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/FuelOptionsProto.java @@ -0,0 +1,97 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/fuel_options.proto + +package com.google.maps.places.v1; + +public final class FuelOptionsProto { + private FuelOptionsProto() {} + + public static void registerAllExtensions(com.google.protobuf.ExtensionRegistryLite registry) {} + + public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions((com.google.protobuf.ExtensionRegistryLite) registry); + } + + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_maps_places_v1_FuelOptions_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_maps_places_v1_FuelOptions_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_maps_places_v1_FuelOptions_FuelPrice_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_maps_places_v1_FuelOptions_FuelPrice_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + return descriptor; + } + + private static com.google.protobuf.Descriptors.FileDescriptor descriptor; + + static { + java.lang.String[] descriptorData = { + "\n(google/maps/places/v1/fuel_options.pro" + + "to\022\025google.maps.places.v1\032\037google/protob" + + "uf/timestamp.proto\032\027google/type/money.pr" + + "oto\"\377\003\n\013FuelOptions\022A\n\013fuel_prices\030\001 \003(\013" + + "2,.google.maps.places.v1.FuelOptions.Fue" + + "lPrice\032\254\003\n\tFuelPrice\022C\n\004type\030\001 \001(\01625.goo" + + "gle.maps.places.v1.FuelOptions.FuelPrice" + + ".FuelType\022!\n\005price\030\002 \001(\0132\022.google.type.M" + + "oney\022/\n\013update_time\030\003 \001(\0132\032.google.proto" + + "buf.Timestamp\"\205\002\n\010FuelType\022\031\n\025FUEL_TYPE_" + + "UNSPECIFIED\020\000\022\n\n\006DIESEL\020\001\022\024\n\020REGULAR_UNL" + + "EADED\020\002\022\014\n\010MIDGRADE\020\003\022\013\n\007PREMIUM\020\004\022\010\n\004SP" + + "91\020\005\022\014\n\010SP91_E10\020\006\022\010\n\004SP92\020\007\022\010\n\004SP95\020\010\022\014" + + "\n\010SP95_E10\020\t\022\010\n\004SP98\020\n\022\010\n\004SP99\020\013\022\t\n\005SP10" + + "0\020\014\022\007\n\003LPG\020\r\022\007\n\003E80\020\016\022\007\n\003E85\020\017\022\013\n\007METHAN" + + "E\020\020\022\016\n\nBIO_DIESEL\020\021\022\020\n\014TRUCK_DIESEL\020\022B\244\001" + + "\n\031com.google.maps.places.v1B\020FuelOptions" + + "ProtoP\001Z7cloud.google.com/go/maps/places" + + "/apiv1/placespb;placespb\370\001\001\242\002\006GMPSV1\252\002\025G" + + "oogle.Maps.Places.V1\312\002\025Google\\Maps\\Place" + + "s\\V1b\006proto3" + }; + descriptor = + com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( + descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + com.google.protobuf.TimestampProto.getDescriptor(), + com.google.type.MoneyProto.getDescriptor(), + }); + internal_static_google_maps_places_v1_FuelOptions_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_google_maps_places_v1_FuelOptions_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_FuelOptions_descriptor, + new java.lang.String[] { + "FuelPrices", + }); + internal_static_google_maps_places_v1_FuelOptions_FuelPrice_descriptor = + internal_static_google_maps_places_v1_FuelOptions_descriptor.getNestedTypes().get(0); + internal_static_google_maps_places_v1_FuelOptions_FuelPrice_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_FuelOptions_FuelPrice_descriptor, + new java.lang.String[] { + "Type", "Price", "UpdateTime", + }); + com.google.protobuf.TimestampProto.getDescriptor(); + com.google.type.MoneyProto.getDescriptor(); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GeometryProto.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GeometryProto.java index 9722949cf5da..bf308d41a8d5 100644 --- a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GeometryProto.java +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GeometryProto.java @@ -43,13 +43,13 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "\n$google/maps/places/v1/geometry.proto\022\025" + "google.maps.places.v1\032\037google/api/field_" + "behavior.proto\032\030google/type/latlng.proto" - + "\"G\n\006Circle\022(\n\006center\030\001 \001(\0132\023.google.type" - + ".LatLngB\003\340A\002\022\023\n\006radius\030\002 \001(\001B\003\340A\002B\245\001\n\031co" - + "m.google.maps.places.v1B\rGeometryProtoP\001" - + "Z;google.golang.org/genproto/googleapis/" - + "maps/places/v1;places\370\001\001\242\002\006GMPSV1\252\002\025Goog" - + "le.Maps.Places.V1\312\002\025Google\\Maps\\Places\\V" - + "1b\006proto3" + + "\"I\n\006Circle\022)\n\006center\030\001 \001(\0132\023.google.type" + + ".LatLngB\004\342A\001\002\022\024\n\006radius\030\002 \001(\001B\004\342A\001\002B\241\001\n\031" + + "com.google.maps.places.v1B\rGeometryProto" + + "P\001Z7cloud.google.com/go/maps/places/apiv" + + "1/placespb;placespb\370\001\001\242\002\006GMPSV1\252\002\025Google" + + ".Maps.Places.V1\312\002\025Google\\Maps\\Places\\V1b" + + "\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GetPhotoMediaRequest.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GetPhotoMediaRequest.java new file mode 100644 index 000000000000..1b2ab7e5151d --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GetPhotoMediaRequest.java @@ -0,0 +1,1022 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/places_service.proto + +package com.google.maps.places.v1; + +/** + * + * + *
+ * Request for fetching a photo of a place using a photo resource name.
+ * 
+ * + * Protobuf type {@code google.maps.places.v1.GetPhotoMediaRequest} + */ +public final class GetPhotoMediaRequest extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.GetPhotoMediaRequest) + GetPhotoMediaRequestOrBuilder { + private static final long serialVersionUID = 0L; + // Use GetPhotoMediaRequest.newBuilder() to construct. + private GetPhotoMediaRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private GetPhotoMediaRequest() { + name_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new GetPhotoMediaRequest(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_GetPhotoMediaRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_GetPhotoMediaRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.GetPhotoMediaRequest.class, + com.google.maps.places.v1.GetPhotoMediaRequest.Builder.class); + } + + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + /** + * + * + *
+   * Required. The resource name of a photo. It is returned in Place's
+   * photos.name field. Format:
+   * places/<place_id>/photos/<photo_reference>/media.
+   * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The name. + */ + @java.lang.Override + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } + } + /** + * + * + *
+   * Required. The resource name of a photo. It is returned in Place's
+   * photos.name field. Format:
+   * places/<place_id>/photos/<photo_reference>/media.
+   * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for name. + */ + @java.lang.Override + public com.google.protobuf.ByteString getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int MAX_WIDTH_PX_FIELD_NUMBER = 2; + private int maxWidthPx_ = 0; + /** + * + * + *
+   * Optional. Specifies the maximum desired width, in pixels, of the image. If
+   * the image is smaller than the values specified, the original image will be
+   * returned. If the image is larger in either dimension, it will be scaled to
+   * match the smaller of the two dimensions, restricted to its original aspect
+   * ratio. Both the max_height_px and max_width_px properties accept an integer
+   * between 1 and 4800, inclusively. If the value is not within the allowed
+   * range, an INVALID_ARGUMENT error will be returned.
+   *
+   * At least one of max_height_px or max_width_px needs to be specified. If
+   * neither max_height_px nor max_width_px is specified, an INVALID_ARGUMENT
+   * error will be returned.
+   * 
+ * + * int32 max_width_px = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxWidthPx. + */ + @java.lang.Override + public int getMaxWidthPx() { + return maxWidthPx_; + } + + public static final int MAX_HEIGHT_PX_FIELD_NUMBER = 3; + private int maxHeightPx_ = 0; + /** + * + * + *
+   * Optional. Specifies the maximum desired height, in pixels, of the image. If
+   * the image is smaller than the values specified, the original image will be
+   * returned. If the image is larger in either dimension, it will be scaled to
+   * match the smaller of the two dimensions, restricted to its original aspect
+   * ratio. Both the max_height_px and max_width_px properties accept an integer
+   * between 1 and 4800, inclusively. If the value is not within the allowed
+   * range, an INVALID_ARGUMENT error will be returned.
+   *
+   * At least one of max_height_px or max_width_px needs to be specified. If
+   * neither max_height_px nor max_width_px is specified, an INVALID_ARGUMENT
+   * error will be returned.
+   * 
+ * + * int32 max_height_px = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxHeightPx. + */ + @java.lang.Override + public int getMaxHeightPx() { + return maxHeightPx_; + } + + public static final int SKIP_HTTP_REDIRECT_FIELD_NUMBER = 4; + private boolean skipHttpRedirect_ = false; + /** + * + * + *
+   * Optional. If set, skip the default HTTP redirect behavior and render a text
+   * format (for example, in JSON format for HTTP use case) response. If not
+   * set, an HTTP redirect will be issued to redirect the call to the image
+   * midea. This option is ignored for non-HTTP requests.
+   * 
+ * + * bool skip_http_redirect = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The skipHttpRedirect. + */ + @java.lang.Override + public boolean getSkipHttpRedirect() { + return skipHttpRedirect_; + } + + 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.GeneratedMessageV3.isStringEmpty(name_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); + } + if (maxWidthPx_ != 0) { + output.writeInt32(2, maxWidthPx_); + } + if (maxHeightPx_ != 0) { + output.writeInt32(3, maxHeightPx_); + } + if (skipHttpRedirect_ != false) { + output.writeBool(4, skipHttpRedirect_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); + } + if (maxWidthPx_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, maxWidthPx_); + } + if (maxHeightPx_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(3, maxHeightPx_); + } + if (skipHttpRedirect_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, skipHttpRedirect_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.maps.places.v1.GetPhotoMediaRequest)) { + return super.equals(obj); + } + com.google.maps.places.v1.GetPhotoMediaRequest other = + (com.google.maps.places.v1.GetPhotoMediaRequest) obj; + + if (!getName().equals(other.getName())) return false; + if (getMaxWidthPx() != other.getMaxWidthPx()) return false; + if (getMaxHeightPx() != other.getMaxHeightPx()) return false; + if (getSkipHttpRedirect() != other.getSkipHttpRedirect()) 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) + MAX_WIDTH_PX_FIELD_NUMBER; + hash = (53 * hash) + getMaxWidthPx(); + hash = (37 * hash) + MAX_HEIGHT_PX_FIELD_NUMBER; + hash = (53 * hash) + getMaxHeightPx(); + hash = (37 * hash) + SKIP_HTTP_REDIRECT_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getSkipHttpRedirect()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.GetPhotoMediaRequest parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.GetPhotoMediaRequest parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.GetPhotoMediaRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.GetPhotoMediaRequest parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.GetPhotoMediaRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.GetPhotoMediaRequest parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.GetPhotoMediaRequest parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.GetPhotoMediaRequest parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.GetPhotoMediaRequest parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.GetPhotoMediaRequest parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.GetPhotoMediaRequest parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.GetPhotoMediaRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.maps.places.v1.GetPhotoMediaRequest 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+   * Request for fetching a photo of a place using a photo resource name.
+   * 
+ * + * Protobuf type {@code google.maps.places.v1.GetPhotoMediaRequest} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.GetPhotoMediaRequest) + com.google.maps.places.v1.GetPhotoMediaRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_GetPhotoMediaRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_GetPhotoMediaRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.GetPhotoMediaRequest.class, + com.google.maps.places.v1.GetPhotoMediaRequest.Builder.class); + } + + // Construct using com.google.maps.places.v1.GetPhotoMediaRequest.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + maxWidthPx_ = 0; + maxHeightPx_ = 0; + skipHttpRedirect_ = false; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_GetPhotoMediaRequest_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.GetPhotoMediaRequest getDefaultInstanceForType() { + return com.google.maps.places.v1.GetPhotoMediaRequest.getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.GetPhotoMediaRequest build() { + com.google.maps.places.v1.GetPhotoMediaRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.GetPhotoMediaRequest buildPartial() { + com.google.maps.places.v1.GetPhotoMediaRequest result = + new com.google.maps.places.v1.GetPhotoMediaRequest(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.maps.places.v1.GetPhotoMediaRequest result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.maxWidthPx_ = maxWidthPx_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.maxHeightPx_ = maxHeightPx_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.skipHttpRedirect_ = skipHttpRedirect_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.GetPhotoMediaRequest) { + return mergeFrom((com.google.maps.places.v1.GetPhotoMediaRequest) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.maps.places.v1.GetPhotoMediaRequest other) { + if (other == com.google.maps.places.v1.GetPhotoMediaRequest.getDefaultInstance()) return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.getMaxWidthPx() != 0) { + setMaxWidthPx(other.getMaxWidthPx()); + } + if (other.getMaxHeightPx() != 0) { + setMaxHeightPx(other.getMaxHeightPx()); + } + if (other.getSkipHttpRedirect() != false) { + setSkipHttpRedirect(other.getSkipHttpRedirect()); + } + 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 16: + { + maxWidthPx_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 24: + { + maxHeightPx_ = input.readInt32(); + bitField0_ |= 0x00000004; + break; + } // case 24 + case 32: + { + skipHttpRedirect_ = 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 name_ = ""; + /** + * + * + *
+     * Required. The resource name of a photo. It is returned in Place's
+     * photos.name field. Format:
+     * places/<place_id>/photos/<photo_reference>/media.
+     * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Required. The resource name of a photo. It is returned in Place's
+     * photos.name field. Format:
+     * places/<place_id>/photos/<photo_reference>/media.
+     * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for name. + */ + public com.google.protobuf.ByteString getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Required. The resource name of a photo. It is returned in Place's
+     * photos.name field. Format:
+     * places/<place_id>/photos/<photo_reference>/media.
+     * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + name_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+     * Required. The resource name of a photo. It is returned in Place's
+     * photos.name field. Format:
+     * places/<place_id>/photos/<photo_reference>/media.
+     * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearName() { + name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * + * + *
+     * Required. The resource name of a photo. It is returned in Place's
+     * photos.name field. Format:
+     * places/<place_id>/photos/<photo_reference>/media.
+     * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + name_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private int maxWidthPx_; + /** + * + * + *
+     * Optional. Specifies the maximum desired width, in pixels, of the image. If
+     * the image is smaller than the values specified, the original image will be
+     * returned. If the image is larger in either dimension, it will be scaled to
+     * match the smaller of the two dimensions, restricted to its original aspect
+     * ratio. Both the max_height_px and max_width_px properties accept an integer
+     * between 1 and 4800, inclusively. If the value is not within the allowed
+     * range, an INVALID_ARGUMENT error will be returned.
+     *
+     * At least one of max_height_px or max_width_px needs to be specified. If
+     * neither max_height_px nor max_width_px is specified, an INVALID_ARGUMENT
+     * error will be returned.
+     * 
+ * + * int32 max_width_px = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxWidthPx. + */ + @java.lang.Override + public int getMaxWidthPx() { + return maxWidthPx_; + } + /** + * + * + *
+     * Optional. Specifies the maximum desired width, in pixels, of the image. If
+     * the image is smaller than the values specified, the original image will be
+     * returned. If the image is larger in either dimension, it will be scaled to
+     * match the smaller of the two dimensions, restricted to its original aspect
+     * ratio. Both the max_height_px and max_width_px properties accept an integer
+     * between 1 and 4800, inclusively. If the value is not within the allowed
+     * range, an INVALID_ARGUMENT error will be returned.
+     *
+     * At least one of max_height_px or max_width_px needs to be specified. If
+     * neither max_height_px nor max_width_px is specified, an INVALID_ARGUMENT
+     * error will be returned.
+     * 
+ * + * int32 max_width_px = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The maxWidthPx to set. + * @return This builder for chaining. + */ + public Builder setMaxWidthPx(int value) { + + maxWidthPx_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * + * + *
+     * Optional. Specifies the maximum desired width, in pixels, of the image. If
+     * the image is smaller than the values specified, the original image will be
+     * returned. If the image is larger in either dimension, it will be scaled to
+     * match the smaller of the two dimensions, restricted to its original aspect
+     * ratio. Both the max_height_px and max_width_px properties accept an integer
+     * between 1 and 4800, inclusively. If the value is not within the allowed
+     * range, an INVALID_ARGUMENT error will be returned.
+     *
+     * At least one of max_height_px or max_width_px needs to be specified. If
+     * neither max_height_px nor max_width_px is specified, an INVALID_ARGUMENT
+     * error will be returned.
+     * 
+ * + * int32 max_width_px = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearMaxWidthPx() { + bitField0_ = (bitField0_ & ~0x00000002); + maxWidthPx_ = 0; + onChanged(); + return this; + } + + private int maxHeightPx_; + /** + * + * + *
+     * Optional. Specifies the maximum desired height, in pixels, of the image. If
+     * the image is smaller than the values specified, the original image will be
+     * returned. If the image is larger in either dimension, it will be scaled to
+     * match the smaller of the two dimensions, restricted to its original aspect
+     * ratio. Both the max_height_px and max_width_px properties accept an integer
+     * between 1 and 4800, inclusively. If the value is not within the allowed
+     * range, an INVALID_ARGUMENT error will be returned.
+     *
+     * At least one of max_height_px or max_width_px needs to be specified. If
+     * neither max_height_px nor max_width_px is specified, an INVALID_ARGUMENT
+     * error will be returned.
+     * 
+ * + * int32 max_height_px = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxHeightPx. + */ + @java.lang.Override + public int getMaxHeightPx() { + return maxHeightPx_; + } + /** + * + * + *
+     * Optional. Specifies the maximum desired height, in pixels, of the image. If
+     * the image is smaller than the values specified, the original image will be
+     * returned. If the image is larger in either dimension, it will be scaled to
+     * match the smaller of the two dimensions, restricted to its original aspect
+     * ratio. Both the max_height_px and max_width_px properties accept an integer
+     * between 1 and 4800, inclusively. If the value is not within the allowed
+     * range, an INVALID_ARGUMENT error will be returned.
+     *
+     * At least one of max_height_px or max_width_px needs to be specified. If
+     * neither max_height_px nor max_width_px is specified, an INVALID_ARGUMENT
+     * error will be returned.
+     * 
+ * + * int32 max_height_px = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The maxHeightPx to set. + * @return This builder for chaining. + */ + public Builder setMaxHeightPx(int value) { + + maxHeightPx_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+     * Optional. Specifies the maximum desired height, in pixels, of the image. If
+     * the image is smaller than the values specified, the original image will be
+     * returned. If the image is larger in either dimension, it will be scaled to
+     * match the smaller of the two dimensions, restricted to its original aspect
+     * ratio. Both the max_height_px and max_width_px properties accept an integer
+     * between 1 and 4800, inclusively. If the value is not within the allowed
+     * range, an INVALID_ARGUMENT error will be returned.
+     *
+     * At least one of max_height_px or max_width_px needs to be specified. If
+     * neither max_height_px nor max_width_px is specified, an INVALID_ARGUMENT
+     * error will be returned.
+     * 
+ * + * int32 max_height_px = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearMaxHeightPx() { + bitField0_ = (bitField0_ & ~0x00000004); + maxHeightPx_ = 0; + onChanged(); + return this; + } + + private boolean skipHttpRedirect_; + /** + * + * + *
+     * Optional. If set, skip the default HTTP redirect behavior and render a text
+     * format (for example, in JSON format for HTTP use case) response. If not
+     * set, an HTTP redirect will be issued to redirect the call to the image
+     * midea. This option is ignored for non-HTTP requests.
+     * 
+ * + * bool skip_http_redirect = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The skipHttpRedirect. + */ + @java.lang.Override + public boolean getSkipHttpRedirect() { + return skipHttpRedirect_; + } + /** + * + * + *
+     * Optional. If set, skip the default HTTP redirect behavior and render a text
+     * format (for example, in JSON format for HTTP use case) response. If not
+     * set, an HTTP redirect will be issued to redirect the call to the image
+     * midea. This option is ignored for non-HTTP requests.
+     * 
+ * + * bool skip_http_redirect = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The skipHttpRedirect to set. + * @return This builder for chaining. + */ + public Builder setSkipHttpRedirect(boolean value) { + + skipHttpRedirect_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+     * Optional. If set, skip the default HTTP redirect behavior and render a text
+     * format (for example, in JSON format for HTTP use case) response. If not
+     * set, an HTTP redirect will be issued to redirect the call to the image
+     * midea. This option is ignored for non-HTTP requests.
+     * 
+ * + * bool skip_http_redirect = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearSkipHttpRedirect() { + bitField0_ = (bitField0_ & ~0x00000008); + skipHttpRedirect_ = false; + onChanged(); + return this; + } + + @java.lang.Override + public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.GetPhotoMediaRequest) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.GetPhotoMediaRequest) + private static final com.google.maps.places.v1.GetPhotoMediaRequest DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.GetPhotoMediaRequest(); + } + + public static com.google.maps.places.v1.GetPhotoMediaRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GetPhotoMediaRequest 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.maps.places.v1.GetPhotoMediaRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GetPhotoMediaRequestOrBuilder.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GetPhotoMediaRequestOrBuilder.java new file mode 100644 index 000000000000..352a8a5bd1b8 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GetPhotoMediaRequestOrBuilder.java @@ -0,0 +1,120 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/places_service.proto + +package com.google.maps.places.v1; + +public interface GetPhotoMediaRequestOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.GetPhotoMediaRequest) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Required. The resource name of a photo. It is returned in Place's
+   * photos.name field. Format:
+   * places/<place_id>/photos/<photo_reference>/media.
+   * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The name. + */ + java.lang.String getName(); + /** + * + * + *
+   * Required. The resource name of a photo. It is returned in Place's
+   * photos.name field. Format:
+   * places/<place_id>/photos/<photo_reference>/media.
+   * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for name. + */ + com.google.protobuf.ByteString getNameBytes(); + + /** + * + * + *
+   * Optional. Specifies the maximum desired width, in pixels, of the image. If
+   * the image is smaller than the values specified, the original image will be
+   * returned. If the image is larger in either dimension, it will be scaled to
+   * match the smaller of the two dimensions, restricted to its original aspect
+   * ratio. Both the max_height_px and max_width_px properties accept an integer
+   * between 1 and 4800, inclusively. If the value is not within the allowed
+   * range, an INVALID_ARGUMENT error will be returned.
+   *
+   * At least one of max_height_px or max_width_px needs to be specified. If
+   * neither max_height_px nor max_width_px is specified, an INVALID_ARGUMENT
+   * error will be returned.
+   * 
+ * + * int32 max_width_px = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxWidthPx. + */ + int getMaxWidthPx(); + + /** + * + * + *
+   * Optional. Specifies the maximum desired height, in pixels, of the image. If
+   * the image is smaller than the values specified, the original image will be
+   * returned. If the image is larger in either dimension, it will be scaled to
+   * match the smaller of the two dimensions, restricted to its original aspect
+   * ratio. Both the max_height_px and max_width_px properties accept an integer
+   * between 1 and 4800, inclusively. If the value is not within the allowed
+   * range, an INVALID_ARGUMENT error will be returned.
+   *
+   * At least one of max_height_px or max_width_px needs to be specified. If
+   * neither max_height_px nor max_width_px is specified, an INVALID_ARGUMENT
+   * error will be returned.
+   * 
+ * + * int32 max_height_px = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The maxHeightPx. + */ + int getMaxHeightPx(); + + /** + * + * + *
+   * Optional. If set, skip the default HTTP redirect behavior and render a text
+   * format (for example, in JSON format for HTTP use case) response. If not
+   * set, an HTTP redirect will be issued to redirect the call to the image
+   * midea. This option is ignored for non-HTTP requests.
+   * 
+ * + * bool skip_http_redirect = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The skipHttpRedirect. + */ + boolean getSkipHttpRedirect(); +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GetPlaceRequest.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GetPlaceRequest.java new file mode 100644 index 000000000000..469262a46100 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GetPlaceRequest.java @@ -0,0 +1,1092 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/places_service.proto + +package com.google.maps.places.v1; + +/** + * + * + *
+ * Request for fetching a Place with a place id (in a name) string.
+ * 
+ * + * Protobuf type {@code google.maps.places.v1.GetPlaceRequest} + */ +public final class GetPlaceRequest extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.GetPlaceRequest) + GetPlaceRequestOrBuilder { + private static final long serialVersionUID = 0L; + // Use GetPlaceRequest.newBuilder() to construct. + private GetPlaceRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private GetPlaceRequest() { + name_ = ""; + languageCode_ = ""; + regionCode_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new GetPlaceRequest(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_GetPlaceRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_GetPlaceRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.GetPlaceRequest.class, + com.google.maps.places.v1.GetPlaceRequest.Builder.class); + } + + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + /** + * + * + *
+   * Required. A place_id returned in a Place (with "places/" prefix), or
+   * equivalently the name in the same Place. Format: places/<place_id>.
+   * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The name. + */ + @java.lang.Override + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } + } + /** + * + * + *
+   * Required. A place_id returned in a Place (with "places/" prefix), or
+   * equivalently the name in the same Place. Format: places/<place_id>.
+   * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for name. + */ + @java.lang.Override + public com.google.protobuf.ByteString getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int LANGUAGE_CODE_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object languageCode_ = ""; + /** + * + * + *
+   * Optional. Place details will be displayed with the preferred language if
+   * available.
+   *
+   * Current list of supported languages:
+   * https://developers.google.com/maps/faq#languagesupport.
+   * 
+ * + * string language_code = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The languageCode. + */ + @java.lang.Override + public java.lang.String getLanguageCode() { + java.lang.Object ref = languageCode_; + 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(); + languageCode_ = s; + return s; + } + } + /** + * + * + *
+   * Optional. Place details will be displayed with the preferred language if
+   * available.
+   *
+   * Current list of supported languages:
+   * https://developers.google.com/maps/faq#languagesupport.
+   * 
+ * + * string language_code = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for languageCode. + */ + @java.lang.Override + public com.google.protobuf.ByteString getLanguageCodeBytes() { + java.lang.Object ref = languageCode_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + languageCode_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int REGION_CODE_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object regionCode_ = ""; + /** + * + * + *
+   * Optional. The Unicode country/region code (CLDR) of the location where the
+   * request is coming from. This parameter is used to display the place
+   * details, like region-specific place name, if available. The parameter can
+   * affect results based on applicable law.
+   * For more information, see
+   * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+   *
+   *
+   * Note that 3-digit region codes are not currently supported.
+   * 
+ * + * string region_code = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The regionCode. + */ + @java.lang.Override + public java.lang.String getRegionCode() { + java.lang.Object ref = regionCode_; + 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(); + regionCode_ = s; + return s; + } + } + /** + * + * + *
+   * Optional. The Unicode country/region code (CLDR) of the location where the
+   * request is coming from. This parameter is used to display the place
+   * details, like region-specific place name, if available. The parameter can
+   * affect results based on applicable law.
+   * For more information, see
+   * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+   *
+   *
+   * Note that 3-digit region codes are not currently supported.
+   * 
+ * + * string region_code = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for regionCode. + */ + @java.lang.Override + public com.google.protobuf.ByteString getRegionCodeBytes() { + java.lang.Object ref = regionCode_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + regionCode_ = 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.GeneratedMessageV3.isStringEmpty(name_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(languageCode_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, languageCode_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(regionCode_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, regionCode_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(languageCode_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, languageCode_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(regionCode_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, regionCode_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.maps.places.v1.GetPlaceRequest)) { + return super.equals(obj); + } + com.google.maps.places.v1.GetPlaceRequest other = + (com.google.maps.places.v1.GetPlaceRequest) obj; + + if (!getName().equals(other.getName())) return false; + if (!getLanguageCode().equals(other.getLanguageCode())) return false; + if (!getRegionCode().equals(other.getRegionCode())) 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) + LANGUAGE_CODE_FIELD_NUMBER; + hash = (53 * hash) + getLanguageCode().hashCode(); + hash = (37 * hash) + REGION_CODE_FIELD_NUMBER; + hash = (53 * hash) + getRegionCode().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.GetPlaceRequest parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.GetPlaceRequest parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.GetPlaceRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.GetPlaceRequest parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.GetPlaceRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.GetPlaceRequest parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.GetPlaceRequest parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.GetPlaceRequest parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.GetPlaceRequest parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.GetPlaceRequest parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.GetPlaceRequest parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.GetPlaceRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.maps.places.v1.GetPlaceRequest 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+   * Request for fetching a Place with a place id (in a name) string.
+   * 
+ * + * Protobuf type {@code google.maps.places.v1.GetPlaceRequest} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.GetPlaceRequest) + com.google.maps.places.v1.GetPlaceRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_GetPlaceRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_GetPlaceRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.GetPlaceRequest.class, + com.google.maps.places.v1.GetPlaceRequest.Builder.class); + } + + // Construct using com.google.maps.places.v1.GetPlaceRequest.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + languageCode_ = ""; + regionCode_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_GetPlaceRequest_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.GetPlaceRequest getDefaultInstanceForType() { + return com.google.maps.places.v1.GetPlaceRequest.getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.GetPlaceRequest build() { + com.google.maps.places.v1.GetPlaceRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.GetPlaceRequest buildPartial() { + com.google.maps.places.v1.GetPlaceRequest result = + new com.google.maps.places.v1.GetPlaceRequest(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.maps.places.v1.GetPlaceRequest result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.languageCode_ = languageCode_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.regionCode_ = regionCode_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.GetPlaceRequest) { + return mergeFrom((com.google.maps.places.v1.GetPlaceRequest) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.maps.places.v1.GetPlaceRequest other) { + if (other == com.google.maps.places.v1.GetPlaceRequest.getDefaultInstance()) return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getLanguageCode().isEmpty()) { + languageCode_ = other.languageCode_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getRegionCode().isEmpty()) { + regionCode_ = other.regionCode_; + 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: + { + languageCode_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + regionCode_ = 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. A place_id returned in a Place (with "places/" prefix), or
+     * equivalently the name in the same Place. Format: places/<place_id>.
+     * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Required. A place_id returned in a Place (with "places/" prefix), or
+     * equivalently the name in the same Place. Format: places/<place_id>.
+     * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for name. + */ + public com.google.protobuf.ByteString getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Required. A place_id returned in a Place (with "places/" prefix), or
+     * equivalently the name in the same Place. Format: places/<place_id>.
+     * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + name_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+     * Required. A place_id returned in a Place (with "places/" prefix), or
+     * equivalently the name in the same Place. Format: places/<place_id>.
+     * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearName() { + name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * + * + *
+     * Required. A place_id returned in a Place (with "places/" prefix), or
+     * equivalently the name in the same Place. Format: places/<place_id>.
+     * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + name_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object languageCode_ = ""; + /** + * + * + *
+     * Optional. Place details will be displayed with the preferred language if
+     * available.
+     *
+     * Current list of supported languages:
+     * https://developers.google.com/maps/faq#languagesupport.
+     * 
+ * + * string language_code = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The languageCode. + */ + public java.lang.String getLanguageCode() { + java.lang.Object ref = languageCode_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + languageCode_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Optional. Place details will be displayed with the preferred language if
+     * available.
+     *
+     * Current list of supported languages:
+     * https://developers.google.com/maps/faq#languagesupport.
+     * 
+ * + * string language_code = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for languageCode. + */ + public com.google.protobuf.ByteString getLanguageCodeBytes() { + java.lang.Object ref = languageCode_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + languageCode_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Optional. Place details will be displayed with the preferred language if
+     * available.
+     *
+     * Current list of supported languages:
+     * https://developers.google.com/maps/faq#languagesupport.
+     * 
+ * + * string language_code = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The languageCode to set. + * @return This builder for chaining. + */ + public Builder setLanguageCode(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + languageCode_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * + * + *
+     * Optional. Place details will be displayed with the preferred language if
+     * available.
+     *
+     * Current list of supported languages:
+     * https://developers.google.com/maps/faq#languagesupport.
+     * 
+ * + * string language_code = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearLanguageCode() { + languageCode_ = getDefaultInstance().getLanguageCode(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * + * + *
+     * Optional. Place details will be displayed with the preferred language if
+     * available.
+     *
+     * Current list of supported languages:
+     * https://developers.google.com/maps/faq#languagesupport.
+     * 
+ * + * string language_code = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for languageCode to set. + * @return This builder for chaining. + */ + public Builder setLanguageCodeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + languageCode_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object regionCode_ = ""; + /** + * + * + *
+     * Optional. The Unicode country/region code (CLDR) of the location where the
+     * request is coming from. This parameter is used to display the place
+     * details, like region-specific place name, if available. The parameter can
+     * affect results based on applicable law.
+     * For more information, see
+     * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+     *
+     *
+     * Note that 3-digit region codes are not currently supported.
+     * 
+ * + * string region_code = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The regionCode. + */ + public java.lang.String getRegionCode() { + java.lang.Object ref = regionCode_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + regionCode_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Optional. The Unicode country/region code (CLDR) of the location where the
+     * request is coming from. This parameter is used to display the place
+     * details, like region-specific place name, if available. The parameter can
+     * affect results based on applicable law.
+     * For more information, see
+     * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+     *
+     *
+     * Note that 3-digit region codes are not currently supported.
+     * 
+ * + * string region_code = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for regionCode. + */ + public com.google.protobuf.ByteString getRegionCodeBytes() { + java.lang.Object ref = regionCode_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + regionCode_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Optional. The Unicode country/region code (CLDR) of the location where the
+     * request is coming from. This parameter is used to display the place
+     * details, like region-specific place name, if available. The parameter can
+     * affect results based on applicable law.
+     * For more information, see
+     * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+     *
+     *
+     * Note that 3-digit region codes are not currently supported.
+     * 
+ * + * string region_code = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The regionCode to set. + * @return This builder for chaining. + */ + public Builder setRegionCode(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + regionCode_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+     * Optional. The Unicode country/region code (CLDR) of the location where the
+     * request is coming from. This parameter is used to display the place
+     * details, like region-specific place name, if available. The parameter can
+     * affect results based on applicable law.
+     * For more information, see
+     * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+     *
+     *
+     * Note that 3-digit region codes are not currently supported.
+     * 
+ * + * string region_code = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearRegionCode() { + regionCode_ = getDefaultInstance().getRegionCode(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * + * + *
+     * Optional. The Unicode country/region code (CLDR) of the location where the
+     * request is coming from. This parameter is used to display the place
+     * details, like region-specific place name, if available. The parameter can
+     * affect results based on applicable law.
+     * For more information, see
+     * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+     *
+     *
+     * Note that 3-digit region codes are not currently supported.
+     * 
+ * + * string region_code = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for regionCode to set. + * @return This builder for chaining. + */ + public Builder setRegionCodeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + regionCode_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + @java.lang.Override + public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.GetPlaceRequest) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.GetPlaceRequest) + private static final com.google.maps.places.v1.GetPlaceRequest DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.GetPlaceRequest(); + } + + public static com.google.maps.places.v1.GetPlaceRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GetPlaceRequest 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.maps.places.v1.GetPlaceRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GetPlaceRequestOrBuilder.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GetPlaceRequestOrBuilder.java new file mode 100644 index 000000000000..23aa542bb6fe --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/GetPlaceRequestOrBuilder.java @@ -0,0 +1,130 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/places_service.proto + +package com.google.maps.places.v1; + +public interface GetPlaceRequestOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.GetPlaceRequest) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Required. A place_id returned in a Place (with "places/" prefix), or
+   * equivalently the name in the same Place. Format: places/<place_id>.
+   * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The name. + */ + java.lang.String getName(); + /** + * + * + *
+   * Required. A place_id returned in a Place (with "places/" prefix), or
+   * equivalently the name in the same Place. Format: places/<place_id>.
+   * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for name. + */ + com.google.protobuf.ByteString getNameBytes(); + + /** + * + * + *
+   * Optional. Place details will be displayed with the preferred language if
+   * available.
+   *
+   * Current list of supported languages:
+   * https://developers.google.com/maps/faq#languagesupport.
+   * 
+ * + * string language_code = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The languageCode. + */ + java.lang.String getLanguageCode(); + /** + * + * + *
+   * Optional. Place details will be displayed with the preferred language if
+   * available.
+   *
+   * Current list of supported languages:
+   * https://developers.google.com/maps/faq#languagesupport.
+   * 
+ * + * string language_code = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for languageCode. + */ + com.google.protobuf.ByteString getLanguageCodeBytes(); + + /** + * + * + *
+   * Optional. The Unicode country/region code (CLDR) of the location where the
+   * request is coming from. This parameter is used to display the place
+   * details, like region-specific place name, if available. The parameter can
+   * affect results based on applicable law.
+   * For more information, see
+   * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+   *
+   *
+   * Note that 3-digit region codes are not currently supported.
+   * 
+ * + * string region_code = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The regionCode. + */ + java.lang.String getRegionCode(); + /** + * + * + *
+   * Optional. The Unicode country/region code (CLDR) of the location where the
+   * request is coming from. This parameter is used to display the place
+   * details, like region-specific place name, if available. The parameter can
+   * affect results based on applicable law.
+   * For more information, see
+   * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+   *
+   *
+   * Note that 3-digit region codes are not currently supported.
+   * 
+ * + * string region_code = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for regionCode. + */ + com.google.protobuf.ByteString getRegionCodeBytes(); +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Photo.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Photo.java new file mode 100644 index 000000000000..10cc389f86e3 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Photo.java @@ -0,0 +1,1369 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/photo.proto + +package com.google.maps.places.v1; + +/** + * + * + *
+ * Information about a photo of a place.
+ * 
+ * + * Protobuf type {@code google.maps.places.v1.Photo} + */ +public final class Photo extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.Photo) + PhotoOrBuilder { + private static final long serialVersionUID = 0L; + // Use Photo.newBuilder() to construct. + private Photo(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private Photo() { + name_ = ""; + authorAttributions_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new Photo(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PhotoProto + .internal_static_google_maps_places_v1_Photo_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PhotoProto + .internal_static_google_maps_places_v1_Photo_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Photo.class, com.google.maps.places.v1.Photo.Builder.class); + } + + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + /** + * + * + *
+   * Output only. A reference representing this place photo which may be used to
+   * look up this place photo again (a.k.a. the API "resource" name:
+   * places/{place_id}/photos/{photo}).
+   * 
+ * + * string name = 1 [(.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. A reference representing this place photo which may be used to
+   * look up this place photo again (a.k.a. the API "resource" name:
+   * places/{place_id}/photos/{photo}).
+   * 
+ * + * string name = 1 [(.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 final int WIDTH_PX_FIELD_NUMBER = 2; + private int widthPx_ = 0; + /** + * + * + *
+   * Output only. The maximum available width, in pixels.
+   * 
+ * + * int32 width_px = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The widthPx. + */ + @java.lang.Override + public int getWidthPx() { + return widthPx_; + } + + public static final int HEIGHT_PX_FIELD_NUMBER = 3; + private int heightPx_ = 0; + /** + * + * + *
+   * Output only. The maximum available height, in pixels.
+   * 
+ * + * int32 height_px = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The heightPx. + */ + @java.lang.Override + public int getHeightPx() { + return heightPx_; + } + + public static final int AUTHOR_ATTRIBUTIONS_FIELD_NUMBER = 4; + + @SuppressWarnings("serial") + private java.util.List authorAttributions_; + /** + * + * + *
+   * Output only. This photo's authors.
+   * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getAuthorAttributionsList() { + return authorAttributions_; + } + /** + * + * + *
+   * Output only. This photo's authors.
+   * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getAuthorAttributionsOrBuilderList() { + return authorAttributions_; + } + /** + * + * + *
+   * Output only. This photo's authors.
+   * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getAuthorAttributionsCount() { + return authorAttributions_.size(); + } + /** + * + * + *
+   * Output only. This photo's authors.
+   * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.AuthorAttribution getAuthorAttributions(int index) { + return authorAttributions_.get(index); + } + /** + * + * + *
+   * Output only. This photo's authors.
+   * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.AuthorAttributionOrBuilder getAuthorAttributionsOrBuilder( + int index) { + return authorAttributions_.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.GeneratedMessageV3.isStringEmpty(name_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); + } + if (widthPx_ != 0) { + output.writeInt32(2, widthPx_); + } + if (heightPx_ != 0) { + output.writeInt32(3, heightPx_); + } + for (int i = 0; i < authorAttributions_.size(); i++) { + output.writeMessage(4, authorAttributions_.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.GeneratedMessageV3.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); + } + if (widthPx_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, widthPx_); + } + if (heightPx_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(3, heightPx_); + } + for (int i = 0; i < authorAttributions_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(4, authorAttributions_.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.maps.places.v1.Photo)) { + return super.equals(obj); + } + com.google.maps.places.v1.Photo other = (com.google.maps.places.v1.Photo) obj; + + if (!getName().equals(other.getName())) return false; + if (getWidthPx() != other.getWidthPx()) return false; + if (getHeightPx() != other.getHeightPx()) return false; + if (!getAuthorAttributionsList().equals(other.getAuthorAttributionsList())) 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) + WIDTH_PX_FIELD_NUMBER; + hash = (53 * hash) + getWidthPx(); + hash = (37 * hash) + HEIGHT_PX_FIELD_NUMBER; + hash = (53 * hash) + getHeightPx(); + if (getAuthorAttributionsCount() > 0) { + hash = (37 * hash) + AUTHOR_ATTRIBUTIONS_FIELD_NUMBER; + hash = (53 * hash) + getAuthorAttributionsList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.Photo parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Photo parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Photo parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Photo parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Photo parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Photo parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Photo parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Photo parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.Photo parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Photo parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.Photo parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Photo parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.maps.places.v1.Photo 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+   * Information about a photo of a place.
+   * 
+ * + * Protobuf type {@code google.maps.places.v1.Photo} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Photo) + com.google.maps.places.v1.PhotoOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PhotoProto + .internal_static_google_maps_places_v1_Photo_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PhotoProto + .internal_static_google_maps_places_v1_Photo_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Photo.class, com.google.maps.places.v1.Photo.Builder.class); + } + + // Construct using com.google.maps.places.v1.Photo.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + widthPx_ = 0; + heightPx_ = 0; + if (authorAttributionsBuilder_ == null) { + authorAttributions_ = java.util.Collections.emptyList(); + } else { + authorAttributions_ = null; + authorAttributionsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000008); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.PhotoProto + .internal_static_google_maps_places_v1_Photo_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.Photo getDefaultInstanceForType() { + return com.google.maps.places.v1.Photo.getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.Photo build() { + com.google.maps.places.v1.Photo result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.Photo buildPartial() { + com.google.maps.places.v1.Photo result = new com.google.maps.places.v1.Photo(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(com.google.maps.places.v1.Photo result) { + if (authorAttributionsBuilder_ == null) { + if (((bitField0_ & 0x00000008) != 0)) { + authorAttributions_ = java.util.Collections.unmodifiableList(authorAttributions_); + bitField0_ = (bitField0_ & ~0x00000008); + } + result.authorAttributions_ = authorAttributions_; + } else { + result.authorAttributions_ = authorAttributionsBuilder_.build(); + } + } + + private void buildPartial0(com.google.maps.places.v1.Photo result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.widthPx_ = widthPx_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.heightPx_ = heightPx_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.Photo) { + return mergeFrom((com.google.maps.places.v1.Photo) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.maps.places.v1.Photo other) { + if (other == com.google.maps.places.v1.Photo.getDefaultInstance()) return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.getWidthPx() != 0) { + setWidthPx(other.getWidthPx()); + } + if (other.getHeightPx() != 0) { + setHeightPx(other.getHeightPx()); + } + if (authorAttributionsBuilder_ == null) { + if (!other.authorAttributions_.isEmpty()) { + if (authorAttributions_.isEmpty()) { + authorAttributions_ = other.authorAttributions_; + bitField0_ = (bitField0_ & ~0x00000008); + } else { + ensureAuthorAttributionsIsMutable(); + authorAttributions_.addAll(other.authorAttributions_); + } + onChanged(); + } + } else { + if (!other.authorAttributions_.isEmpty()) { + if (authorAttributionsBuilder_.isEmpty()) { + authorAttributionsBuilder_.dispose(); + authorAttributionsBuilder_ = null; + authorAttributions_ = other.authorAttributions_; + bitField0_ = (bitField0_ & ~0x00000008); + authorAttributionsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders + ? getAuthorAttributionsFieldBuilder() + : null; + } else { + authorAttributionsBuilder_.addAllMessages(other.authorAttributions_); + } + } + } + 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 16: + { + widthPx_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 24: + { + heightPx_ = input.readInt32(); + bitField0_ |= 0x00000004; + break; + } // case 24 + case 34: + { + com.google.maps.places.v1.AuthorAttribution m = + input.readMessage( + com.google.maps.places.v1.AuthorAttribution.parser(), extensionRegistry); + if (authorAttributionsBuilder_ == null) { + ensureAuthorAttributionsIsMutable(); + authorAttributions_.add(m); + } else { + authorAttributionsBuilder_.addMessage(m); + } + 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 name_ = ""; + /** + * + * + *
+     * Output only. A reference representing this place photo which may be used to
+     * look up this place photo again (a.k.a. the API "resource" name:
+     * places/{place_id}/photos/{photo}).
+     * 
+ * + * string name = 1 [(.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; + } + } + /** + * + * + *
+     * Output only. A reference representing this place photo which may be used to
+     * look up this place photo again (a.k.a. the API "resource" name:
+     * places/{place_id}/photos/{photo}).
+     * 
+ * + * string name = 1 [(.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; + } + } + /** + * + * + *
+     * Output only. A reference representing this place photo which may be used to
+     * look up this place photo again (a.k.a. the API "resource" name:
+     * places/{place_id}/photos/{photo}).
+     * 
+ * + * string name = 1 [(.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; + } + /** + * + * + *
+     * Output only. A reference representing this place photo which may be used to
+     * look up this place photo again (a.k.a. the API "resource" name:
+     * places/{place_id}/photos/{photo}).
+     * 
+ * + * string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearName() { + name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A reference representing this place photo which may be used to
+     * look up this place photo again (a.k.a. the API "resource" name:
+     * places/{place_id}/photos/{photo}).
+     * 
+ * + * string name = 1 [(.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 int widthPx_; + /** + * + * + *
+     * Output only. The maximum available width, in pixels.
+     * 
+ * + * int32 width_px = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The widthPx. + */ + @java.lang.Override + public int getWidthPx() { + return widthPx_; + } + /** + * + * + *
+     * Output only. The maximum available width, in pixels.
+     * 
+ * + * int32 width_px = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The widthPx to set. + * @return This builder for chaining. + */ + public Builder setWidthPx(int value) { + + widthPx_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The maximum available width, in pixels.
+     * 
+ * + * int32 width_px = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearWidthPx() { + bitField0_ = (bitField0_ & ~0x00000002); + widthPx_ = 0; + onChanged(); + return this; + } + + private int heightPx_; + /** + * + * + *
+     * Output only. The maximum available height, in pixels.
+     * 
+ * + * int32 height_px = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The heightPx. + */ + @java.lang.Override + public int getHeightPx() { + return heightPx_; + } + /** + * + * + *
+     * Output only. The maximum available height, in pixels.
+     * 
+ * + * int32 height_px = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The heightPx to set. + * @return This builder for chaining. + */ + public Builder setHeightPx(int value) { + + heightPx_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The maximum available height, in pixels.
+     * 
+ * + * int32 height_px = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearHeightPx() { + bitField0_ = (bitField0_ & ~0x00000004); + heightPx_ = 0; + onChanged(); + return this; + } + + private java.util.List authorAttributions_ = + java.util.Collections.emptyList(); + + private void ensureAuthorAttributionsIsMutable() { + if (!((bitField0_ & 0x00000008) != 0)) { + authorAttributions_ = + new java.util.ArrayList( + authorAttributions_); + bitField0_ |= 0x00000008; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.AuthorAttribution, + com.google.maps.places.v1.AuthorAttribution.Builder, + com.google.maps.places.v1.AuthorAttributionOrBuilder> + authorAttributionsBuilder_; + + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List getAuthorAttributionsList() { + if (authorAttributionsBuilder_ == null) { + return java.util.Collections.unmodifiableList(authorAttributions_); + } else { + return authorAttributionsBuilder_.getMessageList(); + } + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public int getAuthorAttributionsCount() { + if (authorAttributionsBuilder_ == null) { + return authorAttributions_.size(); + } else { + return authorAttributionsBuilder_.getCount(); + } + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.AuthorAttribution getAuthorAttributions(int index) { + if (authorAttributionsBuilder_ == null) { + return authorAttributions_.get(index); + } else { + return authorAttributionsBuilder_.getMessage(index); + } + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setAuthorAttributions( + int index, com.google.maps.places.v1.AuthorAttribution value) { + if (authorAttributionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAuthorAttributionsIsMutable(); + authorAttributions_.set(index, value); + onChanged(); + } else { + authorAttributionsBuilder_.setMessage(index, value); + } + return this; + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setAuthorAttributions( + int index, com.google.maps.places.v1.AuthorAttribution.Builder builderForValue) { + if (authorAttributionsBuilder_ == null) { + ensureAuthorAttributionsIsMutable(); + authorAttributions_.set(index, builderForValue.build()); + onChanged(); + } else { + authorAttributionsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAuthorAttributions(com.google.maps.places.v1.AuthorAttribution value) { + if (authorAttributionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAuthorAttributionsIsMutable(); + authorAttributions_.add(value); + onChanged(); + } else { + authorAttributionsBuilder_.addMessage(value); + } + return this; + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAuthorAttributions( + int index, com.google.maps.places.v1.AuthorAttribution value) { + if (authorAttributionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAuthorAttributionsIsMutable(); + authorAttributions_.add(index, value); + onChanged(); + } else { + authorAttributionsBuilder_.addMessage(index, value); + } + return this; + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAuthorAttributions( + com.google.maps.places.v1.AuthorAttribution.Builder builderForValue) { + if (authorAttributionsBuilder_ == null) { + ensureAuthorAttributionsIsMutable(); + authorAttributions_.add(builderForValue.build()); + onChanged(); + } else { + authorAttributionsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAuthorAttributions( + int index, com.google.maps.places.v1.AuthorAttribution.Builder builderForValue) { + if (authorAttributionsBuilder_ == null) { + ensureAuthorAttributionsIsMutable(); + authorAttributions_.add(index, builderForValue.build()); + onChanged(); + } else { + authorAttributionsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAllAuthorAttributions( + java.lang.Iterable values) { + if (authorAttributionsBuilder_ == null) { + ensureAuthorAttributionsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, authorAttributions_); + onChanged(); + } else { + authorAttributionsBuilder_.addAllMessages(values); + } + return this; + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearAuthorAttributions() { + if (authorAttributionsBuilder_ == null) { + authorAttributions_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + } else { + authorAttributionsBuilder_.clear(); + } + return this; + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder removeAuthorAttributions(int index) { + if (authorAttributionsBuilder_ == null) { + ensureAuthorAttributionsIsMutable(); + authorAttributions_.remove(index); + onChanged(); + } else { + authorAttributionsBuilder_.remove(index); + } + return this; + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.AuthorAttribution.Builder getAuthorAttributionsBuilder( + int index) { + return getAuthorAttributionsFieldBuilder().getBuilder(index); + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.AuthorAttributionOrBuilder getAuthorAttributionsOrBuilder( + int index) { + if (authorAttributionsBuilder_ == null) { + return authorAttributions_.get(index); + } else { + return authorAttributionsBuilder_.getMessageOrBuilder(index); + } + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List + getAuthorAttributionsOrBuilderList() { + if (authorAttributionsBuilder_ != null) { + return authorAttributionsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(authorAttributions_); + } + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.AuthorAttribution.Builder addAuthorAttributionsBuilder() { + return getAuthorAttributionsFieldBuilder() + .addBuilder(com.google.maps.places.v1.AuthorAttribution.getDefaultInstance()); + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.AuthorAttribution.Builder addAuthorAttributionsBuilder( + int index) { + return getAuthorAttributionsFieldBuilder() + .addBuilder(index, com.google.maps.places.v1.AuthorAttribution.getDefaultInstance()); + } + /** + * + * + *
+     * Output only. This photo's authors.
+     * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List + getAuthorAttributionsBuilderList() { + return getAuthorAttributionsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.AuthorAttribution, + com.google.maps.places.v1.AuthorAttribution.Builder, + com.google.maps.places.v1.AuthorAttributionOrBuilder> + getAuthorAttributionsFieldBuilder() { + if (authorAttributionsBuilder_ == null) { + authorAttributionsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.AuthorAttribution, + com.google.maps.places.v1.AuthorAttribution.Builder, + com.google.maps.places.v1.AuthorAttributionOrBuilder>( + authorAttributions_, + ((bitField0_ & 0x00000008) != 0), + getParentForChildren(), + isClean()); + authorAttributions_ = null; + } + return authorAttributionsBuilder_; + } + + @java.lang.Override + public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Photo) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.Photo) + private static final com.google.maps.places.v1.Photo DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.Photo(); + } + + public static com.google.maps.places.v1.Photo getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Photo 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.maps.places.v1.Photo getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Int32Range.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoMedia.java similarity index 51% rename from java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Int32Range.java rename to java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoMedia.java index d8980f1b6d61..2bd600b5cef0 100644 --- a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Int32Range.java +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoMedia.java @@ -22,116 +22,149 @@ * * *
- * int 32 range. Both min and max are optional. If only min is set, then the
- * range only has a lower bound. If only max is set, then range only has an
- * upper bound. At least one of min and max must be set. Values are inclusive.
+ * A photo media from Places API.
  * 
* - * Protobuf type {@code google.maps.places.v1.Int32Range} + * Protobuf type {@code google.maps.places.v1.PhotoMedia} */ -public final class Int32Range extends com.google.protobuf.GeneratedMessageV3 +public final class PhotoMedia extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:google.maps.places.v1.Int32Range) - Int32RangeOrBuilder { + // @@protoc_insertion_point(message_implements:google.maps.places.v1.PhotoMedia) + PhotoMediaOrBuilder { private static final long serialVersionUID = 0L; - // Use Int32Range.newBuilder() to construct. - private Int32Range(com.google.protobuf.GeneratedMessageV3.Builder builder) { + // Use PhotoMedia.newBuilder() to construct. + private PhotoMedia(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } - private Int32Range() {} + private PhotoMedia() { + name_ = ""; + photoUri_ = ""; + } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance(UnusedPrivateParameter unused) { - return new Int32Range(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; + return new PhotoMedia(); } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlacesServiceProto - .internal_static_google_maps_places_v1_Int32Range_descriptor; + .internal_static_google_maps_places_v1_PhotoMedia_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.maps.places.v1.PlacesServiceProto - .internal_static_google_maps_places_v1_Int32Range_fieldAccessorTable + .internal_static_google_maps_places_v1_PhotoMedia_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Int32Range.class, - com.google.maps.places.v1.Int32Range.Builder.class); + com.google.maps.places.v1.PhotoMedia.class, + com.google.maps.places.v1.PhotoMedia.Builder.class); } - private int bitField0_; - public static final int MIN_FIELD_NUMBER = 1; - private int min_ = 0; + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; /** * * *
-   * Lower bound. If unset, behavior is documented on the range field.
+   * The resource name of a photo. It is returned in Place's photos.name field.
+   * Format: places/<place_id>/photos/<photo_reference>/media.
    * 
* - * optional int32 min = 1; + * string name = 1; * - * @return Whether the min field is set. + * @return The name. */ @java.lang.Override - public boolean hasMin() { - return ((bitField0_ & 0x00000001) != 0); + 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; + } } /** * * *
-   * Lower bound. If unset, behavior is documented on the range field.
+   * The resource name of a photo. It is returned in Place's photos.name field.
+   * Format: places/<place_id>/photos/<photo_reference>/media.
    * 
* - * optional int32 min = 1; + * string name = 1; * - * @return The min. + * @return The bytes for name. */ @java.lang.Override - public int getMin() { - return min_; + 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 MAX_FIELD_NUMBER = 2; - private int max_ = 0; + public static final int PHOTO_URI_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object photoUri_ = ""; /** * * *
-   * Upper bound. If unset, behavior is documented on the range field.
+   * A short-lived uri that can be used to render the photo.
    * 
* - * optional int32 max = 2; + * string photo_uri = 2; * - * @return Whether the max field is set. + * @return The photoUri. */ @java.lang.Override - public boolean hasMax() { - return ((bitField0_ & 0x00000002) != 0); + public java.lang.String getPhotoUri() { + java.lang.Object ref = photoUri_; + 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(); + photoUri_ = s; + return s; + } } /** * * *
-   * Upper bound. If unset, behavior is documented on the range field.
+   * A short-lived uri that can be used to render the photo.
    * 
* - * optional int32 max = 2; + * string photo_uri = 2; * - * @return The max. + * @return The bytes for photoUri. */ @java.lang.Override - public int getMax() { - return max_; + public com.google.protobuf.ByteString getPhotoUriBytes() { + java.lang.Object ref = photoUri_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + photoUri_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } private byte memoizedIsInitialized = -1; @@ -148,11 +181,11 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (((bitField0_ & 0x00000001) != 0)) { - output.writeInt32(1, min_); + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } - if (((bitField0_ & 0x00000002) != 0)) { - output.writeInt32(2, max_); + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(photoUri_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, photoUri_); } getUnknownFields().writeTo(output); } @@ -163,11 +196,11 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (((bitField0_ & 0x00000001) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, min_); + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } - if (((bitField0_ & 0x00000002) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, max_); + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(photoUri_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, photoUri_); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; @@ -179,19 +212,13 @@ public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } - if (!(obj instanceof com.google.maps.places.v1.Int32Range)) { + if (!(obj instanceof com.google.maps.places.v1.PhotoMedia)) { return super.equals(obj); } - com.google.maps.places.v1.Int32Range other = (com.google.maps.places.v1.Int32Range) obj; + com.google.maps.places.v1.PhotoMedia other = (com.google.maps.places.v1.PhotoMedia) obj; - if (hasMin() != other.hasMin()) return false; - if (hasMin()) { - if (getMin() != other.getMin()) return false; - } - if (hasMax() != other.hasMax()) return false; - if (hasMax()) { - if (getMax() != other.getMax()) return false; - } + if (!getName().equals(other.getName())) return false; + if (!getPhotoUri().equals(other.getPhotoUri())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -203,83 +230,79 @@ public int hashCode() { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasMin()) { - hash = (37 * hash) + MIN_FIELD_NUMBER; - hash = (53 * hash) + getMin(); - } - if (hasMax()) { - hash = (37 * hash) + MAX_FIELD_NUMBER; - hash = (53 * hash) + getMax(); - } + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + hash = (37 * hash) + PHOTO_URI_FIELD_NUMBER; + hash = (53 * hash) + getPhotoUri().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; } - public static com.google.maps.places.v1.Int32Range parseFrom(java.nio.ByteBuffer data) + public static com.google.maps.places.v1.PhotoMedia parseFrom(java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.maps.places.v1.Int32Range parseFrom( + public static com.google.maps.places.v1.PhotoMedia parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.maps.places.v1.Int32Range parseFrom(com.google.protobuf.ByteString data) + public static com.google.maps.places.v1.PhotoMedia parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.maps.places.v1.Int32Range parseFrom( + public static com.google.maps.places.v1.PhotoMedia parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.maps.places.v1.Int32Range parseFrom(byte[] data) + public static com.google.maps.places.v1.PhotoMedia parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.maps.places.v1.Int32Range parseFrom( + public static com.google.maps.places.v1.PhotoMedia parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.maps.places.v1.Int32Range parseFrom(java.io.InputStream input) + public static com.google.maps.places.v1.PhotoMedia parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - public static com.google.maps.places.v1.Int32Range parseFrom( + public static com.google.maps.places.v1.PhotoMedia parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } - public static com.google.maps.places.v1.Int32Range parseDelimitedFrom(java.io.InputStream input) + public static com.google.maps.places.v1.PhotoMedia parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); } - public static com.google.maps.places.v1.Int32Range parseDelimitedFrom( + public static com.google.maps.places.v1.PhotoMedia parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( PARSER, input, extensionRegistry); } - public static com.google.maps.places.v1.Int32Range parseFrom( + public static com.google.maps.places.v1.PhotoMedia parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - public static com.google.maps.places.v1.Int32Range parseFrom( + public static com.google.maps.places.v1.PhotoMedia parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -296,7 +319,7 @@ public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(com.google.maps.places.v1.Int32Range prototype) { + public static Builder newBuilder(com.google.maps.places.v1.PhotoMedia prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @@ -314,33 +337,31 @@ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.Build * * *
-   * int 32 range. Both min and max are optional. If only min is set, then the
-   * range only has a lower bound. If only max is set, then range only has an
-   * upper bound. At least one of min and max must be set. Values are inclusive.
+   * A photo media from Places API.
    * 
* - * Protobuf type {@code google.maps.places.v1.Int32Range} + * Protobuf type {@code google.maps.places.v1.PhotoMedia} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements - // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Int32Range) - com.google.maps.places.v1.Int32RangeOrBuilder { + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.PhotoMedia) + com.google.maps.places.v1.PhotoMediaOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlacesServiceProto - .internal_static_google_maps_places_v1_Int32Range_descriptor; + .internal_static_google_maps_places_v1_PhotoMedia_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.maps.places.v1.PlacesServiceProto - .internal_static_google_maps_places_v1_Int32Range_fieldAccessorTable + .internal_static_google_maps_places_v1_PhotoMedia_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Int32Range.class, - com.google.maps.places.v1.Int32Range.Builder.class); + com.google.maps.places.v1.PhotoMedia.class, + com.google.maps.places.v1.PhotoMedia.Builder.class); } - // Construct using com.google.maps.places.v1.Int32Range.newBuilder() + // Construct using com.google.maps.places.v1.PhotoMedia.newBuilder() private Builder() {} private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { @@ -351,25 +372,25 @@ private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { public Builder clear() { super.clear(); bitField0_ = 0; - min_ = 0; - max_ = 0; + name_ = ""; + photoUri_ = ""; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return com.google.maps.places.v1.PlacesServiceProto - .internal_static_google_maps_places_v1_Int32Range_descriptor; + .internal_static_google_maps_places_v1_PhotoMedia_descriptor; } @java.lang.Override - public com.google.maps.places.v1.Int32Range getDefaultInstanceForType() { - return com.google.maps.places.v1.Int32Range.getDefaultInstance(); + public com.google.maps.places.v1.PhotoMedia getDefaultInstanceForType() { + return com.google.maps.places.v1.PhotoMedia.getDefaultInstance(); } @java.lang.Override - public com.google.maps.places.v1.Int32Range build() { - com.google.maps.places.v1.Int32Range result = buildPartial(); + public com.google.maps.places.v1.PhotoMedia build() { + com.google.maps.places.v1.PhotoMedia result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -377,8 +398,8 @@ public com.google.maps.places.v1.Int32Range build() { } @java.lang.Override - public com.google.maps.places.v1.Int32Range buildPartial() { - com.google.maps.places.v1.Int32Range result = new com.google.maps.places.v1.Int32Range(this); + public com.google.maps.places.v1.PhotoMedia buildPartial() { + com.google.maps.places.v1.PhotoMedia result = new com.google.maps.places.v1.PhotoMedia(this); if (bitField0_ != 0) { buildPartial0(result); } @@ -386,18 +407,14 @@ public com.google.maps.places.v1.Int32Range buildPartial() { return result; } - private void buildPartial0(com.google.maps.places.v1.Int32Range result) { + private void buildPartial0(com.google.maps.places.v1.PhotoMedia result) { int from_bitField0_ = bitField0_; - int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) != 0)) { - result.min_ = min_; - to_bitField0_ |= 0x00000001; + result.name_ = name_; } if (((from_bitField0_ & 0x00000002) != 0)) { - result.max_ = max_; - to_bitField0_ |= 0x00000002; + result.photoUri_ = photoUri_; } - result.bitField0_ |= to_bitField0_; } @java.lang.Override @@ -435,21 +452,25 @@ public Builder addRepeatedField( @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.maps.places.v1.Int32Range) { - return mergeFrom((com.google.maps.places.v1.Int32Range) other); + if (other instanceof com.google.maps.places.v1.PhotoMedia) { + return mergeFrom((com.google.maps.places.v1.PhotoMedia) other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(com.google.maps.places.v1.Int32Range other) { - if (other == com.google.maps.places.v1.Int32Range.getDefaultInstance()) return this; - if (other.hasMin()) { - setMin(other.getMin()); + public Builder mergeFrom(com.google.maps.places.v1.PhotoMedia other) { + if (other == com.google.maps.places.v1.PhotoMedia.getDefaultInstance()) return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); } - if (other.hasMax()) { - setMax(other.getMax()); + if (!other.getPhotoUri().isEmpty()) { + photoUri_ = other.photoUri_; + bitField0_ |= 0x00000002; + onChanged(); } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); @@ -477,18 +498,18 @@ public Builder mergeFrom( case 0: done = true; break; - case 8: + case 10: { - min_ = input.readInt32(); + name_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000001; break; - } // case 8 - case 16: + } // case 10 + case 18: { - max_ = input.readInt32(); + photoUri_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000002; break; - } // case 16 + } // case 18 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -508,52 +529,71 @@ public Builder mergeFrom( private int bitField0_; - private int min_; + private java.lang.Object name_ = ""; /** * * *
-     * Lower bound. If unset, behavior is documented on the range field.
+     * The resource name of a photo. It is returned in Place's photos.name field.
+     * Format: places/<place_id>/photos/<photo_reference>/media.
      * 
* - * optional int32 min = 1; + * string name = 1; * - * @return Whether the min field is set. + * @return The name. */ - @java.lang.Override - public boolean hasMin() { - return ((bitField0_ & 0x00000001) != 0); + 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; + } } /** * * *
-     * Lower bound. If unset, behavior is documented on the range field.
+     * The resource name of a photo. It is returned in Place's photos.name field.
+     * Format: places/<place_id>/photos/<photo_reference>/media.
      * 
* - * optional int32 min = 1; + * string name = 1; * - * @return The min. + * @return The bytes for name. */ - @java.lang.Override - public int getMin() { - return min_; + 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; + } } /** * * *
-     * Lower bound. If unset, behavior is documented on the range field.
+     * The resource name of a photo. It is returned in Place's photos.name field.
+     * Format: places/<place_id>/photos/<photo_reference>/media.
      * 
* - * optional int32 min = 1; + * string name = 1; * - * @param value The min to set. + * @param value The name to set. * @return This builder for chaining. */ - public Builder setMin(int value) { - - min_ = value; + public Builder setName(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + name_ = value; bitField0_ |= 0x00000001; onChanged(); return this; @@ -562,66 +602,106 @@ public Builder setMin(int value) { * * *
-     * Lower bound. If unset, behavior is documented on the range field.
+     * The resource name of a photo. It is returned in Place's photos.name field.
+     * Format: places/<place_id>/photos/<photo_reference>/media.
      * 
* - * optional int32 min = 1; + * string name = 1; * * @return This builder for chaining. */ - public Builder clearMin() { + public Builder clearName() { + name_ = getDefaultInstance().getName(); bitField0_ = (bitField0_ & ~0x00000001); - min_ = 0; + onChanged(); + return this; + } + /** + * + * + *
+     * The resource name of a photo. It is returned in Place's photos.name field.
+     * Format: places/<place_id>/photos/<photo_reference>/media.
+     * 
+ * + * string name = 1; + * + * @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 int max_; + private java.lang.Object photoUri_ = ""; /** * * *
-     * Upper bound. If unset, behavior is documented on the range field.
+     * A short-lived uri that can be used to render the photo.
      * 
* - * optional int32 max = 2; + * string photo_uri = 2; * - * @return Whether the max field is set. + * @return The photoUri. */ - @java.lang.Override - public boolean hasMax() { - return ((bitField0_ & 0x00000002) != 0); + public java.lang.String getPhotoUri() { + java.lang.Object ref = photoUri_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + photoUri_ = s; + return s; + } else { + return (java.lang.String) ref; + } } /** * * *
-     * Upper bound. If unset, behavior is documented on the range field.
+     * A short-lived uri that can be used to render the photo.
      * 
* - * optional int32 max = 2; + * string photo_uri = 2; * - * @return The max. + * @return The bytes for photoUri. */ - @java.lang.Override - public int getMax() { - return max_; + public com.google.protobuf.ByteString getPhotoUriBytes() { + java.lang.Object ref = photoUri_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + photoUri_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } /** * * *
-     * Upper bound. If unset, behavior is documented on the range field.
+     * A short-lived uri that can be used to render the photo.
      * 
* - * optional int32 max = 2; + * string photo_uri = 2; * - * @param value The max to set. + * @param value The photoUri to set. * @return This builder for chaining. */ - public Builder setMax(int value) { - - max_ = value; + public Builder setPhotoUri(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + photoUri_ = value; bitField0_ |= 0x00000002; onChanged(); return this; @@ -630,16 +710,38 @@ public Builder setMax(int value) { * * *
-     * Upper bound. If unset, behavior is documented on the range field.
+     * A short-lived uri that can be used to render the photo.
      * 
* - * optional int32 max = 2; + * string photo_uri = 2; * * @return This builder for chaining. */ - public Builder clearMax() { + public Builder clearPhotoUri() { + photoUri_ = getDefaultInstance().getPhotoUri(); bitField0_ = (bitField0_ & ~0x00000002); - max_ = 0; + onChanged(); + return this; + } + /** + * + * + *
+     * A short-lived uri that can be used to render the photo.
+     * 
+ * + * string photo_uri = 2; + * + * @param value The bytes for photoUri to set. + * @return This builder for chaining. + */ + public Builder setPhotoUriBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + photoUri_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -655,24 +757,24 @@ public final Builder mergeUnknownFields( return super.mergeUnknownFields(unknownFields); } - // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Int32Range) + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.PhotoMedia) } - // @@protoc_insertion_point(class_scope:google.maps.places.v1.Int32Range) - private static final com.google.maps.places.v1.Int32Range DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:google.maps.places.v1.PhotoMedia) + private static final com.google.maps.places.v1.PhotoMedia DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new com.google.maps.places.v1.Int32Range(); + DEFAULT_INSTANCE = new com.google.maps.places.v1.PhotoMedia(); } - public static com.google.maps.places.v1.Int32Range getDefaultInstance() { + public static com.google.maps.places.v1.PhotoMedia getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { @java.lang.Override - public Int32Range parsePartialFrom( + public PhotoMedia parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -691,17 +793,17 @@ public Int32Range parsePartialFrom( } }; - public static com.google.protobuf.Parser parser() { + public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser getParserForType() { + public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override - public com.google.maps.places.v1.Int32Range getDefaultInstanceForType() { + public com.google.maps.places.v1.PhotoMedia getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoMediaName.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoMediaName.java new file mode 100644 index 000000000000..82c1493781fa --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoMediaName.java @@ -0,0 +1,193 @@ +/* + * Copyright 2023 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.maps.places.v1; + +import com.google.api.pathtemplate.PathTemplate; +import com.google.api.resourcenames.ResourceName; +import com.google.common.base.Preconditions; +import com.google.common.collect.ImmutableMap; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import javax.annotation.Generated; + +// AUTO-GENERATED DOCUMENTATION AND CLASS. +@Generated("by gapic-generator-java") +public class PhotoMediaName implements ResourceName { + private static final PathTemplate PLACE_ID_PHOTO_REFERENCE = + PathTemplate.createWithoutUrlEncoding("places/{place_id}/photos/{photo_reference}/media"); + private volatile Map fieldValuesMap; + private final String placeId; + private final String photoReference; + + @Deprecated + protected PhotoMediaName() { + placeId = null; + photoReference = null; + } + + private PhotoMediaName(Builder builder) { + placeId = Preconditions.checkNotNull(builder.getPlaceId()); + photoReference = Preconditions.checkNotNull(builder.getPhotoReference()); + } + + public String getPlaceId() { + return placeId; + } + + public String getPhotoReference() { + return photoReference; + } + + public static Builder newBuilder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder(this); + } + + public static PhotoMediaName of(String placeId, String photoReference) { + return newBuilder().setPlaceId(placeId).setPhotoReference(photoReference).build(); + } + + public static String format(String placeId, String photoReference) { + return newBuilder().setPlaceId(placeId).setPhotoReference(photoReference).build().toString(); + } + + public static PhotoMediaName parse(String formattedString) { + if (formattedString.isEmpty()) { + return null; + } + Map matchMap = + PLACE_ID_PHOTO_REFERENCE.validatedMatch( + formattedString, "PhotoMediaName.parse: formattedString not in valid format"); + return of(matchMap.get("place_id"), matchMap.get("photo_reference")); + } + + public static List parseList(List formattedStrings) { + List list = new ArrayList<>(formattedStrings.size()); + for (String formattedString : formattedStrings) { + list.add(parse(formattedString)); + } + return list; + } + + public static List toStringList(List values) { + List list = new ArrayList<>(values.size()); + for (PhotoMediaName value : values) { + if (value == null) { + list.add(""); + } else { + list.add(value.toString()); + } + } + return list; + } + + public static boolean isParsableFrom(String formattedString) { + return PLACE_ID_PHOTO_REFERENCE.matches(formattedString); + } + + @Override + public Map getFieldValuesMap() { + if (fieldValuesMap == null) { + synchronized (this) { + if (fieldValuesMap == null) { + ImmutableMap.Builder fieldMapBuilder = ImmutableMap.builder(); + if (placeId != null) { + fieldMapBuilder.put("place_id", placeId); + } + if (photoReference != null) { + fieldMapBuilder.put("photo_reference", photoReference); + } + fieldValuesMap = fieldMapBuilder.build(); + } + } + } + return fieldValuesMap; + } + + public String getFieldValue(String fieldName) { + return getFieldValuesMap().get(fieldName); + } + + @Override + public String toString() { + return PLACE_ID_PHOTO_REFERENCE.instantiate( + "place_id", placeId, "photo_reference", photoReference); + } + + @Override + public boolean equals(Object o) { + if (o == this) { + return true; + } + if (o != null && getClass() == o.getClass()) { + PhotoMediaName that = ((PhotoMediaName) o); + return Objects.equals(this.placeId, that.placeId) + && Objects.equals(this.photoReference, that.photoReference); + } + return false; + } + + @Override + public int hashCode() { + int h = 1; + h *= 1000003; + h ^= Objects.hashCode(placeId); + h *= 1000003; + h ^= Objects.hashCode(photoReference); + return h; + } + + /** Builder for places/{place_id}/photos/{photo_reference}/media. */ + public static class Builder { + private String placeId; + private String photoReference; + + protected Builder() {} + + public String getPlaceId() { + return placeId; + } + + public String getPhotoReference() { + return photoReference; + } + + public Builder setPlaceId(String placeId) { + this.placeId = placeId; + return this; + } + + public Builder setPhotoReference(String photoReference) { + this.photoReference = photoReference; + return this; + } + + private Builder(PhotoMediaName photoMediaName) { + this.placeId = photoMediaName.placeId; + this.photoReference = photoMediaName.photoReference; + } + + public PhotoMediaName build() { + return new PhotoMediaName(this); + } + } +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Int32RangeOrBuilder.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoMediaOrBuilder.java similarity index 54% rename from java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Int32RangeOrBuilder.java rename to java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoMediaOrBuilder.java index 7ab695aa9747..23eb21581525 100644 --- a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Int32RangeOrBuilder.java +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoMediaOrBuilder.java @@ -18,58 +18,60 @@ package com.google.maps.places.v1; -public interface Int32RangeOrBuilder +public interface PhotoMediaOrBuilder extends - // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Int32Range) + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.PhotoMedia) com.google.protobuf.MessageOrBuilder { /** * * *
-   * Lower bound. If unset, behavior is documented on the range field.
+   * The resource name of a photo. It is returned in Place's photos.name field.
+   * Format: places/<place_id>/photos/<photo_reference>/media.
    * 
* - * optional int32 min = 1; + * string name = 1; * - * @return Whether the min field is set. + * @return The name. */ - boolean hasMin(); + java.lang.String getName(); /** * * *
-   * Lower bound. If unset, behavior is documented on the range field.
+   * The resource name of a photo. It is returned in Place's photos.name field.
+   * Format: places/<place_id>/photos/<photo_reference>/media.
    * 
* - * optional int32 min = 1; + * string name = 1; * - * @return The min. + * @return The bytes for name. */ - int getMin(); + com.google.protobuf.ByteString getNameBytes(); /** * * *
-   * Upper bound. If unset, behavior is documented on the range field.
+   * A short-lived uri that can be used to render the photo.
    * 
* - * optional int32 max = 2; + * string photo_uri = 2; * - * @return Whether the max field is set. + * @return The photoUri. */ - boolean hasMax(); + java.lang.String getPhotoUri(); /** * * *
-   * Upper bound. If unset, behavior is documented on the range field.
+   * A short-lived uri that can be used to render the photo.
    * 
* - * optional int32 max = 2; + * string photo_uri = 2; * - * @return The max. + * @return The bytes for photoUri. */ - int getMax(); + com.google.protobuf.ByteString getPhotoUriBytes(); } diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoOrBuilder.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoOrBuilder.java new file mode 100644 index 000000000000..631a270605a1 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoOrBuilder.java @@ -0,0 +1,142 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/photo.proto + +package com.google.maps.places.v1; + +public interface PhotoOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Photo) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Output only. A reference representing this place photo which may be used to
+   * look up this place photo again (a.k.a. the API "resource" name:
+   * places/{place_id}/photos/{photo}).
+   * 
+ * + * string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The name. + */ + java.lang.String getName(); + /** + * + * + *
+   * Output only. A reference representing this place photo which may be used to
+   * look up this place photo again (a.k.a. the API "resource" name:
+   * places/{place_id}/photos/{photo}).
+   * 
+ * + * string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for name. + */ + com.google.protobuf.ByteString getNameBytes(); + + /** + * + * + *
+   * Output only. The maximum available width, in pixels.
+   * 
+ * + * int32 width_px = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The widthPx. + */ + int getWidthPx(); + + /** + * + * + *
+   * Output only. The maximum available height, in pixels.
+   * 
+ * + * int32 height_px = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The heightPx. + */ + int getHeightPx(); + + /** + * + * + *
+   * Output only. This photo's authors.
+   * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List getAuthorAttributionsList(); + /** + * + * + *
+   * Output only. This photo's authors.
+   * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.AuthorAttribution getAuthorAttributions(int index); + /** + * + * + *
+   * Output only. This photo's authors.
+   * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + int getAuthorAttributionsCount(); + /** + * + * + *
+   * Output only. This photo's authors.
+   * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List + getAuthorAttributionsOrBuilderList(); + /** + * + * + *
+   * Output only. This photo's authors.
+   * 
+ * + * + * repeated .google.maps.places.v1.AuthorAttribution author_attributions = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.AuthorAttributionOrBuilder getAuthorAttributionsOrBuilder(int index); +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoProto.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoProto.java new file mode 100644 index 000000000000..883fec68b385 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PhotoProto.java @@ -0,0 +1,87 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/photo.proto + +package com.google.maps.places.v1; + +public final class PhotoProto { + private PhotoProto() {} + + public static void registerAllExtensions(com.google.protobuf.ExtensionRegistryLite registry) {} + + public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions((com.google.protobuf.ExtensionRegistryLite) registry); + } + + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_maps_places_v1_Photo_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_maps_places_v1_Photo_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + return descriptor; + } + + private static com.google.protobuf.Descriptors.FileDescriptor descriptor; + + static { + java.lang.String[] descriptorData = { + "\n!google/maps/places/v1/photo.proto\022\025goo" + + "gle.maps.places.v1\032\037google/api/field_beh" + + "avior.proto\032\031google/api/resource.proto\032\'" + + "google/maps/places/v1/attribution.proto\"" + + "\351\001\n\005Photo\022\022\n\004name\030\001 \001(\tB\004\342A\001\003\022\026\n\010width_p" + + "x\030\002 \001(\005B\004\342A\001\003\022\027\n\theight_px\030\003 \001(\005B\004\342A\001\003\022K" + + "\n\023author_attributions\030\004 \003(\0132(.google.map" + + "s.places.v1.AuthorAttributionB\004\342A\001\003:N\352AK" + + "\n\033places.googleapis.com/Photo\022\035places/{p" + + "lace}/photos/{photo}*\006photos2\005photoB\236\001\n\031" + + "com.google.maps.places.v1B\nPhotoProtoP\001Z" + + "7cloud.google.com/go/maps/places/apiv1/p" + + "lacespb;placespb\370\001\001\242\002\006GMPSV1\252\002\025Google.Ma" + + "ps.Places.V1\312\002\025Google\\Maps\\Places\\V1b\006pr" + + "oto3" + }; + 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.maps.places.v1.AttributionProto.getDescriptor(), + }); + internal_static_google_maps_places_v1_Photo_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_google_maps_places_v1_Photo_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_Photo_descriptor, + new java.lang.String[] { + "Name", "WidthPx", "HeightPx", "AuthorAttributions", + }); + com.google.protobuf.ExtensionRegistry registry = + com.google.protobuf.ExtensionRegistry.newInstance(); + registry.add(com.google.api.FieldBehaviorProto.fieldBehavior); + registry.add(com.google.api.ResourceProto.resource); + com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor( + descriptor, registry); + com.google.api.FieldBehaviorProto.getDescriptor(); + com.google.api.ResourceProto.getDescriptor(); + com.google.maps.places.v1.AttributionProto.getDescriptor(); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Place.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Place.java index 2af713663ae0..c7c140fd6b36 100644 --- a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Place.java +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Place.java @@ -38,8 +38,9 @@ private Place(com.google.protobuf.GeneratedMessageV3.Builder builder) { } private Place() { + name_ = ""; id_ = ""; - types_ = com.google.protobuf.LazyStringArrayList.EMPTY; + types_ = com.google.protobuf.LazyStringArrayList.emptyList(); nationalPhoneNumber_ = ""; internationalPhoneNumber_ = ""; formattedAddress_ = ""; @@ -47,6 +48,7 @@ private Place() { googleMapsUri_ = ""; websiteUri_ = ""; reviews_ = java.util.Collections.emptyList(); + photos_ = java.util.Collections.emptyList(); adrFormatAddress_ = ""; businessStatus_ = 0; priceLevel_ = 0; @@ -54,7 +56,8 @@ private Place() { iconMaskBaseUri_ = ""; iconBackgroundColor_ = ""; currentSecondaryOpeningHours_ = java.util.Collections.emptyList(); - secondaryOpeningHours_ = java.util.Collections.emptyList(); + regularSecondaryOpeningHours_ = java.util.Collections.emptyList(); + subDestinations_ = java.util.Collections.emptyList(); } @java.lang.Override @@ -63,11 +66,6 @@ protected java.lang.Object newInstance(UnusedPrivateParameter unused) { return new Place(); } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; - } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlaceProto .internal_static_google_maps_places_v1_Place_descriptor; @@ -270,12 +268,12 @@ public interface AddressComponentOrBuilder * * *
-     * The full text description or name of the address component. For example,
-     * an address component for the country Australia may have a long_name of
-     * "Australia".
+     * Output only. The full text description or name of the address component.
+     * For example, an address component for the country Australia may have a
+     * long_name of "Australia".
      * 
* - * string long_text = 1; + * string long_text = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The longText. */ @@ -284,12 +282,12 @@ public interface AddressComponentOrBuilder * * *
-     * The full text description or name of the address component. For example,
-     * an address component for the country Australia may have a long_name of
-     * "Australia".
+     * Output only. The full text description or name of the address component.
+     * For example, an address component for the country Australia may have a
+     * long_name of "Australia".
      * 
* - * string long_text = 1; + * string long_text = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for longText. */ @@ -299,12 +297,12 @@ public interface AddressComponentOrBuilder * * *
-     * An abbreviated textual name for the address component, if available. For
-     * example, an address component for the country of Australia may have a
-     * short_name of "AU".
+     * Output only. An abbreviated textual name for the address component, if
+     * available. For example, an address component for the country of Australia
+     * may have a short_name of "AU".
      * 
* - * string short_text = 2; + * string short_text = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The shortText. */ @@ -313,12 +311,12 @@ public interface AddressComponentOrBuilder * * *
-     * An abbreviated textual name for the address component, if available. For
-     * example, an address component for the country of Australia may have a
-     * short_name of "AU".
+     * Output only. An abbreviated textual name for the address component, if
+     * available. For example, an address component for the country of Australia
+     * may have a short_name of "AU".
      * 
* - * string short_text = 2; + * string short_text = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for shortText. */ @@ -328,10 +326,10 @@ public interface AddressComponentOrBuilder * * *
-     * An array indicating the type(s) of the address component.
+     * Output only. An array indicating the type(s) of the address component.
      * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return A list containing the types. */ @@ -340,10 +338,10 @@ public interface AddressComponentOrBuilder * * *
-     * An array indicating the type(s) of the address component.
+     * Output only. An array indicating the type(s) of the address component.
      * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The count of types. */ @@ -352,10 +350,10 @@ public interface AddressComponentOrBuilder * * *
-     * An array indicating the type(s) of the address component.
+     * Output only. An array indicating the type(s) of the address component.
      * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param index The index of the element to return. * @return The types at the given index. @@ -365,10 +363,10 @@ public interface AddressComponentOrBuilder * * *
-     * An array indicating the type(s) of the address component.
+     * Output only. An array indicating the type(s) of the address component.
      * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param index The index of the value to return. * @return The bytes of the types at the given index. @@ -379,10 +377,11 @@ public interface AddressComponentOrBuilder * * *
-     * The language used to format this components, in CLDR notation.
+     * Output only. The language used to format this components, in CLDR
+     * notation.
      * 
* - * string language_code = 4; + * string language_code = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The languageCode. */ @@ -391,10 +390,11 @@ public interface AddressComponentOrBuilder * * *
-     * The language used to format this components, in CLDR notation.
+     * Output only. The language used to format this components, in CLDR
+     * notation.
      * 
* - * string language_code = 4; + * string language_code = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for languageCode. */ @@ -423,7 +423,7 @@ private AddressComponent(com.google.protobuf.GeneratedMessageV3.Builder build private AddressComponent() { longText_ = ""; shortText_ = ""; - types_ = com.google.protobuf.LazyStringArrayList.EMPTY; + types_ = com.google.protobuf.LazyStringArrayList.emptyList(); languageCode_ = ""; } @@ -433,11 +433,6 @@ protected java.lang.Object newInstance(UnusedPrivateParameter unused) { return new AddressComponent(); } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; - } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlaceProto .internal_static_google_maps_places_v1_Place_AddressComponent_descriptor; @@ -461,12 +456,12 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
-     * The full text description or name of the address component. For example,
-     * an address component for the country Australia may have a long_name of
-     * "Australia".
+     * Output only. The full text description or name of the address component.
+     * For example, an address component for the country Australia may have a
+     * long_name of "Australia".
      * 
* - * string long_text = 1; + * string long_text = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The longText. */ @@ -486,12 +481,12 @@ public java.lang.String getLongText() { * * *
-     * The full text description or name of the address component. For example,
-     * an address component for the country Australia may have a long_name of
-     * "Australia".
+     * Output only. The full text description or name of the address component.
+     * For example, an address component for the country Australia may have a
+     * long_name of "Australia".
      * 
* - * string long_text = 1; + * string long_text = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for longText. */ @@ -516,12 +511,12 @@ public com.google.protobuf.ByteString getLongTextBytes() { * * *
-     * An abbreviated textual name for the address component, if available. For
-     * example, an address component for the country of Australia may have a
-     * short_name of "AU".
+     * Output only. An abbreviated textual name for the address component, if
+     * available. For example, an address component for the country of Australia
+     * may have a short_name of "AU".
      * 
* - * string short_text = 2; + * string short_text = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The shortText. */ @@ -541,12 +536,12 @@ public java.lang.String getShortText() { * * *
-     * An abbreviated textual name for the address component, if available. For
-     * example, an address component for the country of Australia may have a
-     * short_name of "AU".
+     * Output only. An abbreviated textual name for the address component, if
+     * available. For example, an address component for the country of Australia
+     * may have a short_name of "AU".
      * 
* - * string short_text = 2; + * string short_text = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for shortText. */ @@ -566,15 +561,16 @@ public com.google.protobuf.ByteString getShortTextBytes() { public static final int TYPES_FIELD_NUMBER = 3; @SuppressWarnings("serial") - private com.google.protobuf.LazyStringList types_; + private com.google.protobuf.LazyStringArrayList types_ = + com.google.protobuf.LazyStringArrayList.emptyList(); /** * * *
-     * An array indicating the type(s) of the address component.
+     * Output only. An array indicating the type(s) of the address component.
      * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return A list containing the types. */ @@ -585,10 +581,10 @@ public com.google.protobuf.ProtocolStringList getTypesList() { * * *
-     * An array indicating the type(s) of the address component.
+     * Output only. An array indicating the type(s) of the address component.
      * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The count of types. */ @@ -599,10 +595,10 @@ public int getTypesCount() { * * *
-     * An array indicating the type(s) of the address component.
+     * Output only. An array indicating the type(s) of the address component.
      * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param index The index of the element to return. * @return The types at the given index. @@ -614,10 +610,10 @@ public java.lang.String getTypes(int index) { * * *
-     * An array indicating the type(s) of the address component.
+     * Output only. An array indicating the type(s) of the address component.
      * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param index The index of the value to return. * @return The bytes of the types at the given index. @@ -634,10 +630,11 @@ public com.google.protobuf.ByteString getTypesBytes(int index) { * * *
-     * The language used to format this components, in CLDR notation.
+     * Output only. The language used to format this components, in CLDR
+     * notation.
      * 
* - * string language_code = 4; + * string language_code = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The languageCode. */ @@ -657,10 +654,11 @@ public java.lang.String getLanguageCode() { * * *
-     * The language used to format this components, in CLDR notation.
+     * Output only. The language used to format this components, in CLDR
+     * notation.
      * 
* - * string language_code = 4; + * string language_code = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for languageCode. */ @@ -914,8 +912,7 @@ public Builder clear() { bitField0_ = 0; longText_ = ""; shortText_ = ""; - types_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000004); + types_ = com.google.protobuf.LazyStringArrayList.emptyList(); languageCode_ = ""; return this; } @@ -944,7 +941,6 @@ public com.google.maps.places.v1.Place.AddressComponent build() { public com.google.maps.places.v1.Place.AddressComponent buildPartial() { com.google.maps.places.v1.Place.AddressComponent result = new com.google.maps.places.v1.Place.AddressComponent(this); - buildPartialRepeatedFields(result); if (bitField0_ != 0) { buildPartial0(result); } @@ -952,15 +948,6 @@ public com.google.maps.places.v1.Place.AddressComponent buildPartial() { return result; } - private void buildPartialRepeatedFields( - com.google.maps.places.v1.Place.AddressComponent result) { - if (((bitField0_ & 0x00000004) != 0)) { - types_ = types_.getUnmodifiableView(); - bitField0_ = (bitField0_ & ~0x00000004); - } - result.types_ = types_; - } - private void buildPartial0(com.google.maps.places.v1.Place.AddressComponent result) { int from_bitField0_ = bitField0_; if (((from_bitField0_ & 0x00000001) != 0)) { @@ -969,6 +956,10 @@ private void buildPartial0(com.google.maps.places.v1.Place.AddressComponent resu if (((from_bitField0_ & 0x00000002) != 0)) { result.shortText_ = shortText_; } + if (((from_bitField0_ & 0x00000004) != 0)) { + types_.makeImmutable(); + result.types_ = types_; + } if (((from_bitField0_ & 0x00000008) != 0)) { result.languageCode_ = languageCode_; } @@ -1035,7 +1026,7 @@ public Builder mergeFrom(com.google.maps.places.v1.Place.AddressComponent other) if (!other.types_.isEmpty()) { if (types_.isEmpty()) { types_ = other.types_; - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ |= 0x00000004; } else { ensureTypesIsMutable(); types_.addAll(other.types_); @@ -1122,12 +1113,12 @@ public Builder mergeFrom( * * *
-       * The full text description or name of the address component. For example,
-       * an address component for the country Australia may have a long_name of
-       * "Australia".
+       * Output only. The full text description or name of the address component.
+       * For example, an address component for the country Australia may have a
+       * long_name of "Australia".
        * 
* - * string long_text = 1; + * string long_text = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The longText. */ @@ -1146,12 +1137,12 @@ public java.lang.String getLongText() { * * *
-       * The full text description or name of the address component. For example,
-       * an address component for the country Australia may have a long_name of
-       * "Australia".
+       * Output only. The full text description or name of the address component.
+       * For example, an address component for the country Australia may have a
+       * long_name of "Australia".
        * 
* - * string long_text = 1; + * string long_text = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for longText. */ @@ -1170,12 +1161,12 @@ public com.google.protobuf.ByteString getLongTextBytes() { * * *
-       * The full text description or name of the address component. For example,
-       * an address component for the country Australia may have a long_name of
-       * "Australia".
+       * Output only. The full text description or name of the address component.
+       * For example, an address component for the country Australia may have a
+       * long_name of "Australia".
        * 
* - * string long_text = 1; + * string long_text = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The longText to set. * @return This builder for chaining. @@ -1193,12 +1184,12 @@ public Builder setLongText(java.lang.String value) { * * *
-       * The full text description or name of the address component. For example,
-       * an address component for the country Australia may have a long_name of
-       * "Australia".
+       * Output only. The full text description or name of the address component.
+       * For example, an address component for the country Australia may have a
+       * long_name of "Australia".
        * 
* - * string long_text = 1; + * string long_text = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ @@ -1212,12 +1203,12 @@ public Builder clearLongText() { * * *
-       * The full text description or name of the address component. For example,
-       * an address component for the country Australia may have a long_name of
-       * "Australia".
+       * Output only. The full text description or name of the address component.
+       * For example, an address component for the country Australia may have a
+       * long_name of "Australia".
        * 
* - * string long_text = 1; + * string long_text = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The bytes for longText to set. * @return This builder for chaining. @@ -1238,12 +1229,12 @@ public Builder setLongTextBytes(com.google.protobuf.ByteString value) { * * *
-       * An abbreviated textual name for the address component, if available. For
-       * example, an address component for the country of Australia may have a
-       * short_name of "AU".
+       * Output only. An abbreviated textual name for the address component, if
+       * available. For example, an address component for the country of Australia
+       * may have a short_name of "AU".
        * 
* - * string short_text = 2; + * string short_text = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The shortText. */ @@ -1262,12 +1253,12 @@ public java.lang.String getShortText() { * * *
-       * An abbreviated textual name for the address component, if available. For
-       * example, an address component for the country of Australia may have a
-       * short_name of "AU".
+       * Output only. An abbreviated textual name for the address component, if
+       * available. For example, an address component for the country of Australia
+       * may have a short_name of "AU".
        * 
* - * string short_text = 2; + * string short_text = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for shortText. */ @@ -1286,12 +1277,12 @@ public com.google.protobuf.ByteString getShortTextBytes() { * * *
-       * An abbreviated textual name for the address component, if available. For
-       * example, an address component for the country of Australia may have a
-       * short_name of "AU".
+       * Output only. An abbreviated textual name for the address component, if
+       * available. For example, an address component for the country of Australia
+       * may have a short_name of "AU".
        * 
* - * string short_text = 2; + * string short_text = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The shortText to set. * @return This builder for chaining. @@ -1309,12 +1300,12 @@ public Builder setShortText(java.lang.String value) { * * *
-       * An abbreviated textual name for the address component, if available. For
-       * example, an address component for the country of Australia may have a
-       * short_name of "AU".
+       * Output only. An abbreviated textual name for the address component, if
+       * available. For example, an address component for the country of Australia
+       * may have a short_name of "AU".
        * 
* - * string short_text = 2; + * string short_text = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ @@ -1328,12 +1319,12 @@ public Builder clearShortText() { * * *
-       * An abbreviated textual name for the address component, if available. For
-       * example, an address component for the country of Australia may have a
-       * short_name of "AU".
+       * Output only. An abbreviated textual name for the address component, if
+       * available. For example, an address component for the country of Australia
+       * may have a short_name of "AU".
        * 
* - * string short_text = 2; + * string short_text = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The bytes for shortText to set. * @return This builder for chaining. @@ -1349,37 +1340,38 @@ public Builder setShortTextBytes(com.google.protobuf.ByteString value) { return this; } - private com.google.protobuf.LazyStringList types_ = - com.google.protobuf.LazyStringArrayList.EMPTY; + private com.google.protobuf.LazyStringArrayList types_ = + com.google.protobuf.LazyStringArrayList.emptyList(); private void ensureTypesIsMutable() { - if (!((bitField0_ & 0x00000004) != 0)) { + if (!types_.isModifiable()) { types_ = new com.google.protobuf.LazyStringArrayList(types_); - bitField0_ |= 0x00000004; } + bitField0_ |= 0x00000004; } /** * * *
-       * An array indicating the type(s) of the address component.
+       * Output only. An array indicating the type(s) of the address component.
        * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return A list containing the types. */ public com.google.protobuf.ProtocolStringList getTypesList() { - return types_.getUnmodifiableView(); + types_.makeImmutable(); + return types_; } /** * * *
-       * An array indicating the type(s) of the address component.
+       * Output only. An array indicating the type(s) of the address component.
        * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The count of types. */ @@ -1390,10 +1382,10 @@ public int getTypesCount() { * * *
-       * An array indicating the type(s) of the address component.
+       * Output only. An array indicating the type(s) of the address component.
        * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param index The index of the element to return. * @return The types at the given index. @@ -1405,10 +1397,10 @@ public java.lang.String getTypes(int index) { * * *
-       * An array indicating the type(s) of the address component.
+       * Output only. An array indicating the type(s) of the address component.
        * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param index The index of the value to return. * @return The bytes of the types at the given index. @@ -1420,10 +1412,10 @@ public com.google.protobuf.ByteString getTypesBytes(int index) { * * *
-       * An array indicating the type(s) of the address component.
+       * Output only. An array indicating the type(s) of the address component.
        * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param index The index to set the value at. * @param value The types to set. @@ -1435,6 +1427,7 @@ public Builder setTypes(int index, java.lang.String value) { } ensureTypesIsMutable(); types_.set(index, value); + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -1442,10 +1435,10 @@ public Builder setTypes(int index, java.lang.String value) { * * *
-       * An array indicating the type(s) of the address component.
+       * Output only. An array indicating the type(s) of the address component.
        * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The types to add. * @return This builder for chaining. @@ -1456,6 +1449,7 @@ public Builder addTypes(java.lang.String value) { } ensureTypesIsMutable(); types_.add(value); + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -1463,10 +1457,10 @@ public Builder addTypes(java.lang.String value) { * * *
-       * An array indicating the type(s) of the address component.
+       * Output only. An array indicating the type(s) of the address component.
        * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param values The types to add. * @return This builder for chaining. @@ -1474,6 +1468,7 @@ public Builder addTypes(java.lang.String value) { public Builder addAllTypes(java.lang.Iterable values) { ensureTypesIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll(values, types_); + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -1481,16 +1476,17 @@ public Builder addAllTypes(java.lang.Iterable values) { * * *
-       * An array indicating the type(s) of the address component.
+       * Output only. An array indicating the type(s) of the address component.
        * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ public Builder clearTypes() { - types_ = com.google.protobuf.LazyStringArrayList.EMPTY; + types_ = com.google.protobuf.LazyStringArrayList.emptyList(); bitField0_ = (bitField0_ & ~0x00000004); + ; onChanged(); return this; } @@ -1498,10 +1494,10 @@ public Builder clearTypes() { * * *
-       * An array indicating the type(s) of the address component.
+       * Output only. An array indicating the type(s) of the address component.
        * 
* - * repeated string types = 3; + * repeated string types = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The bytes of the types to add. * @return This builder for chaining. @@ -1513,6 +1509,7 @@ public Builder addTypesBytes(com.google.protobuf.ByteString value) { checkByteStringIsUtf8(value); ensureTypesIsMutable(); types_.add(value); + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -1522,10 +1519,11 @@ public Builder addTypesBytes(com.google.protobuf.ByteString value) { * * *
-       * The language used to format this components, in CLDR notation.
+       * Output only. The language used to format this components, in CLDR
+       * notation.
        * 
* - * string language_code = 4; + * string language_code = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The languageCode. */ @@ -1544,10 +1542,11 @@ public java.lang.String getLanguageCode() { * * *
-       * The language used to format this components, in CLDR notation.
+       * Output only. The language used to format this components, in CLDR
+       * notation.
        * 
* - * string language_code = 4; + * string language_code = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for languageCode. */ @@ -1566,10 +1565,11 @@ public com.google.protobuf.ByteString getLanguageCodeBytes() { * * *
-       * The language used to format this components, in CLDR notation.
+       * Output only. The language used to format this components, in CLDR
+       * notation.
        * 
* - * string language_code = 4; + * string language_code = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The languageCode to set. * @return This builder for chaining. @@ -1587,10 +1587,11 @@ public Builder setLanguageCode(java.lang.String value) { * * *
-       * The language used to format this components, in CLDR notation.
+       * Output only. The language used to format this components, in CLDR
+       * notation.
        * 
* - * string language_code = 4; + * string language_code = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ @@ -1604,10 +1605,11 @@ public Builder clearLanguageCode() { * * *
-       * The language used to format this components, in CLDR notation.
+       * Output only. The language used to format this components, in CLDR
+       * notation.
        * 
* - * string language_code = 4; + * string language_code = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The bytes for languageCode to set. * @return This builder for chaining. @@ -1696,11 +1698,11 @@ public interface PlusCodeOrBuilder * * *
-     * Place's global (full) code, such as `9FWM33GV+HQ`, representing an
-     * 1/8000 by 1/8000 degree area (~14 by 14 meters).
+     * Output only. Place's global (full) code, such as "9FWM33GV+HQ",
+     * representing an 1/8000 by 1/8000 degree area (~14 by 14 meters).
      * 
* - * string global_code = 1; + * string global_code = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The globalCode. */ @@ -1709,11 +1711,11 @@ public interface PlusCodeOrBuilder * * *
-     * Place's global (full) code, such as `9FWM33GV+HQ`, representing an
-     * 1/8000 by 1/8000 degree area (~14 by 14 meters).
+     * Output only. Place's global (full) code, such as "9FWM33GV+HQ",
+     * representing an 1/8000 by 1/8000 degree area (~14 by 14 meters).
      * 
* - * string global_code = 1; + * string global_code = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for globalCode. */ @@ -1723,12 +1725,12 @@ public interface PlusCodeOrBuilder * * *
-     * Place's compound code, such as `33GV+HQ, Ramberg, Norway`, containing
-     * the suffix of the global code and replacing the prefix with a formatted
-     * name of a reference entity.
+     * Output only. Place's compound code, such as "33GV+HQ, Ramberg, Norway",
+     * containing the suffix of the global code and replacing the prefix with a
+     * formatted name of a reference entity.
      * 
* - * string compound_code = 2; + * string compound_code = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The compoundCode. */ @@ -1737,12 +1739,12 @@ public interface PlusCodeOrBuilder * * *
-     * Place's compound code, such as `33GV+HQ, Ramberg, Norway`, containing
-     * the suffix of the global code and replacing the prefix with a formatted
-     * name of a reference entity.
+     * Output only. Place's compound code, such as "33GV+HQ, Ramberg, Norway",
+     * containing the suffix of the global code and replacing the prefix with a
+     * formatted name of a reference entity.
      * 
* - * string compound_code = 2; + * string compound_code = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for compoundCode. */ @@ -1780,11 +1782,6 @@ protected java.lang.Object newInstance(UnusedPrivateParameter unused) { return new PlusCode(); } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; - } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlaceProto .internal_static_google_maps_places_v1_Place_PlusCode_descriptor; @@ -1808,11 +1805,11 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
-     * Place's global (full) code, such as `9FWM33GV+HQ`, representing an
-     * 1/8000 by 1/8000 degree area (~14 by 14 meters).
+     * Output only. Place's global (full) code, such as "9FWM33GV+HQ",
+     * representing an 1/8000 by 1/8000 degree area (~14 by 14 meters).
      * 
* - * string global_code = 1; + * string global_code = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The globalCode. */ @@ -1832,11 +1829,11 @@ public java.lang.String getGlobalCode() { * * *
-     * Place's global (full) code, such as `9FWM33GV+HQ`, representing an
-     * 1/8000 by 1/8000 degree area (~14 by 14 meters).
+     * Output only. Place's global (full) code, such as "9FWM33GV+HQ",
+     * representing an 1/8000 by 1/8000 degree area (~14 by 14 meters).
      * 
* - * string global_code = 1; + * string global_code = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for globalCode. */ @@ -1861,12 +1858,12 @@ public com.google.protobuf.ByteString getGlobalCodeBytes() { * * *
-     * Place's compound code, such as `33GV+HQ, Ramberg, Norway`, containing
-     * the suffix of the global code and replacing the prefix with a formatted
-     * name of a reference entity.
+     * Output only. Place's compound code, such as "33GV+HQ, Ramberg, Norway",
+     * containing the suffix of the global code and replacing the prefix with a
+     * formatted name of a reference entity.
      * 
* - * string compound_code = 2; + * string compound_code = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The compoundCode. */ @@ -1886,12 +1883,12 @@ public java.lang.String getCompoundCode() { * * *
-     * Place's compound code, such as `33GV+HQ, Ramberg, Norway`, containing
-     * the suffix of the global code and replacing the prefix with a formatted
-     * name of a reference entity.
+     * Output only. Place's compound code, such as "33GV+HQ, Ramberg, Norway",
+     * containing the suffix of the global code and replacing the prefix with a
+     * formatted name of a reference entity.
      * 
* - * string compound_code = 2; + * string compound_code = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for compoundCode. */ @@ -2284,11 +2281,11 @@ public Builder mergeFrom( * * *
-       * Place's global (full) code, such as `9FWM33GV+HQ`, representing an
-       * 1/8000 by 1/8000 degree area (~14 by 14 meters).
+       * Output only. Place's global (full) code, such as "9FWM33GV+HQ",
+       * representing an 1/8000 by 1/8000 degree area (~14 by 14 meters).
        * 
* - * string global_code = 1; + * string global_code = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The globalCode. */ @@ -2307,11 +2304,11 @@ public java.lang.String getGlobalCode() { * * *
-       * Place's global (full) code, such as `9FWM33GV+HQ`, representing an
-       * 1/8000 by 1/8000 degree area (~14 by 14 meters).
+       * Output only. Place's global (full) code, such as "9FWM33GV+HQ",
+       * representing an 1/8000 by 1/8000 degree area (~14 by 14 meters).
        * 
* - * string global_code = 1; + * string global_code = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for globalCode. */ @@ -2330,11 +2327,11 @@ public com.google.protobuf.ByteString getGlobalCodeBytes() { * * *
-       * Place's global (full) code, such as `9FWM33GV+HQ`, representing an
-       * 1/8000 by 1/8000 degree area (~14 by 14 meters).
+       * Output only. Place's global (full) code, such as "9FWM33GV+HQ",
+       * representing an 1/8000 by 1/8000 degree area (~14 by 14 meters).
        * 
* - * string global_code = 1; + * string global_code = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The globalCode to set. * @return This builder for chaining. @@ -2352,11 +2349,11 @@ public Builder setGlobalCode(java.lang.String value) { * * *
-       * Place's global (full) code, such as `9FWM33GV+HQ`, representing an
-       * 1/8000 by 1/8000 degree area (~14 by 14 meters).
+       * Output only. Place's global (full) code, such as "9FWM33GV+HQ",
+       * representing an 1/8000 by 1/8000 degree area (~14 by 14 meters).
        * 
* - * string global_code = 1; + * string global_code = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ @@ -2370,11 +2367,11 @@ public Builder clearGlobalCode() { * * *
-       * Place's global (full) code, such as `9FWM33GV+HQ`, representing an
-       * 1/8000 by 1/8000 degree area (~14 by 14 meters).
+       * Output only. Place's global (full) code, such as "9FWM33GV+HQ",
+       * representing an 1/8000 by 1/8000 degree area (~14 by 14 meters).
        * 
* - * string global_code = 1; + * string global_code = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The bytes for globalCode to set. * @return This builder for chaining. @@ -2395,12 +2392,12 @@ public Builder setGlobalCodeBytes(com.google.protobuf.ByteString value) { * * *
-       * Place's compound code, such as `33GV+HQ, Ramberg, Norway`, containing
-       * the suffix of the global code and replacing the prefix with a formatted
-       * name of a reference entity.
+       * Output only. Place's compound code, such as "33GV+HQ, Ramberg, Norway",
+       * containing the suffix of the global code and replacing the prefix with a
+       * formatted name of a reference entity.
        * 
* - * string compound_code = 2; + * string compound_code = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The compoundCode. */ @@ -2419,12 +2416,12 @@ public java.lang.String getCompoundCode() { * * *
-       * Place's compound code, such as `33GV+HQ, Ramberg, Norway`, containing
-       * the suffix of the global code and replacing the prefix with a formatted
-       * name of a reference entity.
+       * Output only. Place's compound code, such as "33GV+HQ, Ramberg, Norway",
+       * containing the suffix of the global code and replacing the prefix with a
+       * formatted name of a reference entity.
        * 
* - * string compound_code = 2; + * string compound_code = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for compoundCode. */ @@ -2443,12 +2440,12 @@ public com.google.protobuf.ByteString getCompoundCodeBytes() { * * *
-       * Place's compound code, such as `33GV+HQ, Ramberg, Norway`, containing
-       * the suffix of the global code and replacing the prefix with a formatted
-       * name of a reference entity.
+       * Output only. Place's compound code, such as "33GV+HQ, Ramberg, Norway",
+       * containing the suffix of the global code and replacing the prefix with a
+       * formatted name of a reference entity.
        * 
* - * string compound_code = 2; + * string compound_code = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The compoundCode to set. * @return This builder for chaining. @@ -2466,12 +2463,12 @@ public Builder setCompoundCode(java.lang.String value) { * * *
-       * Place's compound code, such as `33GV+HQ, Ramberg, Norway`, containing
-       * the suffix of the global code and replacing the prefix with a formatted
-       * name of a reference entity.
+       * Output only. Place's compound code, such as "33GV+HQ, Ramberg, Norway",
+       * containing the suffix of the global code and replacing the prefix with a
+       * formatted name of a reference entity.
        * 
* - * string compound_code = 2; + * string compound_code = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ @@ -2485,12 +2482,12 @@ public Builder clearCompoundCode() { * * *
-       * Place's compound code, such as `33GV+HQ, Ramberg, Norway`, containing
-       * the suffix of the global code and replacing the prefix with a formatted
-       * name of a reference entity.
+       * Output only. Place's compound code, such as "33GV+HQ, Ramberg, Norway",
+       * containing the suffix of the global code and replacing the prefix with a
+       * formatted name of a reference entity.
        * 
* - * string compound_code = 2; + * string compound_code = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The bytes for compoundCode to set. * @return This builder for chaining. @@ -2570,5116 +2567,3441 @@ public com.google.maps.places.v1.Place.PlusCode getDefaultInstanceForType() { } } - public interface ReviewOrBuilder + public interface OpeningHoursOrBuilder extends - // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Place.Review) + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Place.OpeningHours) com.google.protobuf.MessageOrBuilder { /** * * *
-     * Timestamp for the review, expressed in seconds since epoch.
+     * Output only. Is this place open right now?  Always present unless we lack
+     * time-of-day or timezone data for these opening hours.
      * 
* - * .google.protobuf.Timestamp publish_time = 1; + * optional bool open_now = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the publishTime field is set. + * @return Whether the openNow field is set. */ - boolean hasPublishTime(); + boolean hasOpenNow(); /** * * *
-     * Timestamp for the review, expressed in seconds since epoch.
+     * Output only. Is this place open right now?  Always present unless we lack
+     * time-of-day or timezone data for these opening hours.
      * 
* - * .google.protobuf.Timestamp publish_time = 1; + * optional bool open_now = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The publishTime. + * @return The openNow. */ - com.google.protobuf.Timestamp getPublishTime(); + boolean getOpenNow(); + /** * * *
-     * Timestamp for the review, expressed in seconds since epoch.
+     * Output only. The periods that this place is open during the week. The
+     * periods are in chronological order, starting with Sunday in the
+     * place-local timezone. An empty (but not absent) value indicates a place
+     * that is never open, e.g. because it is closed temporarily for
+     * renovations.
      * 
* - * .google.protobuf.Timestamp publish_time = 1; + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - com.google.protobuf.TimestampOrBuilder getPublishTimeOrBuilder(); - + java.util.List getPeriodsList(); /** * * *
-     * A string of formatted recent time, expressing the review time relative
-     * to the current time in a form appropriate for the language and country.
+     * Output only. The periods that this place is open during the week. The
+     * periods are in chronological order, starting with Sunday in the
+     * place-local timezone. An empty (but not absent) value indicates a place
+     * that is never open, e.g. because it is closed temporarily for
+     * renovations.
      * 
* - * string relative_publish_time_description = 2; - * - * @return The relativePublishTimeDescription. + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - java.lang.String getRelativePublishTimeDescription(); + com.google.maps.places.v1.Place.OpeningHours.Period getPeriods(int index); /** * * *
-     * A string of formatted recent time, expressing the review time relative
-     * to the current time in a form appropriate for the language and country.
+     * Output only. The periods that this place is open during the week. The
+     * periods are in chronological order, starting with Sunday in the
+     * place-local timezone. An empty (but not absent) value indicates a place
+     * that is never open, e.g. because it is closed temporarily for
+     * renovations.
      * 
* - * string relative_publish_time_description = 2; - * - * @return The bytes for relativePublishTimeDescription. + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - com.google.protobuf.ByteString getRelativePublishTimeDescriptionBytes(); - + int getPeriodsCount(); /** * * *
-     * The localized text of the review.
+     * Output only. The periods that this place is open during the week. The
+     * periods are in chronological order, starting with Sunday in the
+     * place-local timezone. An empty (but not absent) value indicates a place
+     * that is never open, e.g. because it is closed temporarily for
+     * renovations.
      * 
* - * .google.type.LocalizedText text = 9; - * - * @return Whether the text field is set. + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - boolean hasText(); + java.util.List + getPeriodsOrBuilderList(); /** * * *
-     * The localized text of the review.
+     * Output only. The periods that this place is open during the week. The
+     * periods are in chronological order, starting with Sunday in the
+     * place-local timezone. An empty (but not absent) value indicates a place
+     * that is never open, e.g. because it is closed temporarily for
+     * renovations.
      * 
* - * .google.type.LocalizedText text = 9; - * - * @return The text. + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - com.google.type.LocalizedText getText(); + com.google.maps.places.v1.Place.OpeningHours.PeriodOrBuilder getPeriodsOrBuilder(int index); + /** * * *
-     * The localized text of the review.
+     * Output only. Localized strings describing the opening hours of this
+     * place, one string for each day of the week.  Will be empty if the hours
+     * are unknown or could not be converted to localized text. Example: "Sun:
+     * 18:00–06:00"
      * 
* - * .google.type.LocalizedText text = 9; + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return A list containing the weekdayDescriptions. */ - com.google.type.LocalizedTextOrBuilder getTextOrBuilder(); - + java.util.List getWeekdayDescriptionsList(); /** * * *
-     * The name of the review author.
+     * Output only. Localized strings describing the opening hours of this
+     * place, one string for each day of the week.  Will be empty if the hours
+     * are unknown or could not be converted to localized text. Example: "Sun:
+     * 18:00–06:00"
      * 
* - * string author = 4; + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The author. + * @return The count of weekdayDescriptions. */ - java.lang.String getAuthor(); + int getWeekdayDescriptionsCount(); /** * * *
-     * The name of the review author.
+     * Output only. Localized strings describing the opening hours of this
+     * place, one string for each day of the week.  Will be empty if the hours
+     * are unknown or could not be converted to localized text. Example: "Sun:
+     * 18:00–06:00"
      * 
* - * string author = 4; + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The bytes for author. + * @param index The index of the element to return. + * @return The weekdayDescriptions at the given index. */ - com.google.protobuf.ByteString getAuthorBytes(); - + java.lang.String getWeekdayDescriptions(int index); /** * * *
-     * A link to the review author's profile.
+     * Output only. Localized strings describing the opening hours of this
+     * place, one string for each day of the week.  Will be empty if the hours
+     * are unknown or could not be converted to localized text. Example: "Sun:
+     * 18:00–06:00"
      * 
* - * string author_uri = 5; + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The authorUri. + * @param index The index of the value to return. + * @return The bytes of the weekdayDescriptions at the given index. */ - java.lang.String getAuthorUri(); + com.google.protobuf.ByteString getWeekdayDescriptionsBytes(int index); + /** * * *
-     * A link to the review author's profile.
+     * Output only. A type string used to identify the type of secondary hours.
      * 
* - * string author_uri = 5; + * + * .google.maps.places.v1.Place.OpeningHours.SecondaryHoursType secondary_hours_type = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The bytes for authorUri. + * @return The enum numeric value on the wire for secondaryHoursType. */ - com.google.protobuf.ByteString getAuthorUriBytes(); - + int getSecondaryHoursTypeValue(); /** * * *
-     * The author's profile photo.
+     * Output only. A type string used to identify the type of secondary hours.
      * 
* - * string author_photo_uri = 6; + * + * .google.maps.places.v1.Place.OpeningHours.SecondaryHoursType secondary_hours_type = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The authorPhotoUri. + * @return The secondaryHoursType. */ - java.lang.String getAuthorPhotoUri(); + com.google.maps.places.v1.Place.OpeningHours.SecondaryHoursType getSecondaryHoursType(); + /** * * *
-     * The author's profile photo.
+     * Output only. Structured information for special days that fall within the
+     * period that the returned opening hours cover. Special days are days that
+     * could impact the business hours of a place, e.g. Christmas day. Set for
+     * current_opening_hours and current_secondary_opening_hours if there are
+     * exceptional hours.
      * 
* - * string author_photo_uri = 6; - * - * @return The bytes for authorPhotoUri. + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - com.google.protobuf.ByteString getAuthorPhotoUriBytes(); - + java.util.List getSpecialDaysList(); /** * * *
-     * A whole number between 1.0 and 5.0, a.k.a. the number of stars.
+     * Output only. Structured information for special days that fall within the
+     * period that the returned opening hours cover. Special days are days that
+     * could impact the business hours of a place, e.g. Christmas day. Set for
+     * current_opening_hours and current_secondary_opening_hours if there are
+     * exceptional hours.
      * 
* - * double rating = 7; - * - * @return The rating. + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - double getRating(); - + com.google.maps.places.v1.Place.OpeningHours.SpecialDay getSpecialDays(int index); /** * * *
-     * A BCP-47 language code indicating the original language of the review.
-     * If the review has been translated, then original_language != language.
-     * This field contains the main language tag only, and not the secondary tag
-     * indicating country or region. For example, all the English reviews are
-     * tagged as 'en', and not 'en-AU' or 'en-UK' and so on.This field is empty
-     * if there is only a rating with no review text.
+     * Output only. Structured information for special days that fall within the
+     * period that the returned opening hours cover. Special days are days that
+     * could impact the business hours of a place, e.g. Christmas day. Set for
+     * current_opening_hours and current_secondary_opening_hours if there are
+     * exceptional hours.
      * 
* - * string original_language_code = 10; - * - * @return The originalLanguageCode. + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - java.lang.String getOriginalLanguageCode(); + int getSpecialDaysCount(); /** * * *
-     * A BCP-47 language code indicating the original language of the review.
-     * If the review has been translated, then original_language != language.
-     * This field contains the main language tag only, and not the secondary tag
-     * indicating country or region. For example, all the English reviews are
-     * tagged as 'en', and not 'en-AU' or 'en-UK' and so on.This field is empty
-     * if there is only a rating with no review text.
+     * Output only. Structured information for special days that fall within the
+     * period that the returned opening hours cover. Special days are days that
+     * could impact the business hours of a place, e.g. Christmas day. Set for
+     * current_opening_hours and current_secondary_opening_hours if there are
+     * exceptional hours.
      * 
* - * string original_language_code = 10; - * - * @return The bytes for originalLanguageCode. + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - com.google.protobuf.ByteString getOriginalLanguageCodeBytes(); - + java.util.List + getSpecialDaysOrBuilderList(); /** * * *
-     * A boolean value indicating if the review was translated from the original
-     * language it was written in. If a review has been translated,
-     * corresponding to a value of true, Google recommends that you indicate
-     * this to your users. For example, you can add the following string,
-     * “Translated by Google”, to the review.
+     * Output only. Structured information for special days that fall within the
+     * period that the returned opening hours cover. Special days are days that
+     * could impact the business hours of a place, e.g. Christmas day. Set for
+     * current_opening_hours and current_secondary_opening_hours if there are
+     * exceptional hours.
      * 
* - * bool translated = 11; - * - * @return The translated. + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - boolean getTranslated(); + com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder getSpecialDaysOrBuilder( + int index); } /** * * *
-   * Information about a review of the place.
+   * Information about business hour of the place.
    * 
* - * Protobuf type {@code google.maps.places.v1.Place.Review} + * Protobuf type {@code google.maps.places.v1.Place.OpeningHours} */ - public static final class Review extends com.google.protobuf.GeneratedMessageV3 + public static final class OpeningHours extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:google.maps.places.v1.Place.Review) - ReviewOrBuilder { + // @@protoc_insertion_point(message_implements:google.maps.places.v1.Place.OpeningHours) + OpeningHoursOrBuilder { private static final long serialVersionUID = 0L; - // Use Review.newBuilder() to construct. - private Review(com.google.protobuf.GeneratedMessageV3.Builder builder) { + // Use OpeningHours.newBuilder() to construct. + private OpeningHours(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } - private Review() { - relativePublishTimeDescription_ = ""; - author_ = ""; - authorUri_ = ""; - authorPhotoUri_ = ""; - originalLanguageCode_ = ""; + private OpeningHours() { + periods_ = java.util.Collections.emptyList(); + weekdayDescriptions_ = com.google.protobuf.LazyStringArrayList.emptyList(); + secondaryHoursType_ = 0; + specialDays_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance(UnusedPrivateParameter unused) { - return new Review(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; + return new OpeningHours(); } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_Review_descriptor; + .internal_static_google_maps_places_v1_Place_OpeningHours_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_Review_fieldAccessorTable + .internal_static_google_maps_places_v1_Place_OpeningHours_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Place.Review.class, - com.google.maps.places.v1.Place.Review.Builder.class); - } - - public static final int PUBLISH_TIME_FIELD_NUMBER = 1; - private com.google.protobuf.Timestamp publishTime_; - /** - * - * - *
-     * Timestamp for the review, expressed in seconds since epoch.
-     * 
- * - * .google.protobuf.Timestamp publish_time = 1; - * - * @return Whether the publishTime field is set. - */ - @java.lang.Override - public boolean hasPublishTime() { - return publishTime_ != null; - } - /** - * - * - *
-     * Timestamp for the review, expressed in seconds since epoch.
-     * 
- * - * .google.protobuf.Timestamp publish_time = 1; - * - * @return The publishTime. - */ - @java.lang.Override - public com.google.protobuf.Timestamp getPublishTime() { - return publishTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : publishTime_; - } - /** - * - * - *
-     * Timestamp for the review, expressed in seconds since epoch.
-     * 
- * - * .google.protobuf.Timestamp publish_time = 1; - */ - @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getPublishTimeOrBuilder() { - return publishTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : publishTime_; - } - - public static final int RELATIVE_PUBLISH_TIME_DESCRIPTION_FIELD_NUMBER = 2; - - @SuppressWarnings("serial") - private volatile java.lang.Object relativePublishTimeDescription_ = ""; - /** - * - * - *
-     * A string of formatted recent time, expressing the review time relative
-     * to the current time in a form appropriate for the language and country.
-     * 
- * - * string relative_publish_time_description = 2; - * - * @return The relativePublishTimeDescription. - */ - @java.lang.Override - public java.lang.String getRelativePublishTimeDescription() { - java.lang.Object ref = relativePublishTimeDescription_; - 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(); - relativePublishTimeDescription_ = s; - return s; - } - } - /** - * - * - *
-     * A string of formatted recent time, expressing the review time relative
-     * to the current time in a form appropriate for the language and country.
-     * 
- * - * string relative_publish_time_description = 2; - * - * @return The bytes for relativePublishTimeDescription. - */ - @java.lang.Override - public com.google.protobuf.ByteString getRelativePublishTimeDescriptionBytes() { - java.lang.Object ref = relativePublishTimeDescription_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - relativePublishTimeDescription_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - public static final int TEXT_FIELD_NUMBER = 9; - private com.google.type.LocalizedText text_; - /** - * - * - *
-     * The localized text of the review.
-     * 
- * - * .google.type.LocalizedText text = 9; - * - * @return Whether the text field is set. - */ - @java.lang.Override - public boolean hasText() { - return text_ != null; - } - /** - * - * - *
-     * The localized text of the review.
-     * 
- * - * .google.type.LocalizedText text = 9; - * - * @return The text. - */ - @java.lang.Override - public com.google.type.LocalizedText getText() { - return text_ == null ? com.google.type.LocalizedText.getDefaultInstance() : text_; - } - /** - * - * - *
-     * The localized text of the review.
-     * 
- * - * .google.type.LocalizedText text = 9; - */ - @java.lang.Override - public com.google.type.LocalizedTextOrBuilder getTextOrBuilder() { - return text_ == null ? com.google.type.LocalizedText.getDefaultInstance() : text_; + com.google.maps.places.v1.Place.OpeningHours.class, + com.google.maps.places.v1.Place.OpeningHours.Builder.class); } - public static final int AUTHOR_FIELD_NUMBER = 4; - - @SuppressWarnings("serial") - private volatile java.lang.Object author_ = ""; - /** - * - * - *
-     * The name of the review author.
-     * 
- * - * string author = 4; - * - * @return The author. - */ - @java.lang.Override - public java.lang.String getAuthor() { - java.lang.Object ref = author_; - 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(); - author_ = s; - return s; - } - } /** * * *
-     * The name of the review author.
+     * A type used to identify the type of secondary hours.
      * 
* - * string author = 4; - * - * @return The bytes for author. + * Protobuf enum {@code google.maps.places.v1.Place.OpeningHours.SecondaryHoursType} */ - @java.lang.Override - public com.google.protobuf.ByteString getAuthorBytes() { - java.lang.Object ref = author_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - author_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - public static final int AUTHOR_URI_FIELD_NUMBER = 5; - - @SuppressWarnings("serial") - private volatile java.lang.Object authorUri_ = ""; - /** - * - * - *
-     * A link to the review author's profile.
-     * 
- * - * string author_uri = 5; - * - * @return The authorUri. - */ - @java.lang.Override - public java.lang.String getAuthorUri() { - java.lang.Object ref = authorUri_; - 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(); - authorUri_ = s; - return s; - } - } - /** - * - * - *
-     * A link to the review author's profile.
-     * 
- * - * string author_uri = 5; - * - * @return The bytes for authorUri. - */ - @java.lang.Override - public com.google.protobuf.ByteString getAuthorUriBytes() { - java.lang.Object ref = authorUri_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - authorUri_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - public static final int AUTHOR_PHOTO_URI_FIELD_NUMBER = 6; - - @SuppressWarnings("serial") - private volatile java.lang.Object authorPhotoUri_ = ""; - /** - * - * - *
-     * The author's profile photo.
-     * 
- * - * string author_photo_uri = 6; - * - * @return The authorPhotoUri. - */ - @java.lang.Override - public java.lang.String getAuthorPhotoUri() { - java.lang.Object ref = authorPhotoUri_; - 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(); - authorPhotoUri_ = s; - return s; - } - } - /** - * - * - *
-     * The author's profile photo.
-     * 
- * - * string author_photo_uri = 6; - * - * @return The bytes for authorPhotoUri. - */ - @java.lang.Override - public com.google.protobuf.ByteString getAuthorPhotoUriBytes() { - java.lang.Object ref = authorPhotoUri_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - authorPhotoUri_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - public static final int RATING_FIELD_NUMBER = 7; - private double rating_ = 0D; - /** - * - * - *
-     * A whole number between 1.0 and 5.0, a.k.a. the number of stars.
-     * 
- * - * double rating = 7; - * - * @return The rating. - */ - @java.lang.Override - public double getRating() { - return rating_; - } - - public static final int ORIGINAL_LANGUAGE_CODE_FIELD_NUMBER = 10; + public enum SecondaryHoursType implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
+       * Default value when secondary hour type is not specified.
+       * 
+ * + * SECONDARY_HOURS_TYPE_UNSPECIFIED = 0; + */ + SECONDARY_HOURS_TYPE_UNSPECIFIED(0), + /** + * + * + *
+       * The drive-through hour for banks, restaurants, or pharmacies.
+       * 
+ * + * DRIVE_THROUGH = 1; + */ + DRIVE_THROUGH(1), + /** + * + * + *
+       * The happy hour.
+       * 
+ * + * HAPPY_HOUR = 2; + */ + HAPPY_HOUR(2), + /** + * + * + *
+       * The delivery hour.
+       * 
+ * + * DELIVERY = 3; + */ + DELIVERY(3), + /** + * + * + *
+       * The takeout hour.
+       * 
+ * + * TAKEOUT = 4; + */ + TAKEOUT(4), + /** + * + * + *
+       * The kitchen hour.
+       * 
+ * + * KITCHEN = 5; + */ + KITCHEN(5), + /** + * + * + *
+       * The breakfast hour.
+       * 
+ * + * BREAKFAST = 6; + */ + BREAKFAST(6), + /** + * + * + *
+       * The lunch hour.
+       * 
+ * + * LUNCH = 7; + */ + LUNCH(7), + /** + * + * + *
+       * The dinner hour.
+       * 
+ * + * DINNER = 8; + */ + DINNER(8), + /** + * + * + *
+       * The brunch hour.
+       * 
+ * + * BRUNCH = 9; + */ + BRUNCH(9), + /** + * + * + *
+       * The pickup hour.
+       * 
+ * + * PICKUP = 10; + */ + PICKUP(10), + /** + * + * + *
+       * The access hours for storage places.
+       * 
+ * + * ACCESS = 11; + */ + ACCESS(11), + /** + * + * + *
+       * The special hours for seniors.
+       * 
+ * + * SENIOR_HOURS = 12; + */ + SENIOR_HOURS(12), + /** + * + * + *
+       * The online service hours.
+       * 
+ * + * ONLINE_SERVICE_HOURS = 13; + */ + ONLINE_SERVICE_HOURS(13), + UNRECOGNIZED(-1), + ; - @SuppressWarnings("serial") - private volatile java.lang.Object originalLanguageCode_ = ""; - /** - * - * - *
-     * A BCP-47 language code indicating the original language of the review.
-     * If the review has been translated, then original_language != language.
-     * This field contains the main language tag only, and not the secondary tag
-     * indicating country or region. For example, all the English reviews are
-     * tagged as 'en', and not 'en-AU' or 'en-UK' and so on.This field is empty
-     * if there is only a rating with no review text.
-     * 
- * - * string original_language_code = 10; - * - * @return The originalLanguageCode. - */ - @java.lang.Override - public java.lang.String getOriginalLanguageCode() { - java.lang.Object ref = originalLanguageCode_; - 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(); - originalLanguageCode_ = s; - return s; - } - } - /** - * - * - *
-     * A BCP-47 language code indicating the original language of the review.
-     * If the review has been translated, then original_language != language.
-     * This field contains the main language tag only, and not the secondary tag
-     * indicating country or region. For example, all the English reviews are
-     * tagged as 'en', and not 'en-AU' or 'en-UK' and so on.This field is empty
-     * if there is only a rating with no review text.
-     * 
- * - * string original_language_code = 10; - * - * @return The bytes for originalLanguageCode. - */ - @java.lang.Override - public com.google.protobuf.ByteString getOriginalLanguageCodeBytes() { - java.lang.Object ref = originalLanguageCode_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - originalLanguageCode_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
+       * Default value when secondary hour type is not specified.
+       * 
+ * + * SECONDARY_HOURS_TYPE_UNSPECIFIED = 0; + */ + public static final int SECONDARY_HOURS_TYPE_UNSPECIFIED_VALUE = 0; + /** + * + * + *
+       * The drive-through hour for banks, restaurants, or pharmacies.
+       * 
+ * + * DRIVE_THROUGH = 1; + */ + public static final int DRIVE_THROUGH_VALUE = 1; + /** + * + * + *
+       * The happy hour.
+       * 
+ * + * HAPPY_HOUR = 2; + */ + public static final int HAPPY_HOUR_VALUE = 2; + /** + * + * + *
+       * The delivery hour.
+       * 
+ * + * DELIVERY = 3; + */ + public static final int DELIVERY_VALUE = 3; + /** + * + * + *
+       * The takeout hour.
+       * 
+ * + * TAKEOUT = 4; + */ + public static final int TAKEOUT_VALUE = 4; + /** + * + * + *
+       * The kitchen hour.
+       * 
+ * + * KITCHEN = 5; + */ + public static final int KITCHEN_VALUE = 5; + /** + * + * + *
+       * The breakfast hour.
+       * 
+ * + * BREAKFAST = 6; + */ + public static final int BREAKFAST_VALUE = 6; + /** + * + * + *
+       * The lunch hour.
+       * 
+ * + * LUNCH = 7; + */ + public static final int LUNCH_VALUE = 7; + /** + * + * + *
+       * The dinner hour.
+       * 
+ * + * DINNER = 8; + */ + public static final int DINNER_VALUE = 8; + /** + * + * + *
+       * The brunch hour.
+       * 
+ * + * BRUNCH = 9; + */ + public static final int BRUNCH_VALUE = 9; + /** + * + * + *
+       * The pickup hour.
+       * 
+ * + * PICKUP = 10; + */ + public static final int PICKUP_VALUE = 10; + /** + * + * + *
+       * The access hours for storage places.
+       * 
+ * + * ACCESS = 11; + */ + public static final int ACCESS_VALUE = 11; + /** + * + * + *
+       * The special hours for seniors.
+       * 
+ * + * SENIOR_HOURS = 12; + */ + public static final int SENIOR_HOURS_VALUE = 12; + /** + * + * + *
+       * The online service hours.
+       * 
+ * + * ONLINE_SERVICE_HOURS = 13; + */ + public static final int ONLINE_SERVICE_HOURS_VALUE = 13; + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; } - } - public static final int TRANSLATED_FIELD_NUMBER = 11; - private boolean translated_ = false; - /** - * - * - *
-     * A boolean value indicating if the review was translated from the original
-     * language it was written in. If a review has been translated,
-     * corresponding to a value of true, Google recommends that you indicate
-     * this to your users. For example, you can add the following string,
-     * “Translated by Google”, to the review.
-     * 
- * - * bool translated = 11; - * - * @return The translated. - */ - @java.lang.Override - public boolean getTranslated() { - return translated_; - } + /** + * @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 SecondaryHoursType valueOf(int value) { + return forNumber(value); + } - private byte memoizedIsInitialized = -1; + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static SecondaryHoursType forNumber(int value) { + switch (value) { + case 0: + return SECONDARY_HOURS_TYPE_UNSPECIFIED; + case 1: + return DRIVE_THROUGH; + case 2: + return HAPPY_HOUR; + case 3: + return DELIVERY; + case 4: + return TAKEOUT; + case 5: + return KITCHEN; + case 6: + return BREAKFAST; + case 7: + return LUNCH; + case 8: + return DINNER; + case 9: + return BRUNCH; + case 10: + return PICKUP; + case 11: + return ACCESS; + case 12: + return SENIOR_HOURS; + case 13: + return ONLINE_SERVICE_HOURS; + default: + return null; + } + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } - memoizedIsInitialized = 1; - return true; - } + private static final com.google.protobuf.Internal.EnumLiteMap + internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public SecondaryHoursType findValueByNumber(int number) { + return SecondaryHoursType.forNumber(number); + } + }; - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (publishTime_ != null) { - output.writeMessage(1, getPublishTime()); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(relativePublishTimeDescription_)) { - com.google.protobuf.GeneratedMessageV3.writeString( - output, 2, relativePublishTimeDescription_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(author_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 4, author_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(authorUri_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 5, authorUri_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(authorPhotoUri_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 6, authorPhotoUri_); + 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 (java.lang.Double.doubleToRawLongBits(rating_) != 0) { - output.writeDouble(7, rating_); + + public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { + return getDescriptor(); } - if (text_ != null) { - output.writeMessage(9, getText()); + + public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.maps.places.v1.Place.OpeningHours.getDescriptor().getEnumTypes().get(0); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(originalLanguageCode_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 10, originalLanguageCode_); + + private static final SecondaryHoursType[] VALUES = values(); + + public static SecondaryHoursType 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 (translated_ != false) { - output.writeBool(11, translated_); + + private final int value; + + private SecondaryHoursType(int value) { + this.value = value; } - getUnknownFields().writeTo(output); + + // @@protoc_insertion_point(enum_scope:google.maps.places.v1.Place.OpeningHours.SecondaryHoursType) } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - if (publishTime_ != null) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getPublishTime()); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(relativePublishTimeDescription_)) { - size += - com.google.protobuf.GeneratedMessageV3.computeStringSize( - 2, relativePublishTimeDescription_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(author_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, author_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(authorUri_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, authorUri_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(authorPhotoUri_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, authorPhotoUri_); - } - if (java.lang.Double.doubleToRawLongBits(rating_) != 0) { - size += com.google.protobuf.CodedOutputStream.computeDoubleSize(7, rating_); - } - if (text_ != null) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(9, getText()); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(originalLanguageCode_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, originalLanguageCode_); - } - if (translated_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(11, translated_); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } - - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof com.google.maps.places.v1.Place.Review)) { - return super.equals(obj); - } - com.google.maps.places.v1.Place.Review other = (com.google.maps.places.v1.Place.Review) obj; - - if (hasPublishTime() != other.hasPublishTime()) return false; - if (hasPublishTime()) { - if (!getPublishTime().equals(other.getPublishTime())) return false; - } - if (!getRelativePublishTimeDescription().equals(other.getRelativePublishTimeDescription())) - return false; - if (hasText() != other.hasText()) return false; - if (hasText()) { - if (!getText().equals(other.getText())) return false; - } - if (!getAuthor().equals(other.getAuthor())) return false; - if (!getAuthorUri().equals(other.getAuthorUri())) return false; - if (!getAuthorPhotoUri().equals(other.getAuthorPhotoUri())) return false; - if (java.lang.Double.doubleToLongBits(getRating()) - != java.lang.Double.doubleToLongBits(other.getRating())) return false; - if (!getOriginalLanguageCode().equals(other.getOriginalLanguageCode())) return false; - if (getTranslated() != other.getTranslated()) 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 (hasPublishTime()) { - hash = (37 * hash) + PUBLISH_TIME_FIELD_NUMBER; - hash = (53 * hash) + getPublishTime().hashCode(); - } - hash = (37 * hash) + RELATIVE_PUBLISH_TIME_DESCRIPTION_FIELD_NUMBER; - hash = (53 * hash) + getRelativePublishTimeDescription().hashCode(); - if (hasText()) { - hash = (37 * hash) + TEXT_FIELD_NUMBER; - hash = (53 * hash) + getText().hashCode(); - } - hash = (37 * hash) + AUTHOR_FIELD_NUMBER; - hash = (53 * hash) + getAuthor().hashCode(); - hash = (37 * hash) + AUTHOR_URI_FIELD_NUMBER; - hash = (53 * hash) + getAuthorUri().hashCode(); - hash = (37 * hash) + AUTHOR_PHOTO_URI_FIELD_NUMBER; - hash = (53 * hash) + getAuthorPhotoUri().hashCode(); - hash = (37 * hash) + RATING_FIELD_NUMBER; - hash = - (53 * hash) - + com.google.protobuf.Internal.hashLong( - java.lang.Double.doubleToLongBits(getRating())); - hash = (37 * hash) + ORIGINAL_LANGUAGE_CODE_FIELD_NUMBER; - hash = (53 * hash) + getOriginalLanguageCode().hashCode(); - hash = (37 * hash) + TRANSLATED_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getTranslated()); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static com.google.maps.places.v1.Place.Review parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.maps.places.v1.Place.Review parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.Review parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.maps.places.v1.Place.Review parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.Review parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.maps.places.v1.Place.Review parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.Review parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } - - public static com.google.maps.places.v1.Place.Review parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.Review parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); - } - - public static com.google.maps.places.v1.Place.Review parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.Review parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } - - public static com.google.maps.places.v1.Place.Review parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } - - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } - - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } - - public static Builder newBuilder(com.google.maps.places.v1.Place.Review prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + public interface PeriodOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Place.OpeningHours.Period) + com.google.protobuf.MessageOrBuilder { - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + /** + * + * + *
+       * Output only. The time that the place starts to be open.
+       * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the open field is set. + */ + boolean hasOpen(); + /** + * + * + *
+       * Output only. The time that the place starts to be open.
+       * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The open. + */ + com.google.maps.places.v1.Place.OpeningHours.Period.Point getOpen(); + /** + * + * + *
+       * Output only. The time that the place starts to be open.
+       * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.Place.OpeningHours.Period.PointOrBuilder getOpenOrBuilder(); - @java.lang.Override - protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; + /** + * + * + *
+       * Output only. The time that the place starts to be closed.
+       * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the close field is set. + */ + boolean hasClose(); + /** + * + * + *
+       * Output only. The time that the place starts to be closed.
+       * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The close. + */ + com.google.maps.places.v1.Place.OpeningHours.Period.Point getClose(); + /** + * + * + *
+       * Output only. The time that the place starts to be closed.
+       * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.Place.OpeningHours.Period.PointOrBuilder getCloseOrBuilder(); } /** * * *
-     * Information about a review of the place.
+     * A period the place remains in open_now status.
      * 
* - * Protobuf type {@code google.maps.places.v1.Place.Review} + * Protobuf type {@code google.maps.places.v1.Place.OpeningHours.Period} */ - public static final class Builder - extends com.google.protobuf.GeneratedMessageV3.Builder + public static final class Period extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place.Review) - com.google.maps.places.v1.Place.ReviewOrBuilder { + // @@protoc_insertion_point(message_implements:google.maps.places.v1.Place.OpeningHours.Period) + PeriodOrBuilder { + private static final long serialVersionUID = 0L; + // Use Period.newBuilder() to construct. + private Period(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private Period() {} + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new Period(); + } + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_Review_descriptor; + .internal_static_google_maps_places_v1_Place_OpeningHours_Period_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_Review_fieldAccessorTable + .internal_static_google_maps_places_v1_Place_OpeningHours_Period_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Place.Review.class, - com.google.maps.places.v1.Place.Review.Builder.class); + com.google.maps.places.v1.Place.OpeningHours.Period.class, + com.google.maps.places.v1.Place.OpeningHours.Period.Builder.class); } - // Construct using com.google.maps.places.v1.Place.Review.newBuilder() - private Builder() {} + public interface PointOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Place.OpeningHours.Period.Point) + com.google.protobuf.MessageOrBuilder { - private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - } + /** + * + * + *
+         * Output only. A day of the week, as an integer in the range 0-6.  0 is
+         * Sunday, 1 is Monday, etc.
+         * 
+ * + * optional int32 day = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the day field is set. + */ + boolean hasDay(); + /** + * + * + *
+         * Output only. A day of the week, as an integer in the range 0-6.  0 is
+         * Sunday, 1 is Monday, etc.
+         * 
+ * + * optional int32 day = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The day. + */ + int getDay(); - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - publishTime_ = null; - if (publishTimeBuilder_ != null) { - publishTimeBuilder_.dispose(); - publishTimeBuilder_ = null; - } - relativePublishTimeDescription_ = ""; - text_ = null; - if (textBuilder_ != null) { - textBuilder_.dispose(); - textBuilder_ = null; - } - author_ = ""; - authorUri_ = ""; - authorPhotoUri_ = ""; - rating_ = 0D; - originalLanguageCode_ = ""; - translated_ = false; - return this; - } + /** + * + * + *
+         * Output only. The hour in 2 digits. Ranges from 00 to 23.
+         * 
+ * + * optional int32 hour = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the hour field is set. + */ + boolean hasHour(); + /** + * + * + *
+         * Output only. The hour in 2 digits. Ranges from 00 to 23.
+         * 
+ * + * optional int32 hour = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The hour. + */ + int getHour(); - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_Review_descriptor; - } + /** + * + * + *
+         * Output only. The minute in 2 digits. Ranges from 00 to 59.
+         * 
+ * + * optional int32 minute = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the minute field is set. + */ + boolean hasMinute(); + /** + * + * + *
+         * Output only. The minute in 2 digits. Ranges from 00 to 59.
+         * 
+ * + * optional int32 minute = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The minute. + */ + int getMinute(); - @java.lang.Override - public com.google.maps.places.v1.Place.Review getDefaultInstanceForType() { - return com.google.maps.places.v1.Place.Review.getDefaultInstance(); + /** + * + * + *
+         * Output only. Date in the local timezone for the place.
+         * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the date field is set. + */ + boolean hasDate(); + /** + * + * + *
+         * Output only. Date in the local timezone for the place.
+         * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The date. + */ + com.google.type.Date getDate(); + /** + * + * + *
+         * Output only. Date in the local timezone for the place.
+         * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + com.google.type.DateOrBuilder getDateOrBuilder(); + + /** + * + * + *
+         * Output only. Whether or not this endpoint was truncated. Truncation
+         * occurs when the real hours are outside the times we are willing to
+         * return hours between, so we truncate the hours back to these
+         * boundaries. This ensures that at most 24 * 7 hours from midnight of
+         * the day of the request are returned.
+         * 
+ * + * bool truncated = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The truncated. + */ + boolean getTruncated(); } + /** + * + * + *
+       * Status changing points.
+       * 
+ * + * Protobuf type {@code google.maps.places.v1.Place.OpeningHours.Period.Point} + */ + public static final class Point extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.Place.OpeningHours.Period.Point) + PointOrBuilder { + private static final long serialVersionUID = 0L; + // Use Point.newBuilder() to construct. + private Point(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } - @java.lang.Override - public com.google.maps.places.v1.Place.Review build() { - com.google.maps.places.v1.Place.Review result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + private Point() {} + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new Point(); } - return result; - } - @java.lang.Override - public com.google.maps.places.v1.Place.Review buildPartial() { - com.google.maps.places.v1.Place.Review result = - new com.google.maps.places.v1.Place.Review(this); - if (bitField0_ != 0) { - buildPartial0(result); + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_OpeningHours_Period_Point_descriptor; } - onBuilt(); - return result; - } - private void buildPartial0(com.google.maps.places.v1.Place.Review result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.publishTime_ = - publishTimeBuilder_ == null ? publishTime_ : publishTimeBuilder_.build(); + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_OpeningHours_Period_Point_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Place.OpeningHours.Period.Point.class, + com.google.maps.places.v1.Place.OpeningHours.Period.Point.Builder.class); } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.relativePublishTimeDescription_ = relativePublishTimeDescription_; + + private int bitField0_; + public static final int DAY_FIELD_NUMBER = 1; + private int day_ = 0; + /** + * + * + *
+         * Output only. A day of the week, as an integer in the range 0-6.  0 is
+         * Sunday, 1 is Monday, etc.
+         * 
+ * + * optional int32 day = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the day field is set. + */ + @java.lang.Override + public boolean hasDay() { + return ((bitField0_ & 0x00000001) != 0); } - if (((from_bitField0_ & 0x00000004) != 0)) { - result.text_ = textBuilder_ == null ? text_ : textBuilder_.build(); + /** + * + * + *
+         * Output only. A day of the week, as an integer in the range 0-6.  0 is
+         * Sunday, 1 is Monday, etc.
+         * 
+ * + * optional int32 day = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The day. + */ + @java.lang.Override + public int getDay() { + return day_; } - if (((from_bitField0_ & 0x00000008) != 0)) { - result.author_ = author_; + + public static final int HOUR_FIELD_NUMBER = 2; + private int hour_ = 0; + /** + * + * + *
+         * Output only. The hour in 2 digits. Ranges from 00 to 23.
+         * 
+ * + * optional int32 hour = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the hour field is set. + */ + @java.lang.Override + public boolean hasHour() { + return ((bitField0_ & 0x00000002) != 0); } - if (((from_bitField0_ & 0x00000010) != 0)) { - result.authorUri_ = authorUri_; + /** + * + * + *
+         * Output only. The hour in 2 digits. Ranges from 00 to 23.
+         * 
+ * + * optional int32 hour = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The hour. + */ + @java.lang.Override + public int getHour() { + return hour_; } - if (((from_bitField0_ & 0x00000020) != 0)) { - result.authorPhotoUri_ = authorPhotoUri_; + + public static final int MINUTE_FIELD_NUMBER = 3; + private int minute_ = 0; + /** + * + * + *
+         * Output only. The minute in 2 digits. Ranges from 00 to 59.
+         * 
+ * + * optional int32 minute = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the minute field is set. + */ + @java.lang.Override + public boolean hasMinute() { + return ((bitField0_ & 0x00000004) != 0); } - if (((from_bitField0_ & 0x00000040) != 0)) { - result.rating_ = rating_; + /** + * + * + *
+         * Output only. The minute in 2 digits. Ranges from 00 to 59.
+         * 
+ * + * optional int32 minute = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The minute. + */ + @java.lang.Override + public int getMinute() { + return minute_; + } + + public static final int DATE_FIELD_NUMBER = 6; + private com.google.type.Date date_; + /** + * + * + *
+         * Output only. Date in the local timezone for the place.
+         * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the date field is set. + */ + @java.lang.Override + public boolean hasDate() { + return date_ != null; } - if (((from_bitField0_ & 0x00000080) != 0)) { - result.originalLanguageCode_ = originalLanguageCode_; + /** + * + * + *
+         * Output only. Date in the local timezone for the place.
+         * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The date. + */ + @java.lang.Override + public com.google.type.Date getDate() { + return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; } - if (((from_bitField0_ & 0x00000100) != 0)) { - result.translated_ = translated_; + /** + * + * + *
+         * Output only. Date in the local timezone for the place.
+         * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + @java.lang.Override + public com.google.type.DateOrBuilder getDateOrBuilder() { + return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; } - } - - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.setField(field, value); - } + public static final int TRUNCATED_FIELD_NUMBER = 5; + private boolean truncated_ = false; + /** + * + * + *
+         * Output only. Whether or not this endpoint was truncated. Truncation
+         * occurs when the real hours are outside the times we are willing to
+         * return hours between, so we truncate the hours back to these
+         * boundaries. This ensures that at most 24 * 7 hours from midnight of
+         * the day of the request are returned.
+         * 
+ * + * bool truncated = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The truncated. + */ + @java.lang.Override + public boolean getTruncated() { + return truncated_; + } - @java.lang.Override - public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } + private byte memoizedIsInitialized = -1; - @java.lang.Override - public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, - java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } + memoizedIsInitialized = 1; + return true; + } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.addRepeatedField(field, value); - } + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (((bitField0_ & 0x00000001) != 0)) { + output.writeInt32(1, day_); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeInt32(2, hour_); + } + if (((bitField0_ & 0x00000004) != 0)) { + output.writeInt32(3, minute_); + } + if (truncated_ != false) { + output.writeBool(5, truncated_); + } + if (date_ != null) { + output.writeMessage(6, getDate()); + } + getUnknownFields().writeTo(output); + } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.maps.places.v1.Place.Review) { - return mergeFrom((com.google.maps.places.v1.Place.Review) other); - } else { - super.mergeFrom(other); - return this; + @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.computeInt32Size(1, day_); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, hour_); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(3, minute_); + } + if (truncated_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(5, truncated_); + } + if (date_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getDate()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - } - public Builder mergeFrom(com.google.maps.places.v1.Place.Review other) { - if (other == com.google.maps.places.v1.Place.Review.getDefaultInstance()) return this; - if (other.hasPublishTime()) { - mergePublishTime(other.getPublishTime()); + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.maps.places.v1.Place.OpeningHours.Period.Point)) { + return super.equals(obj); + } + com.google.maps.places.v1.Place.OpeningHours.Period.Point other = + (com.google.maps.places.v1.Place.OpeningHours.Period.Point) obj; + + if (hasDay() != other.hasDay()) return false; + if (hasDay()) { + if (getDay() != other.getDay()) return false; + } + if (hasHour() != other.hasHour()) return false; + if (hasHour()) { + if (getHour() != other.getHour()) return false; + } + if (hasMinute() != other.hasMinute()) return false; + if (hasMinute()) { + if (getMinute() != other.getMinute()) return false; + } + if (hasDate() != other.hasDate()) return false; + if (hasDate()) { + if (!getDate().equals(other.getDate())) return false; + } + if (getTruncated() != other.getTruncated()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; } - if (!other.getRelativePublishTimeDescription().isEmpty()) { - relativePublishTimeDescription_ = other.relativePublishTimeDescription_; - bitField0_ |= 0x00000002; - onChanged(); + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasDay()) { + hash = (37 * hash) + DAY_FIELD_NUMBER; + hash = (53 * hash) + getDay(); + } + if (hasHour()) { + hash = (37 * hash) + HOUR_FIELD_NUMBER; + hash = (53 * hash) + getHour(); + } + if (hasMinute()) { + hash = (37 * hash) + MINUTE_FIELD_NUMBER; + hash = (53 * hash) + getMinute(); + } + if (hasDate()) { + hash = (37 * hash) + DATE_FIELD_NUMBER; + hash = (53 * hash) + getDate().hashCode(); + } + hash = (37 * hash) + TRUNCATED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getTruncated()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - if (other.hasText()) { - mergeText(other.getText()); + + public static com.google.maps.places.v1.Place.OpeningHours.Period.Point parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - if (!other.getAuthor().isEmpty()) { - author_ = other.author_; - bitField0_ |= 0x00000008; - onChanged(); + + public static com.google.maps.places.v1.Place.OpeningHours.Period.Point parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - if (!other.getAuthorUri().isEmpty()) { - authorUri_ = other.authorUri_; - bitField0_ |= 0x00000010; - onChanged(); + + public static com.google.maps.places.v1.Place.OpeningHours.Period.Point parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - if (!other.getAuthorPhotoUri().isEmpty()) { - authorPhotoUri_ = other.authorPhotoUri_; - bitField0_ |= 0x00000020; - onChanged(); + + public static com.google.maps.places.v1.Place.OpeningHours.Period.Point parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - if (other.getRating() != 0D) { - setRating(other.getRating()); + + public static com.google.maps.places.v1.Place.OpeningHours.Period.Point parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - if (!other.getOriginalLanguageCode().isEmpty()) { - originalLanguageCode_ = other.originalLanguageCode_; - bitField0_ |= 0x00000080; - onChanged(); + + public static com.google.maps.places.v1.Place.OpeningHours.Period.Point parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - if (other.getTranslated() != false) { - setTranslated(other.getTranslated()); + + public static com.google.maps.places.v1.Place.OpeningHours.Period.Point parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; - } - @java.lang.Override - public final boolean isInitialized() { - return true; - } + public static com.google.maps.places.v1.Place.OpeningHours.Period.Point parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + 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(); + public static com.google.maps.places.v1.Place.OpeningHours.Period.Point parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input); } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - input.readMessage(getPublishTimeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - relativePublishTimeDescription_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 18 - case 34: - { - author_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000008; - break; - } // case 34 - case 42: - { - authorUri_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000010; - break; - } // case 42 - case 50: - { - authorPhotoUri_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000020; - break; - } // case 50 - case 57: - { - rating_ = input.readDouble(); - bitField0_ |= 0x00000040; - break; - } // case 57 - case 74: - { - input.readMessage(getTextFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000004; - break; - } // case 74 - case 82: - { - originalLanguageCode_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000080; - break; - } // case 82 - case 88: - { - translated_ = input.readBool(); - bitField0_ |= 0x00000100; - break; - } // case 88 - 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_; + public static com.google.maps.places.v1.Place.OpeningHours.Period.Point parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - private com.google.protobuf.Timestamp publishTime_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - publishTimeBuilder_; - /** - * - * - *
-       * Timestamp for the review, expressed in seconds since epoch.
-       * 
- * - * .google.protobuf.Timestamp publish_time = 1; - * - * @return Whether the publishTime field is set. - */ - public boolean hasPublishTime() { - return ((bitField0_ & 0x00000001) != 0); - } - /** - * - * - *
-       * Timestamp for the review, expressed in seconds since epoch.
-       * 
- * - * .google.protobuf.Timestamp publish_time = 1; - * - * @return The publishTime. - */ - public com.google.protobuf.Timestamp getPublishTime() { - if (publishTimeBuilder_ == null) { - return publishTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : publishTime_; - } else { - return publishTimeBuilder_.getMessage(); - } - } - /** - * - * - *
-       * Timestamp for the review, expressed in seconds since epoch.
-       * 
- * - * .google.protobuf.Timestamp publish_time = 1; - */ - public Builder setPublishTime(com.google.protobuf.Timestamp value) { - if (publishTimeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - publishTime_ = value; - } else { - publishTimeBuilder_.setMessage(value); - } - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - /** - * - * - *
-       * Timestamp for the review, expressed in seconds since epoch.
-       * 
- * - * .google.protobuf.Timestamp publish_time = 1; - */ - public Builder setPublishTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (publishTimeBuilder_ == null) { - publishTime_ = builderForValue.build(); - } else { - publishTimeBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - /** - * - * - *
-       * Timestamp for the review, expressed in seconds since epoch.
-       * 
- * - * .google.protobuf.Timestamp publish_time = 1; - */ - public Builder mergePublishTime(com.google.protobuf.Timestamp value) { - if (publishTimeBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0) - && publishTime_ != null - && publishTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getPublishTimeBuilder().mergeFrom(value); - } else { - publishTime_ = value; - } - } else { - publishTimeBuilder_.mergeFrom(value); - } - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - /** - * - * - *
-       * Timestamp for the review, expressed in seconds since epoch.
-       * 
- * - * .google.protobuf.Timestamp publish_time = 1; - */ - public Builder clearPublishTime() { - bitField0_ = (bitField0_ & ~0x00000001); - publishTime_ = null; - if (publishTimeBuilder_ != null) { - publishTimeBuilder_.dispose(); - publishTimeBuilder_ = null; - } - onChanged(); - return this; - } - /** - * - * - *
-       * Timestamp for the review, expressed in seconds since epoch.
-       * 
- * - * .google.protobuf.Timestamp publish_time = 1; - */ - public com.google.protobuf.Timestamp.Builder getPublishTimeBuilder() { - bitField0_ |= 0x00000001; - onChanged(); - return getPublishTimeFieldBuilder().getBuilder(); - } - /** - * - * - *
-       * Timestamp for the review, expressed in seconds since epoch.
-       * 
- * - * .google.protobuf.Timestamp publish_time = 1; - */ - public com.google.protobuf.TimestampOrBuilder getPublishTimeOrBuilder() { - if (publishTimeBuilder_ != null) { - return publishTimeBuilder_.getMessageOrBuilder(); - } else { - return publishTime_ == null - ? com.google.protobuf.Timestamp.getDefaultInstance() - : publishTime_; - } - } - /** - * - * - *
-       * Timestamp for the review, expressed in seconds since epoch.
-       * 
- * - * .google.protobuf.Timestamp publish_time = 1; - */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder> - getPublishTimeFieldBuilder() { - if (publishTimeBuilder_ == null) { - publishTimeBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.protobuf.Timestamp, - com.google.protobuf.Timestamp.Builder, - com.google.protobuf.TimestampOrBuilder>( - getPublishTime(), getParentForChildren(), isClean()); - publishTime_ = null; - } - return publishTimeBuilder_; - } - - private java.lang.Object relativePublishTimeDescription_ = ""; - /** - * - * - *
-       * A string of formatted recent time, expressing the review time relative
-       * to the current time in a form appropriate for the language and country.
-       * 
- * - * string relative_publish_time_description = 2; - * - * @return The relativePublishTimeDescription. - */ - public java.lang.String getRelativePublishTimeDescription() { - java.lang.Object ref = relativePublishTimeDescription_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - relativePublishTimeDescription_ = s; - return s; - } else { - return (java.lang.String) ref; + public static com.google.maps.places.v1.Place.OpeningHours.Period.Point parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - } - /** - * - * - *
-       * A string of formatted recent time, expressing the review time relative
-       * to the current time in a form appropriate for the language and country.
-       * 
- * - * string relative_publish_time_description = 2; - * - * @return The bytes for relativePublishTimeDescription. - */ - public com.google.protobuf.ByteString getRelativePublishTimeDescriptionBytes() { - java.lang.Object ref = relativePublishTimeDescription_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - relativePublishTimeDescription_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + + public static com.google.maps.places.v1.Place.OpeningHours.Period.Point parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); } - } - /** - * - * - *
-       * A string of formatted recent time, expressing the review time relative
-       * to the current time in a form appropriate for the language and country.
-       * 
- * - * string relative_publish_time_description = 2; - * - * @param value The relativePublishTimeDescription to set. - * @return This builder for chaining. - */ - public Builder setRelativePublishTimeDescription(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); } - relativePublishTimeDescription_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - /** - * - * - *
-       * A string of formatted recent time, expressing the review time relative
-       * to the current time in a form appropriate for the language and country.
-       * 
- * - * string relative_publish_time_description = 2; - * - * @return This builder for chaining. - */ - public Builder clearRelativePublishTimeDescription() { - relativePublishTimeDescription_ = getDefaultInstance().getRelativePublishTimeDescription(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - return this; - } - /** - * - * - *
-       * A string of formatted recent time, expressing the review time relative
-       * to the current time in a form appropriate for the language and country.
-       * 
- * - * string relative_publish_time_description = 2; - * - * @param value The bytes for relativePublishTimeDescription to set. - * @return This builder for chaining. - */ - public Builder setRelativePublishTimeDescriptionBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); } - checkByteStringIsUtf8(value); - relativePublishTimeDescription_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - private com.google.type.LocalizedText text_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.LocalizedText, - com.google.type.LocalizedText.Builder, - com.google.type.LocalizedTextOrBuilder> - textBuilder_; - /** - * - * - *
-       * The localized text of the review.
-       * 
- * - * .google.type.LocalizedText text = 9; - * - * @return Whether the text field is set. - */ - public boolean hasText() { - return ((bitField0_ & 0x00000004) != 0); - } - /** - * - * - *
-       * The localized text of the review.
-       * 
- * - * .google.type.LocalizedText text = 9; - * - * @return The text. - */ - public com.google.type.LocalizedText getText() { - if (textBuilder_ == null) { - return text_ == null ? com.google.type.LocalizedText.getDefaultInstance() : text_; - } else { - return textBuilder_.getMessage(); + public static Builder newBuilder( + com.google.maps.places.v1.Place.OpeningHours.Period.Point prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } - } - /** - * - * - *
-       * The localized text of the review.
-       * 
- * - * .google.type.LocalizedText text = 9; - */ - public Builder setText(com.google.type.LocalizedText value) { - if (textBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - text_ = value; - } else { - textBuilder_.setMessage(value); + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } - bitField0_ |= 0x00000004; - onChanged(); - return this; - } - /** - * - * - *
-       * The localized text of the review.
-       * 
- * - * .google.type.LocalizedText text = 9; - */ - public Builder setText(com.google.type.LocalizedText.Builder builderForValue) { - if (textBuilder_ == null) { - text_ = builderForValue.build(); - } else { - textBuilder_.setMessage(builderForValue.build()); + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; } - bitField0_ |= 0x00000004; - onChanged(); - return this; - } - /** - * - * - *
-       * The localized text of the review.
-       * 
- * - * .google.type.LocalizedText text = 9; - */ - public Builder mergeText(com.google.type.LocalizedText value) { - if (textBuilder_ == null) { - if (((bitField0_ & 0x00000004) != 0) - && text_ != null - && text_ != com.google.type.LocalizedText.getDefaultInstance()) { - getTextBuilder().mergeFrom(value); - } else { - text_ = value; + /** + * + * + *
+         * Status changing points.
+         * 
+ * + * Protobuf type {@code google.maps.places.v1.Place.OpeningHours.Period.Point} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place.OpeningHours.Period.Point) + com.google.maps.places.v1.Place.OpeningHours.Period.PointOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_OpeningHours_Period_Point_descriptor; } - } else { - textBuilder_.mergeFrom(value); - } - bitField0_ |= 0x00000004; - onChanged(); - return this; - } - /** - * - * - *
-       * The localized text of the review.
-       * 
- * - * .google.type.LocalizedText text = 9; - */ - public Builder clearText() { - bitField0_ = (bitField0_ & ~0x00000004); - text_ = null; - if (textBuilder_ != null) { - textBuilder_.dispose(); - textBuilder_ = null; - } - onChanged(); - return this; - } - /** - * - * - *
-       * The localized text of the review.
-       * 
- * - * .google.type.LocalizedText text = 9; - */ - public com.google.type.LocalizedText.Builder getTextBuilder() { - bitField0_ |= 0x00000004; - onChanged(); - return getTextFieldBuilder().getBuilder(); - } - /** - * - * - *
-       * The localized text of the review.
-       * 
- * - * .google.type.LocalizedText text = 9; - */ - public com.google.type.LocalizedTextOrBuilder getTextOrBuilder() { - if (textBuilder_ != null) { - return textBuilder_.getMessageOrBuilder(); - } else { - return text_ == null ? com.google.type.LocalizedText.getDefaultInstance() : text_; - } - } - /** - * - * - *
-       * The localized text of the review.
-       * 
- * - * .google.type.LocalizedText text = 9; - */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.LocalizedText, - com.google.type.LocalizedText.Builder, - com.google.type.LocalizedTextOrBuilder> - getTextFieldBuilder() { - if (textBuilder_ == null) { - textBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.type.LocalizedText, - com.google.type.LocalizedText.Builder, - com.google.type.LocalizedTextOrBuilder>( - getText(), getParentForChildren(), isClean()); - text_ = null; - } - return textBuilder_; - } - - private java.lang.Object author_ = ""; - /** - * - * - *
-       * The name of the review author.
-       * 
- * - * string author = 4; - * - * @return The author. - */ - public java.lang.String getAuthor() { - java.lang.Object ref = author_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - author_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * - * - *
-       * The name of the review author.
-       * 
- * - * string author = 4; - * - * @return The bytes for author. - */ - public com.google.protobuf.ByteString getAuthorBytes() { - java.lang.Object ref = author_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - author_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - * - * - *
-       * The name of the review author.
-       * 
- * - * string author = 4; - * - * @param value The author to set. - * @return This builder for chaining. - */ - public Builder setAuthor(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - author_ = value; - bitField0_ |= 0x00000008; - onChanged(); - return this; - } - /** - * - * - *
-       * The name of the review author.
-       * 
- * - * string author = 4; - * - * @return This builder for chaining. - */ - public Builder clearAuthor() { - author_ = getDefaultInstance().getAuthor(); - bitField0_ = (bitField0_ & ~0x00000008); - onChanged(); - return this; - } - /** - * - * - *
-       * The name of the review author.
-       * 
- * - * string author = 4; - * - * @param value The bytes for author to set. - * @return This builder for chaining. - */ - public Builder setAuthorBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - author_ = value; - bitField0_ |= 0x00000008; - onChanged(); - return this; - } - private java.lang.Object authorUri_ = ""; - /** - * - * - *
-       * A link to the review author's profile.
-       * 
- * - * string author_uri = 5; - * - * @return The authorUri. - */ - public java.lang.String getAuthorUri() { - java.lang.Object ref = authorUri_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - authorUri_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * - * - *
-       * A link to the review author's profile.
-       * 
- * - * string author_uri = 5; - * - * @return The bytes for authorUri. - */ - public com.google.protobuf.ByteString getAuthorUriBytes() { - java.lang.Object ref = authorUri_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - authorUri_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - * - * - *
-       * A link to the review author's profile.
-       * 
- * - * string author_uri = 5; - * - * @param value The authorUri to set. - * @return This builder for chaining. - */ - public Builder setAuthorUri(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - authorUri_ = value; - bitField0_ |= 0x00000010; - onChanged(); - return this; - } - /** - * - * - *
-       * A link to the review author's profile.
-       * 
- * - * string author_uri = 5; - * - * @return This builder for chaining. - */ - public Builder clearAuthorUri() { - authorUri_ = getDefaultInstance().getAuthorUri(); - bitField0_ = (bitField0_ & ~0x00000010); - onChanged(); - return this; - } - /** - * - * - *
-       * A link to the review author's profile.
-       * 
- * - * string author_uri = 5; - * - * @param value The bytes for authorUri to set. - * @return This builder for chaining. - */ - public Builder setAuthorUriBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - authorUri_ = value; - bitField0_ |= 0x00000010; - onChanged(); - return this; - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_OpeningHours_Period_Point_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Place.OpeningHours.Period.Point.class, + com.google.maps.places.v1.Place.OpeningHours.Period.Point.Builder.class); + } - private java.lang.Object authorPhotoUri_ = ""; - /** - * - * - *
-       * The author's profile photo.
-       * 
- * - * string author_photo_uri = 6; - * - * @return The authorPhotoUri. - */ - public java.lang.String getAuthorPhotoUri() { - java.lang.Object ref = authorPhotoUri_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - authorPhotoUri_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * - * - *
-       * The author's profile photo.
-       * 
- * - * string author_photo_uri = 6; - * - * @return The bytes for authorPhotoUri. - */ - public com.google.protobuf.ByteString getAuthorPhotoUriBytes() { - java.lang.Object ref = authorPhotoUri_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - authorPhotoUri_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - * - * - *
-       * The author's profile photo.
-       * 
- * - * string author_photo_uri = 6; - * - * @param value The authorPhotoUri to set. - * @return This builder for chaining. - */ - public Builder setAuthorPhotoUri(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - authorPhotoUri_ = value; - bitField0_ |= 0x00000020; - onChanged(); - return this; - } - /** - * - * - *
-       * The author's profile photo.
-       * 
- * - * string author_photo_uri = 6; - * - * @return This builder for chaining. - */ - public Builder clearAuthorPhotoUri() { - authorPhotoUri_ = getDefaultInstance().getAuthorPhotoUri(); - bitField0_ = (bitField0_ & ~0x00000020); - onChanged(); - return this; - } - /** - * - * - *
-       * The author's profile photo.
-       * 
- * - * string author_photo_uri = 6; - * - * @param value The bytes for authorPhotoUri to set. - * @return This builder for chaining. - */ - public Builder setAuthorPhotoUriBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - authorPhotoUri_ = value; - bitField0_ |= 0x00000020; - onChanged(); - return this; - } - - private double rating_; - /** - * - * - *
-       * A whole number between 1.0 and 5.0, a.k.a. the number of stars.
-       * 
- * - * double rating = 7; - * - * @return The rating. - */ - @java.lang.Override - public double getRating() { - return rating_; - } - /** - * - * - *
-       * A whole number between 1.0 and 5.0, a.k.a. the number of stars.
-       * 
- * - * double rating = 7; - * - * @param value The rating to set. - * @return This builder for chaining. - */ - public Builder setRating(double value) { - - rating_ = value; - bitField0_ |= 0x00000040; - onChanged(); - return this; - } - /** - * - * - *
-       * A whole number between 1.0 and 5.0, a.k.a. the number of stars.
-       * 
- * - * double rating = 7; - * - * @return This builder for chaining. - */ - public Builder clearRating() { - bitField0_ = (bitField0_ & ~0x00000040); - rating_ = 0D; - onChanged(); - return this; - } - - private java.lang.Object originalLanguageCode_ = ""; - /** - * - * - *
-       * A BCP-47 language code indicating the original language of the review.
-       * If the review has been translated, then original_language != language.
-       * This field contains the main language tag only, and not the secondary tag
-       * indicating country or region. For example, all the English reviews are
-       * tagged as 'en', and not 'en-AU' or 'en-UK' and so on.This field is empty
-       * if there is only a rating with no review text.
-       * 
- * - * string original_language_code = 10; - * - * @return The originalLanguageCode. - */ - public java.lang.String getOriginalLanguageCode() { - java.lang.Object ref = originalLanguageCode_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - originalLanguageCode_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * - * - *
-       * A BCP-47 language code indicating the original language of the review.
-       * If the review has been translated, then original_language != language.
-       * This field contains the main language tag only, and not the secondary tag
-       * indicating country or region. For example, all the English reviews are
-       * tagged as 'en', and not 'en-AU' or 'en-UK' and so on.This field is empty
-       * if there is only a rating with no review text.
-       * 
- * - * string original_language_code = 10; - * - * @return The bytes for originalLanguageCode. - */ - public com.google.protobuf.ByteString getOriginalLanguageCodeBytes() { - java.lang.Object ref = originalLanguageCode_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - originalLanguageCode_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - * - * - *
-       * A BCP-47 language code indicating the original language of the review.
-       * If the review has been translated, then original_language != language.
-       * This field contains the main language tag only, and not the secondary tag
-       * indicating country or region. For example, all the English reviews are
-       * tagged as 'en', and not 'en-AU' or 'en-UK' and so on.This field is empty
-       * if there is only a rating with no review text.
-       * 
- * - * string original_language_code = 10; - * - * @param value The originalLanguageCode to set. - * @return This builder for chaining. - */ - public Builder setOriginalLanguageCode(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - originalLanguageCode_ = value; - bitField0_ |= 0x00000080; - onChanged(); - return this; - } - /** - * - * - *
-       * A BCP-47 language code indicating the original language of the review.
-       * If the review has been translated, then original_language != language.
-       * This field contains the main language tag only, and not the secondary tag
-       * indicating country or region. For example, all the English reviews are
-       * tagged as 'en', and not 'en-AU' or 'en-UK' and so on.This field is empty
-       * if there is only a rating with no review text.
-       * 
- * - * string original_language_code = 10; - * - * @return This builder for chaining. - */ - public Builder clearOriginalLanguageCode() { - originalLanguageCode_ = getDefaultInstance().getOriginalLanguageCode(); - bitField0_ = (bitField0_ & ~0x00000080); - onChanged(); - return this; - } - /** - * - * - *
-       * A BCP-47 language code indicating the original language of the review.
-       * If the review has been translated, then original_language != language.
-       * This field contains the main language tag only, and not the secondary tag
-       * indicating country or region. For example, all the English reviews are
-       * tagged as 'en', and not 'en-AU' or 'en-UK' and so on.This field is empty
-       * if there is only a rating with no review text.
-       * 
- * - * string original_language_code = 10; - * - * @param value The bytes for originalLanguageCode to set. - * @return This builder for chaining. - */ - public Builder setOriginalLanguageCodeBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - originalLanguageCode_ = value; - bitField0_ |= 0x00000080; - onChanged(); - return this; - } - - private boolean translated_; - /** - * - * - *
-       * A boolean value indicating if the review was translated from the original
-       * language it was written in. If a review has been translated,
-       * corresponding to a value of true, Google recommends that you indicate
-       * this to your users. For example, you can add the following string,
-       * “Translated by Google”, to the review.
-       * 
- * - * bool translated = 11; - * - * @return The translated. - */ - @java.lang.Override - public boolean getTranslated() { - return translated_; - } - /** - * - * - *
-       * A boolean value indicating if the review was translated from the original
-       * language it was written in. If a review has been translated,
-       * corresponding to a value of true, Google recommends that you indicate
-       * this to your users. For example, you can add the following string,
-       * “Translated by Google”, to the review.
-       * 
- * - * bool translated = 11; - * - * @param value The translated to set. - * @return This builder for chaining. - */ - public Builder setTranslated(boolean value) { - - translated_ = value; - bitField0_ |= 0x00000100; - onChanged(); - return this; - } - /** - * - * - *
-       * A boolean value indicating if the review was translated from the original
-       * language it was written in. If a review has been translated,
-       * corresponding to a value of true, Google recommends that you indicate
-       * this to your users. For example, you can add the following string,
-       * “Translated by Google”, to the review.
-       * 
- * - * bool translated = 11; - * - * @return This builder for chaining. - */ - public Builder clearTranslated() { - bitField0_ = (bitField0_ & ~0x00000100); - translated_ = false; - onChanged(); - return this; - } - - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } + // Construct using com.google.maps.places.v1.Place.OpeningHours.Period.Point.newBuilder() + private Builder() {} - // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Place.Review) - } + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } - // @@protoc_insertion_point(class_scope:google.maps.places.v1.Place.Review) - private static final com.google.maps.places.v1.Place.Review DEFAULT_INSTANCE; + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + day_ = 0; + hour_ = 0; + minute_ = 0; + date_ = null; + if (dateBuilder_ != null) { + dateBuilder_.dispose(); + dateBuilder_ = null; + } + truncated_ = false; + return this; + } - static { - DEFAULT_INSTANCE = new com.google.maps.places.v1.Place.Review(); - } + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_OpeningHours_Period_Point_descriptor; + } - public static com.google.maps.places.v1.Place.Review getDefaultInstance() { - return DEFAULT_INSTANCE; - } + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours.Period.Point + getDefaultInstanceForType() { + return com.google.maps.places.v1.Place.OpeningHours.Period.Point.getDefaultInstance(); + } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { @java.lang.Override - public Review 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()); + public com.google.maps.places.v1.Place.OpeningHours.Period.Point build() { + com.google.maps.places.v1.Place.OpeningHours.Period.Point result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } - return builder.buildPartial(); + return result; } - }; - public static com.google.protobuf.Parser parser() { - return PARSER; - } + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours.Period.Point buildPartial() { + com.google.maps.places.v1.Place.OpeningHours.Period.Point result = + new com.google.maps.places.v1.Place.OpeningHours.Period.Point(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } - - @java.lang.Override - public com.google.maps.places.v1.Place.Review getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + private void buildPartial0( + com.google.maps.places.v1.Place.OpeningHours.Period.Point result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.day_ = day_; + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.hour_ = hour_; + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.minute_ = minute_; + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.date_ = dateBuilder_ == null ? date_ : dateBuilder_.build(); + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.truncated_ = truncated_; + } + result.bitField0_ |= to_bitField0_; + } - public interface OpeningHoursOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Place.OpeningHours) - com.google.protobuf.MessageOrBuilder { + @java.lang.Override + public Builder clone() { + return super.clone(); + } - /** - * - * - *
-     * Is this place open right now?  Always present unless we lack time-of-day
-     * or timezone data for these opening hours.
-     * 
- * - * bool open_now = 1; - * - * @return The openNow. - */ - boolean getOpenNow(); + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } - /** - * - * - *
-     * The periods that this place is open during the week. The periods are in
-     * chronological order, starting with Sunday in the place-local timezone. An
-     * empty (but not absent) value indicates a place that is never open, e.g.
-     * because it is closed temporarily for renovations.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; - * - */ - java.util.List - getPeriodsList(); - /** - * - * - *
-     * The periods that this place is open during the week. The periods are in
-     * chronological order, starting with Sunday in the place-local timezone. An
-     * empty (but not absent) value indicates a place that is never open, e.g.
-     * because it is closed temporarily for renovations.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; - * - */ - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod getPeriods(int index); - /** - * - * - *
-     * The periods that this place is open during the week. The periods are in
-     * chronological order, starting with Sunday in the place-local timezone. An
-     * empty (but not absent) value indicates a place that is never open, e.g.
-     * because it is closed temporarily for renovations.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; - * - */ - int getPeriodsCount(); - /** - * - * - *
-     * The periods that this place is open during the week. The periods are in
-     * chronological order, starting with Sunday in the place-local timezone. An
-     * empty (but not absent) value indicates a place that is never open, e.g.
-     * because it is closed temporarily for renovations.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; - * - */ - java.util.List< - ? extends com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriodOrBuilder> - getPeriodsOrBuilderList(); - /** - * - * - *
-     * The periods that this place is open during the week. The periods are in
-     * chronological order, starting with Sunday in the place-local timezone. An
-     * empty (but not absent) value indicates a place that is never open, e.g.
-     * because it is closed temporarily for renovations.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; - * - */ - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriodOrBuilder getPeriodsOrBuilder( - int index); + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } - /** - * - * - *
-     * Localized strings describing the opening hours of this place, one string
-     * for each day of the week.  Will be empty if the hours are unknown or
-     * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-     * 
- * - * repeated string weekday_descriptions = 3; - * - * @return A list containing the weekdayDescriptions. - */ - java.util.List getWeekdayDescriptionsList(); - /** - * - * - *
-     * Localized strings describing the opening hours of this place, one string
-     * for each day of the week.  Will be empty if the hours are unknown or
-     * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-     * 
- * - * repeated string weekday_descriptions = 3; - * - * @return The count of weekdayDescriptions. - */ - int getWeekdayDescriptionsCount(); - /** - * - * - *
-     * Localized strings describing the opening hours of this place, one string
-     * for each day of the week.  Will be empty if the hours are unknown or
-     * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-     * 
- * - * repeated string weekday_descriptions = 3; - * - * @param index The index of the element to return. - * @return The weekdayDescriptions at the given index. - */ - java.lang.String getWeekdayDescriptions(int index); - /** - * - * - *
-     * Localized strings describing the opening hours of this place, one string
-     * for each day of the week.  Will be empty if the hours are unknown or
-     * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-     * 
- * - * repeated string weekday_descriptions = 3; - * - * @param index The index of the value to return. - * @return The bytes of the weekdayDescriptions at the given index. - */ - com.google.protobuf.ByteString getWeekdayDescriptionsBytes(int index); + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } - /** - * - * - *
-     * A type string used to identify the type of secondary hours.
-     * 
- * - * .google.maps.places.v1.Place.OpeningHours.SecondaryHourType secondary_hour_type = 4; - * - * - * @return The enum numeric value on the wire for secondaryHourType. - */ - int getSecondaryHourTypeValue(); - /** - * - * - *
-     * A type string used to identify the type of secondary hours.
-     * 
- * - * .google.maps.places.v1.Place.OpeningHours.SecondaryHourType secondary_hour_type = 4; - * - * - * @return The secondaryHourType. - */ - com.google.maps.places.v1.Place.OpeningHours.SecondaryHourType getSecondaryHourType(); + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } - /** - * - * - *
-     * Structured information for special days that fall within the period that
-     * the returned opening hours cover. Special days are days that could impact
-     * the business hours of a place, e.g. Christmas day. Set for
-     * current_opening_hours and current_secondary_opening_hours if there are
-     * exceptional hours.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - */ - java.util.List getSpecialDaysList(); - /** - * - * - *
-     * Structured information for special days that fall within the period that
-     * the returned opening hours cover. Special days are days that could impact
-     * the business hours of a place, e.g. Christmas day. Set for
-     * current_opening_hours and current_secondary_opening_hours if there are
-     * exceptional hours.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - */ - com.google.maps.places.v1.Place.OpeningHours.SpecialDay getSpecialDays(int index); - /** - * - * - *
-     * Structured information for special days that fall within the period that
-     * the returned opening hours cover. Special days are days that could impact
-     * the business hours of a place, e.g. Christmas day. Set for
-     * current_opening_hours and current_secondary_opening_hours if there are
-     * exceptional hours.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - */ - int getSpecialDaysCount(); - /** - * - * - *
-     * Structured information for special days that fall within the period that
-     * the returned opening hours cover. Special days are days that could impact
-     * the business hours of a place, e.g. Christmas day. Set for
-     * current_opening_hours and current_secondary_opening_hours if there are
-     * exceptional hours.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - */ - java.util.List - getSpecialDaysOrBuilderList(); - /** - * - * - *
-     * Structured information for special days that fall within the period that
-     * the returned opening hours cover. Special days are days that could impact
-     * the business hours of a place, e.g. Christmas day. Set for
-     * current_opening_hours and current_secondary_opening_hours if there are
-     * exceptional hours.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - */ - com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder getSpecialDaysOrBuilder( - int index); - } - /** - * - * - *
-   * Information about business hour of the place.
-   * 
- * - * Protobuf type {@code google.maps.places.v1.Place.OpeningHours} - */ - public static final class OpeningHours extends com.google.protobuf.GeneratedMessageV3 - implements - // @@protoc_insertion_point(message_implements:google.maps.places.v1.Place.OpeningHours) - OpeningHoursOrBuilder { - private static final long serialVersionUID = 0L; - // Use OpeningHours.newBuilder() to construct. - private OpeningHours(com.google.protobuf.GeneratedMessageV3.Builder builder) { - super(builder); - } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } - private OpeningHours() { - periods_ = java.util.Collections.emptyList(); - weekdayDescriptions_ = com.google.protobuf.LazyStringArrayList.EMPTY; - secondaryHourType_ = 0; - specialDays_ = java.util.Collections.emptyList(); - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.Place.OpeningHours.Period.Point) { + return mergeFrom((com.google.maps.places.v1.Place.OpeningHours.Period.Point) other); + } else { + super.mergeFrom(other); + return this; + } + } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance(UnusedPrivateParameter unused) { - return new OpeningHours(); - } + public Builder mergeFrom( + com.google.maps.places.v1.Place.OpeningHours.Period.Point other) { + if (other + == com.google.maps.places.v1.Place.OpeningHours.Period.Point.getDefaultInstance()) + return this; + if (other.hasDay()) { + setDay(other.getDay()); + } + if (other.hasHour()) { + setHour(other.getHour()); + } + if (other.hasMinute()) { + setMinute(other.getMinute()); + } + if (other.hasDate()) { + mergeDate(other.getDate()); + } + if (other.getTruncated() != false) { + setTruncated(other.getTruncated()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; - } + @java.lang.Override + public final boolean isInitialized() { + return true; + } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_descriptor; - } + @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: + { + day_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: + { + hour_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 24: + { + minute_ = input.readInt32(); + bitField0_ |= 0x00000004; + break; + } // case 24 + case 40: + { + truncated_ = input.readBool(); + bitField0_ |= 0x00000010; + break; + } // case 40 + case 50: + { + input.readMessage(getDateFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000008; + break; + } // case 50 + 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 - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Place.OpeningHours.class, - com.google.maps.places.v1.Place.OpeningHours.Builder.class); - } + private int bitField0_; - /** - * - * - *
-     * A type used to identify the type of secondary hours.
-     * 
- * - * Protobuf enum {@code google.maps.places.v1.Place.OpeningHours.SecondaryHourType} - */ - public enum SecondaryHourType implements com.google.protobuf.ProtocolMessageEnum { - /** - * - * - *
-       * Default value when secondary hour type is not specified.
-       * 
- * - * SECONDARY_HOUR_TYPE_UNSPECIFIED = 0; - */ - SECONDARY_HOUR_TYPE_UNSPECIFIED(0), - /** - * - * - *
-       * The drive-through hour for banks, restaurants, or pharmacies.
-       * 
- * - * DRIVE_THROUGH = 1; - */ - DRIVE_THROUGH(1), - /** - * - * - *
-       * The happy hour.
-       * 
- * - * HAPPY_HOUR = 2; - */ - HAPPY_HOUR(2), - /** - * - * - *
-       * The delivery hour.
-       * 
- * - * DELIVERY = 3; - */ - DELIVERY(3), - /** - * - * - *
-       * The takeout hour.
-       * 
- * - * TAKEOUT = 4; - */ - TAKEOUT(4), - /** - * - * - *
-       * The kitchen hour.
-       * 
- * - * KITCHEN = 5; - */ - KITCHEN(5), - /** - * - * - *
-       * The breakfast hour.
-       * 
- * - * BREAKFAST = 6; - */ - BREAKFAST(6), - /** - * - * - *
-       * The lunch hour.
-       * 
- * - * LUNCH = 7; - */ - LUNCH(7), - /** - * - * - *
-       * The dinner hour.
-       * 
- * - * DINNER = 8; - */ - DINNER(8), - /** - * - * - *
-       * The brunch hour.
-       * 
- * - * BRUNCH = 9; - */ - BRUNCH(9), - /** - * - * - *
-       * The pickup hour.
-       * 
- * - * PICKUP = 10; - */ - PICKUP(10), - /** - * - * - *
-       * The access hours for storage places.
-       * 
- * - * ACCESS = 11; - */ - ACCESS(11), - /** - * - * - *
-       * The special hours for seniors.
-       * 
- * - * SENIOR_HOURS = 12; - */ - SENIOR_HOURS(12), - /** - * - * - *
-       * The online service hours.
-       * 
- * - * ONLINE_SERVICE_HOURS = 13; - */ - ONLINE_SERVICE_HOURS(13), - UNRECOGNIZED(-1), - ; + private int day_; + /** + * + * + *
+           * Output only. A day of the week, as an integer in the range 0-6.  0 is
+           * Sunday, 1 is Monday, etc.
+           * 
+ * + * optional int32 day = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the day field is set. + */ + @java.lang.Override + public boolean hasDay() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * + * + *
+           * Output only. A day of the week, as an integer in the range 0-6.  0 is
+           * Sunday, 1 is Monday, etc.
+           * 
+ * + * optional int32 day = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The day. + */ + @java.lang.Override + public int getDay() { + return day_; + } + /** + * + * + *
+           * Output only. A day of the week, as an integer in the range 0-6.  0 is
+           * Sunday, 1 is Monday, etc.
+           * 
+ * + * optional int32 day = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The day to set. + * @return This builder for chaining. + */ + public Builder setDay(int value) { - /** - * - * - *
-       * Default value when secondary hour type is not specified.
-       * 
- * - * SECONDARY_HOUR_TYPE_UNSPECIFIED = 0; - */ - public static final int SECONDARY_HOUR_TYPE_UNSPECIFIED_VALUE = 0; - /** - * - * - *
-       * The drive-through hour for banks, restaurants, or pharmacies.
-       * 
- * - * DRIVE_THROUGH = 1; - */ - public static final int DRIVE_THROUGH_VALUE = 1; - /** - * - * - *
-       * The happy hour.
-       * 
- * - * HAPPY_HOUR = 2; - */ - public static final int HAPPY_HOUR_VALUE = 2; - /** - * - * - *
-       * The delivery hour.
-       * 
- * - * DELIVERY = 3; - */ - public static final int DELIVERY_VALUE = 3; - /** - * - * - *
-       * The takeout hour.
-       * 
- * - * TAKEOUT = 4; - */ - public static final int TAKEOUT_VALUE = 4; - /** - * - * - *
-       * The kitchen hour.
-       * 
- * - * KITCHEN = 5; - */ - public static final int KITCHEN_VALUE = 5; - /** - * - * - *
-       * The breakfast hour.
-       * 
- * - * BREAKFAST = 6; - */ - public static final int BREAKFAST_VALUE = 6; - /** - * - * - *
-       * The lunch hour.
-       * 
- * - * LUNCH = 7; - */ - public static final int LUNCH_VALUE = 7; - /** - * - * - *
-       * The dinner hour.
-       * 
- * - * DINNER = 8; - */ - public static final int DINNER_VALUE = 8; - /** - * - * - *
-       * The brunch hour.
-       * 
- * - * BRUNCH = 9; - */ - public static final int BRUNCH_VALUE = 9; - /** - * - * - *
-       * The pickup hour.
-       * 
- * - * PICKUP = 10; - */ - public static final int PICKUP_VALUE = 10; - /** - * - * - *
-       * The access hours for storage places.
-       * 
- * - * ACCESS = 11; - */ - public static final int ACCESS_VALUE = 11; - /** - * - * - *
-       * The special hours for seniors.
-       * 
- * - * SENIOR_HOURS = 12; - */ - public static final int SENIOR_HOURS_VALUE = 12; - /** - * - * - *
-       * The online service hours.
-       * 
- * - * ONLINE_SERVICE_HOURS = 13; - */ - public static final int ONLINE_SERVICE_HOURS_VALUE = 13; + day_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+           * Output only. A day of the week, as an integer in the range 0-6.  0 is
+           * Sunday, 1 is Monday, etc.
+           * 
+ * + * optional int32 day = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearDay() { + bitField0_ = (bitField0_ & ~0x00000001); + day_ = 0; + onChanged(); + return this; + } - public final int getNumber() { - if (this == UNRECOGNIZED) { - throw new java.lang.IllegalArgumentException( - "Can't get the number of an unknown enum value."); - } - return value; - } + private int hour_; + /** + * + * + *
+           * Output only. The hour in 2 digits. Ranges from 00 to 23.
+           * 
+ * + * optional int32 hour = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the hour field is set. + */ + @java.lang.Override + public boolean hasHour() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * + * + *
+           * Output only. The hour in 2 digits. Ranges from 00 to 23.
+           * 
+ * + * optional int32 hour = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The hour. + */ + @java.lang.Override + public int getHour() { + return hour_; + } + /** + * + * + *
+           * Output only. The hour in 2 digits. Ranges from 00 to 23.
+           * 
+ * + * optional int32 hour = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The hour to set. + * @return This builder for chaining. + */ + public Builder setHour(int 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 SecondaryHourType 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 SecondaryHourType forNumber(int value) { - switch (value) { - case 0: - return SECONDARY_HOUR_TYPE_UNSPECIFIED; - case 1: - return DRIVE_THROUGH; - case 2: - return HAPPY_HOUR; - case 3: - return DELIVERY; - case 4: - return TAKEOUT; - case 5: - return KITCHEN; - case 6: - return BREAKFAST; - case 7: - return LUNCH; - case 8: - return DINNER; - case 9: - return BRUNCH; - case 10: - return PICKUP; - case 11: - return ACCESS; - case 12: - return SENIOR_HOURS; - case 13: - return ONLINE_SERVICE_HOURS; - 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 SecondaryHourType findValueByNumber(int number) { - return SecondaryHourType.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 final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { - return com.google.maps.places.v1.Place.OpeningHours.getDescriptor().getEnumTypes().get(0); - } - - private static final SecondaryHourType[] VALUES = values(); - - public static SecondaryHourType 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 SecondaryHourType(int value) { - this.value = value; - } - - // @@protoc_insertion_point(enum_scope:google.maps.places.v1.Place.OpeningHours.SecondaryHourType) - } - - public interface OpeningHoursPeriodOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod) - com.google.protobuf.MessageOrBuilder { - - /** - * - * - *
-       * The time that the place starts to be open.
-       * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * - * - * @return Whether the open field is set. - */ - boolean hasOpen(); - /** - * - * - *
-       * The time that the place starts to be open.
-       * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * - * - * @return The open. - */ - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint getOpen(); - /** - * - * - *
-       * The time that the place starts to be open.
-       * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * - */ - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPointOrBuilder - getOpenOrBuilder(); - - /** - * - * - *
-       * The time that the place starts to be closed.
-       * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * - * - * @return Whether the close field is set. - */ - boolean hasClose(); - /** - * - * - *
-       * The time that the place starts to be closed.
-       * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * - * - * @return The close. - */ - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint getClose(); - /** - * - * - *
-       * The time that the place starts to be closed.
-       * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * - */ - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPointOrBuilder - getCloseOrBuilder(); - } - /** - * - * - *
-     * A period the place remains in open_now status.
-     * 
- * - * Protobuf type {@code google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod} - */ - public static final class OpeningHoursPeriod extends com.google.protobuf.GeneratedMessageV3 - implements - // @@protoc_insertion_point(message_implements:google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod) - OpeningHoursPeriodOrBuilder { - private static final long serialVersionUID = 0L; - // Use OpeningHoursPeriod.newBuilder() to construct. - private OpeningHoursPeriod(com.google.protobuf.GeneratedMessageV3.Builder builder) { - super(builder); - } - - private OpeningHoursPeriod() {} - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance(UnusedPrivateParameter unused) { - return new OpeningHoursPeriod(); - } + hour_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * + * + *
+           * Output only. The hour in 2 digits. Ranges from 00 to 23.
+           * 
+ * + * optional int32 hour = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearHour() { + bitField0_ = (bitField0_ & ~0x00000002); + hour_ = 0; + onChanged(); + return this; + } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; - } + private int minute_; + /** + * + * + *
+           * Output only. The minute in 2 digits. Ranges from 00 to 59.
+           * 
+ * + * optional int32 minute = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the minute field is set. + */ + @java.lang.Override + public boolean hasMinute() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * + * + *
+           * Output only. The minute in 2 digits. Ranges from 00 to 59.
+           * 
+ * + * optional int32 minute = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The minute. + */ + @java.lang.Override + public int getMinute() { + return minute_; + } + /** + * + * + *
+           * Output only. The minute in 2 digits. Ranges from 00 to 59.
+           * 
+ * + * optional int32 minute = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The minute to set. + * @return This builder for chaining. + */ + public Builder setMinute(int value) { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_descriptor; - } + minute_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+           * Output only. The minute in 2 digits. Ranges from 00 to 59.
+           * 
+ * + * optional int32 minute = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearMinute() { + bitField0_ = (bitField0_ & ~0x00000004); + minute_ = 0; + onChanged(); + return this; + } - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.class, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.Builder.class); - } + private com.google.type.Date date_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> + dateBuilder_; + /** + * + * + *
+           * Output only. Date in the local timezone for the place.
+           * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the date field is set. + */ + public boolean hasDate() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + * + * + *
+           * Output only. Date in the local timezone for the place.
+           * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The date. + */ + public com.google.type.Date getDate() { + if (dateBuilder_ == null) { + return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; + } else { + return dateBuilder_.getMessage(); + } + } + /** + * + * + *
+           * Output only. Date in the local timezone for the place.
+           * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + public Builder setDate(com.google.type.Date value) { + if (dateBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + date_ = value; + } else { + dateBuilder_.setMessage(value); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+           * Output only. Date in the local timezone for the place.
+           * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + public Builder setDate(com.google.type.Date.Builder builderForValue) { + if (dateBuilder_ == null) { + date_ = builderForValue.build(); + } else { + dateBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+           * Output only. Date in the local timezone for the place.
+           * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + public Builder mergeDate(com.google.type.Date value) { + if (dateBuilder_ == null) { + if (((bitField0_ & 0x00000008) != 0) + && date_ != null + && date_ != com.google.type.Date.getDefaultInstance()) { + getDateBuilder().mergeFrom(value); + } else { + date_ = value; + } + } else { + dateBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+           * Output only. Date in the local timezone for the place.
+           * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + public Builder clearDate() { + bitField0_ = (bitField0_ & ~0x00000008); + date_ = null; + if (dateBuilder_ != null) { + dateBuilder_.dispose(); + dateBuilder_ = null; + } + onChanged(); + return this; + } + /** + * + * + *
+           * Output only. Date in the local timezone for the place.
+           * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + public com.google.type.Date.Builder getDateBuilder() { + bitField0_ |= 0x00000008; + onChanged(); + return getDateFieldBuilder().getBuilder(); + } + /** + * + * + *
+           * Output only. Date in the local timezone for the place.
+           * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + public com.google.type.DateOrBuilder getDateOrBuilder() { + if (dateBuilder_ != null) { + return dateBuilder_.getMessageOrBuilder(); + } else { + return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; + } + } + /** + * + * + *
+           * Output only. Date in the local timezone for the place.
+           * 
+ * + * .google.type.Date date = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> + getDateFieldBuilder() { + if (dateBuilder_ == null) { + dateBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.type.Date, + com.google.type.Date.Builder, + com.google.type.DateOrBuilder>(getDate(), getParentForChildren(), isClean()); + date_ = null; + } + return dateBuilder_; + } - public interface OpeningHoursPointOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint) - com.google.protobuf.MessageOrBuilder { + private boolean truncated_; + /** + * + * + *
+           * Output only. Whether or not this endpoint was truncated. Truncation
+           * occurs when the real hours are outside the times we are willing to
+           * return hours between, so we truncate the hours back to these
+           * boundaries. This ensures that at most 24 * 7 hours from midnight of
+           * the day of the request are returned.
+           * 
+ * + * bool truncated = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The truncated. + */ + @java.lang.Override + public boolean getTruncated() { + return truncated_; + } + /** + * + * + *
+           * Output only. Whether or not this endpoint was truncated. Truncation
+           * occurs when the real hours are outside the times we are willing to
+           * return hours between, so we truncate the hours back to these
+           * boundaries. This ensures that at most 24 * 7 hours from midnight of
+           * the day of the request are returned.
+           * 
+ * + * bool truncated = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The truncated to set. + * @return This builder for chaining. + */ + public Builder setTruncated(boolean value) { - /** - * - * - *
-         * A day of the week, as an integer in the range 0-6.  0 is Sunday, 1 is
-         * Monday, etc.
-         * 
- * - * optional int32 day = 1; - * - * @return Whether the day field is set. - */ - boolean hasDay(); - /** - * - * - *
-         * A day of the week, as an integer in the range 0-6.  0 is Sunday, 1 is
-         * Monday, etc.
-         * 
- * - * optional int32 day = 1; - * - * @return The day. - */ - int getDay(); + truncated_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * + * + *
+           * Output only. Whether or not this endpoint was truncated. Truncation
+           * occurs when the real hours are outside the times we are willing to
+           * return hours between, so we truncate the hours back to these
+           * boundaries. This ensures that at most 24 * 7 hours from midnight of
+           * the day of the request are returned.
+           * 
+ * + * bool truncated = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearTruncated() { + bitField0_ = (bitField0_ & ~0x00000010); + truncated_ = false; + onChanged(); + return this; + } - /** - * - * - *
-         * The hour in 2 digits. Ranges from 00 to 23.
-         * 
- * - * optional int32 hour = 2; - * - * @return Whether the hour field is set. - */ - boolean hasHour(); - /** - * - * - *
-         * The hour in 2 digits. Ranges from 00 to 23.
-         * 
- * - * optional int32 hour = 2; - * - * @return The hour. - */ - int getHour(); + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } - /** - * - * - *
-         * The minute in 2 digits. Ranges from 00 to 59.
-         * 
- * - * optional int32 minute = 3; - * - * @return Whether the minute field is set. - */ - boolean hasMinute(); - /** - * - * - *
-         * The minute in 2 digits. Ranges from 00 to 59.
-         * 
- * - * optional int32 minute = 3; - * - * @return The minute. - */ - int getMinute(); + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } - /** - * - * - *
-         * Date of the endpoint expressed in `RFC3339` format in the local
-         * timezone for the place. For example 2010-12-31.
-         * 
- * - * string date_deprecated = 4 [deprecated = true]; - * - * @deprecated - * google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint.date_deprecated - * is deprecated. See google/maps/places/v1/place.proto;l=128 - * @return The dateDeprecated. - */ - @java.lang.Deprecated - java.lang.String getDateDeprecated(); - /** - * - * - *
-         * Date of the endpoint expressed in `RFC3339` format in the local
-         * timezone for the place. For example 2010-12-31.
-         * 
- * - * string date_deprecated = 4 [deprecated = true]; - * - * @deprecated - * google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint.date_deprecated - * is deprecated. See google/maps/places/v1/place.proto;l=128 - * @return The bytes for dateDeprecated. - */ - @java.lang.Deprecated - com.google.protobuf.ByteString getDateDeprecatedBytes(); + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Place.OpeningHours.Period.Point) + } - /** - * - * - *
-         * Date in the local timezone for the place.
-         * 
- * - * .google.type.Date date = 6; - * - * @return Whether the date field is set. - */ - boolean hasDate(); - /** - * - * - *
-         * Date in the local timezone for the place.
-         * 
- * - * .google.type.Date date = 6; - * - * @return The date. - */ - com.google.type.Date getDate(); - /** - * - * - *
-         * Date in the local timezone for the place.
-         * 
- * - * .google.type.Date date = 6; - */ - com.google.type.DateOrBuilder getDateOrBuilder(); + // @@protoc_insertion_point(class_scope:google.maps.places.v1.Place.OpeningHours.Period.Point) + private static final com.google.maps.places.v1.Place.OpeningHours.Period.Point + DEFAULT_INSTANCE; - /** - * - * - *
-         * Whether or not this endpoint was truncated. Truncation occurs when
-         * the real hours are outside the times we are willing to return hours
-         * between, so we truncate the hours back to these boundaries. This
-         * ensures that at most `24 * 7` hours from midnight of the day of the
-         * request are returned.
-         * 
- * - * bool truncated = 5; - * - * @return The truncated. - */ - boolean getTruncated(); + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.Place.OpeningHours.Period.Point(); + } + + public static com.google.maps.places.v1.Place.OpeningHours.Period.Point + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Point 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.maps.places.v1.Place.OpeningHours.Period.Point + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } } + + public static final int OPEN_FIELD_NUMBER = 1; + private com.google.maps.places.v1.Place.OpeningHours.Period.Point open_; /** * * *
-       * Status changing points.
+       * Output only. The time that the place starts to be open.
        * 
* - * Protobuf type {@code - * google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint} + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the open field is set. */ - public static final class OpeningHoursPoint extends com.google.protobuf.GeneratedMessageV3 - implements - // @@protoc_insertion_point(message_implements:google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint) - OpeningHoursPointOrBuilder { - private static final long serialVersionUID = 0L; - // Use OpeningHoursPoint.newBuilder() to construct. - private OpeningHoursPoint(com.google.protobuf.GeneratedMessageV3.Builder builder) { - super(builder); - } + @java.lang.Override + public boolean hasOpen() { + return open_ != null; + } + /** + * + * + *
+       * Output only. The time that the place starts to be open.
+       * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The open. + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours.Period.Point getOpen() { + return open_ == null + ? com.google.maps.places.v1.Place.OpeningHours.Period.Point.getDefaultInstance() + : open_; + } + /** + * + * + *
+       * Output only. The time that the place starts to be open.
+       * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours.Period.PointOrBuilder getOpenOrBuilder() { + return open_ == null + ? com.google.maps.places.v1.Place.OpeningHours.Period.Point.getDefaultInstance() + : open_; + } - private OpeningHoursPoint() { - dateDeprecated_ = ""; - } + public static final int CLOSE_FIELD_NUMBER = 2; + private com.google.maps.places.v1.Place.OpeningHours.Period.Point close_; + /** + * + * + *
+       * Output only. The time that the place starts to be closed.
+       * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the close field is set. + */ + @java.lang.Override + public boolean hasClose() { + return close_ != null; + } + /** + * + * + *
+       * Output only. The time that the place starts to be closed.
+       * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The close. + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours.Period.Point getClose() { + return close_ == null + ? com.google.maps.places.v1.Place.OpeningHours.Period.Point.getDefaultInstance() + : close_; + } + /** + * + * + *
+       * Output only. The time that the place starts to be closed.
+       * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours.Period.PointOrBuilder + getCloseOrBuilder() { + return close_ == null + ? com.google.maps.places.v1.Place.OpeningHours.Period.Point.getDefaultInstance() + : close_; + } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance(UnusedPrivateParameter unused) { - return new OpeningHoursPoint(); - } + private byte memoizedIsInitialized = -1; - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; + @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 (open_ != null) { + output.writeMessage(1, getOpen()); + } + if (close_ != null) { + output.writeMessage(2, getClose()); } + getUnknownFields().writeTo(output); + } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_OpeningHoursPoint_descriptor; + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (open_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getOpen()); } + if (close_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getClose()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_OpeningHoursPoint_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .class, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .Builder.class); + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; } + if (!(obj instanceof com.google.maps.places.v1.Place.OpeningHours.Period)) { + return super.equals(obj); + } + com.google.maps.places.v1.Place.OpeningHours.Period other = + (com.google.maps.places.v1.Place.OpeningHours.Period) obj; - private int bitField0_; - public static final int DAY_FIELD_NUMBER = 1; - private int day_ = 0; - /** - * - * - *
-         * A day of the week, as an integer in the range 0-6.  0 is Sunday, 1 is
-         * Monday, etc.
-         * 
- * - * optional int32 day = 1; - * - * @return Whether the day field is set. - */ - @java.lang.Override - public boolean hasDay() { - return ((bitField0_ & 0x00000001) != 0); + if (hasOpen() != other.hasOpen()) return false; + if (hasOpen()) { + if (!getOpen().equals(other.getOpen())) return false; } - /** - * - * - *
-         * A day of the week, as an integer in the range 0-6.  0 is Sunday, 1 is
-         * Monday, etc.
-         * 
- * - * optional int32 day = 1; - * - * @return The day. - */ - @java.lang.Override - public int getDay() { - return day_; + if (hasClose() != other.hasClose()) return false; + if (hasClose()) { + if (!getClose().equals(other.getClose())) return false; } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - public static final int HOUR_FIELD_NUMBER = 2; - private int hour_ = 0; - /** - * - * - *
-         * The hour in 2 digits. Ranges from 00 to 23.
-         * 
- * - * optional int32 hour = 2; - * - * @return Whether the hour field is set. - */ - @java.lang.Override - public boolean hasHour() { - return ((bitField0_ & 0x00000002) != 0); + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; } - /** - * - * - *
-         * The hour in 2 digits. Ranges from 00 to 23.
-         * 
- * - * optional int32 hour = 2; - * - * @return The hour. - */ + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasOpen()) { + hash = (37 * hash) + OPEN_FIELD_NUMBER; + hash = (53 * hash) + getOpen().hashCode(); + } + if (hasClose()) { + hash = (37 * hash) + CLOSE_FIELD_NUMBER; + hash = (53 * hash) + getClose().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.Place.OpeningHours.Period parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Place.OpeningHours.Period parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Place.OpeningHours.Period parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Place.OpeningHours.Period parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Place.OpeningHours.Period parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Place.OpeningHours.Period parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Place.OpeningHours.Period parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Place.OpeningHours.Period parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.Place.OpeningHours.Period parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Place.OpeningHours.Period parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.Place.OpeningHours.Period parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Place.OpeningHours.Period parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.maps.places.v1.Place.OpeningHours.Period 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+       * A period the place remains in open_now status.
+       * 
+ * + * Protobuf type {@code google.maps.places.v1.Place.OpeningHours.Period} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place.OpeningHours.Period) + com.google.maps.places.v1.Place.OpeningHours.PeriodOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_OpeningHours_Period_descriptor; + } + @java.lang.Override - public int getHour() { - return hour_; + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_OpeningHours_Period_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Place.OpeningHours.Period.class, + com.google.maps.places.v1.Place.OpeningHours.Period.Builder.class); + } + + // Construct using com.google.maps.places.v1.Place.OpeningHours.Period.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); } - public static final int MINUTE_FIELD_NUMBER = 3; - private int minute_ = 0; - /** - * - * - *
-         * The minute in 2 digits. Ranges from 00 to 59.
-         * 
- * - * optional int32 minute = 3; - * - * @return Whether the minute field is set. - */ @java.lang.Override - public boolean hasMinute() { - return ((bitField0_ & 0x00000004) != 0); + public Builder clear() { + super.clear(); + bitField0_ = 0; + open_ = null; + if (openBuilder_ != null) { + openBuilder_.dispose(); + openBuilder_ = null; + } + close_ = null; + if (closeBuilder_ != null) { + closeBuilder_.dispose(); + closeBuilder_ = null; + } + return this; } - /** - * - * - *
-         * The minute in 2 digits. Ranges from 00 to 59.
-         * 
- * - * optional int32 minute = 3; - * - * @return The minute. - */ + @java.lang.Override - public int getMinute() { - return minute_; + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_OpeningHours_Period_descriptor; } - public static final int DATE_DEPRECATED_FIELD_NUMBER = 4; + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours.Period getDefaultInstanceForType() { + return com.google.maps.places.v1.Place.OpeningHours.Period.getDefaultInstance(); + } - @SuppressWarnings("serial") - private volatile java.lang.Object dateDeprecated_ = ""; - /** - * - * - *
-         * Date of the endpoint expressed in `RFC3339` format in the local
-         * timezone for the place. For example 2010-12-31.
-         * 
- * - * string date_deprecated = 4 [deprecated = true]; - * - * @deprecated - * google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint.date_deprecated - * is deprecated. See google/maps/places/v1/place.proto;l=128 - * @return The dateDeprecated. - */ @java.lang.Override - @java.lang.Deprecated - public java.lang.String getDateDeprecated() { - java.lang.Object ref = dateDeprecated_; - 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(); - dateDeprecated_ = s; - return s; + public com.google.maps.places.v1.Place.OpeningHours.Period build() { + com.google.maps.places.v1.Place.OpeningHours.Period result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } + return result; } - /** - * - * - *
-         * Date of the endpoint expressed in `RFC3339` format in the local
-         * timezone for the place. For example 2010-12-31.
-         * 
- * - * string date_deprecated = 4 [deprecated = true]; - * - * @deprecated - * google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint.date_deprecated - * is deprecated. See google/maps/places/v1/place.proto;l=128 - * @return The bytes for dateDeprecated. - */ + @java.lang.Override - @java.lang.Deprecated - public com.google.protobuf.ByteString getDateDeprecatedBytes() { - java.lang.Object ref = dateDeprecated_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - dateDeprecated_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + public com.google.maps.places.v1.Place.OpeningHours.Period buildPartial() { + com.google.maps.places.v1.Place.OpeningHours.Period result = + new com.google.maps.places.v1.Place.OpeningHours.Period(this); + if (bitField0_ != 0) { + buildPartial0(result); } + onBuilt(); + return result; } - public static final int DATE_FIELD_NUMBER = 6; - private com.google.type.Date date_; + private void buildPartial0(com.google.maps.places.v1.Place.OpeningHours.Period result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.open_ = openBuilder_ == null ? open_ : openBuilder_.build(); + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.close_ = closeBuilder_ == null ? close_ : closeBuilder_.build(); + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.Place.OpeningHours.Period) { + return mergeFrom((com.google.maps.places.v1.Place.OpeningHours.Period) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.maps.places.v1.Place.OpeningHours.Period other) { + if (other == com.google.maps.places.v1.Place.OpeningHours.Period.getDefaultInstance()) + return this; + if (other.hasOpen()) { + mergeOpen(other.getOpen()); + } + if (other.hasClose()) { + mergeClose(other.getClose()); + } + 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(getOpenFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + input.readMessage(getCloseFieldBuilder().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 com.google.maps.places.v1.Place.OpeningHours.Period.Point open_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours.Period.Point, + com.google.maps.places.v1.Place.OpeningHours.Period.Point.Builder, + com.google.maps.places.v1.Place.OpeningHours.Period.PointOrBuilder> + openBuilder_; /** * * *
-         * Date in the local timezone for the place.
+         * Output only. The time that the place starts to be open.
          * 
* - * .google.type.Date date = 6; + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return Whether the date field is set. + * @return Whether the open field is set. */ - @java.lang.Override - public boolean hasDate() { - return date_ != null; + public boolean hasOpen() { + return ((bitField0_ & 0x00000001) != 0); } /** * * *
-         * Date in the local timezone for the place.
+         * Output only. The time that the place starts to be open.
          * 
* - * .google.type.Date date = 6; + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The date. + * @return The open. */ - @java.lang.Override - public com.google.type.Date getDate() { - return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; + public com.google.maps.places.v1.Place.OpeningHours.Period.Point getOpen() { + if (openBuilder_ == null) { + return open_ == null + ? com.google.maps.places.v1.Place.OpeningHours.Period.Point.getDefaultInstance() + : open_; + } else { + return openBuilder_.getMessage(); + } } /** * * *
-         * Date in the local timezone for the place.
+         * Output only. The time that the place starts to be open.
          * 
* - * .google.type.Date date = 6; + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public com.google.type.DateOrBuilder getDateOrBuilder() { - return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; + public Builder setOpen(com.google.maps.places.v1.Place.OpeningHours.Period.Point value) { + if (openBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + open_ = value; + } else { + openBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; } - - public static final int TRUNCATED_FIELD_NUMBER = 5; - private boolean truncated_ = false; /** * * *
-         * Whether or not this endpoint was truncated. Truncation occurs when
-         * the real hours are outside the times we are willing to return hours
-         * between, so we truncate the hours back to these boundaries. This
-         * ensures that at most `24 * 7` hours from midnight of the day of the
-         * request are returned.
+         * Output only. The time that the place starts to be open.
          * 
* - * bool truncated = 5; - * - * @return The truncated. + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public boolean getTruncated() { - return truncated_; - } - - 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.writeInt32(1, day_); - } - if (((bitField0_ & 0x00000002) != 0)) { - output.writeInt32(2, hour_); - } - if (((bitField0_ & 0x00000004) != 0)) { - output.writeInt32(3, minute_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dateDeprecated_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 4, dateDeprecated_); - } - if (truncated_ != false) { - output.writeBool(5, truncated_); - } - if (date_ != null) { - output.writeMessage(6, getDate()); + public Builder setOpen( + com.google.maps.places.v1.Place.OpeningHours.Period.Point.Builder builderForValue) { + if (openBuilder_ == null) { + open_ = builderForValue.build(); + } else { + openBuilder_.setMessage(builderForValue.build()); } - getUnknownFields().writeTo(output); + bitField0_ |= 0x00000001; + onChanged(); + return this; } - - @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.computeInt32Size(1, day_); - } - if (((bitField0_ & 0x00000002) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, hour_); - } - if (((bitField0_ & 0x00000004) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(3, minute_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dateDeprecated_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, dateDeprecated_); - } - if (truncated_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(5, truncated_); - } - if (date_ != null) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getDate()); + /** + * + * + *
+         * Output only. The time that the place starts to be open.
+         * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeOpen(com.google.maps.places.v1.Place.OpeningHours.Period.Point value) { + if (openBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0) + && open_ != null + && open_ + != com.google.maps.places.v1.Place.OpeningHours.Period.Point + .getDefaultInstance()) { + getOpenBuilder().mergeFrom(value); + } else { + open_ = value; + } + } else { + openBuilder_.mergeFrom(value); } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; + bitField0_ |= 0x00000001; + onChanged(); + return this; } - - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj - instanceof - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint)) { - return super.equals(obj); - } - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint other = - (com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint) - obj; - - if (hasDay() != other.hasDay()) return false; - if (hasDay()) { - if (getDay() != other.getDay()) return false; - } - if (hasHour() != other.hasHour()) return false; - if (hasHour()) { - if (getHour() != other.getHour()) return false; - } - if (hasMinute() != other.hasMinute()) return false; - if (hasMinute()) { - if (getMinute() != other.getMinute()) return false; - } - if (!getDateDeprecated().equals(other.getDateDeprecated())) return false; - if (hasDate() != other.hasDate()) return false; - if (hasDate()) { - if (!getDate().equals(other.getDate())) return false; - } - if (getTruncated() != other.getTruncated()) 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 (hasDay()) { - hash = (37 * hash) + DAY_FIELD_NUMBER; - hash = (53 * hash) + getDay(); - } - if (hasHour()) { - hash = (37 * hash) + HOUR_FIELD_NUMBER; - hash = (53 * hash) + getHour(); - } - if (hasMinute()) { - hash = (37 * hash) + MINUTE_FIELD_NUMBER; - hash = (53 * hash) + getMinute(); - } - hash = (37 * hash) + DATE_DEPRECATED_FIELD_NUMBER; - hash = (53 * hash) + getDateDeprecated().hashCode(); - if (hasDate()) { - hash = (37 * hash) + DATE_FIELD_NUMBER; - hash = (53 * hash) + getDate().hashCode(); + /** + * + * + *
+         * Output only. The time that the place starts to be open.
+         * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearOpen() { + bitField0_ = (bitField0_ & ~0x00000001); + open_ = null; + if (openBuilder_ != null) { + openBuilder_.dispose(); + openBuilder_ = null; } - hash = (37 * hash) + TRUNCATED_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getTruncated()); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint - parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint - parseFrom( - java.nio.ByteBuffer data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint - parseFrom(com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint - parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint - parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint - parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint - parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint - parseFrom( - java.io.InputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint - parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( - PARSER, input); - } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint - parseDelimitedFrom( - java.io.InputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint - parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + onChanged(); + return this; } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint - parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); + /** + * + * + *
+         * Output only. The time that the place starts to be open.
+         * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.OpeningHours.Period.Point.Builder getOpenBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return getOpenFieldBuilder().getBuilder(); } - - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); + /** + * + * + *
+         * Output only. The time that the place starts to be open.
+         * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.OpeningHours.Period.PointOrBuilder + getOpenOrBuilder() { + if (openBuilder_ != null) { + return openBuilder_.getMessageOrBuilder(); + } else { + return open_ == null + ? com.google.maps.places.v1.Place.OpeningHours.Period.Point.getDefaultInstance() + : open_; + } } - - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); + /** + * + * + *
+         * Output only. The time that the place starts to be open.
+         * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point open = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours.Period.Point, + com.google.maps.places.v1.Place.OpeningHours.Period.Point.Builder, + com.google.maps.places.v1.Place.OpeningHours.Period.PointOrBuilder> + getOpenFieldBuilder() { + if (openBuilder_ == null) { + openBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours.Period.Point, + com.google.maps.places.v1.Place.OpeningHours.Period.Point.Builder, + com.google.maps.places.v1.Place.OpeningHours.Period.PointOrBuilder>( + getOpen(), getParentForChildren(), isClean()); + open_ = null; + } + return openBuilder_; } - public static Builder newBuilder( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + private com.google.maps.places.v1.Place.OpeningHours.Period.Point close_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours.Period.Point, + com.google.maps.places.v1.Place.OpeningHours.Period.Point.Builder, + com.google.maps.places.v1.Place.OpeningHours.Period.PointOrBuilder> + closeBuilder_; + /** + * + * + *
+         * Output only. The time that the place starts to be closed.
+         * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the close field is set. + */ + public boolean hasClose() { + return ((bitField0_ & 0x00000002) != 0); } - - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + /** + * + * + *
+         * Output only. The time that the place starts to be closed.
+         * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The close. + */ + public com.google.maps.places.v1.Place.OpeningHours.Period.Point getClose() { + if (closeBuilder_ == null) { + return close_ == null + ? com.google.maps.places.v1.Place.OpeningHours.Period.Point.getDefaultInstance() + : close_; + } else { + return closeBuilder_.getMessage(); + } } - - @java.lang.Override - protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; + /** + * + * + *
+         * Output only. The time that the place starts to be closed.
+         * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setClose(com.google.maps.places.v1.Place.OpeningHours.Period.Point value) { + if (closeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + close_ = value; + } else { + closeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; } /** * * *
-         * Status changing points.
+         * Output only. The time that the place starts to be closed.
          * 
* - * Protobuf type {@code - * google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint} + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public static final class Builder - extends com.google.protobuf.GeneratedMessageV3.Builder - implements - // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint) - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPointOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_OpeningHoursPoint_descriptor; + public Builder setClose( + com.google.maps.places.v1.Place.OpeningHours.Period.Point.Builder builderForValue) { + if (closeBuilder_ == null) { + close_ = builderForValue.build(); + } else { + closeBuilder_.setMessage(builderForValue.build()); } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_OpeningHoursPoint_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint.class, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint.Builder.class); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * + * + *
+         * Output only. The time that the place starts to be closed.
+         * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeClose(com.google.maps.places.v1.Place.OpeningHours.Period.Point value) { + if (closeBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0) + && close_ != null + && close_ + != com.google.maps.places.v1.Place.OpeningHours.Period.Point + .getDefaultInstance()) { + getCloseBuilder().mergeFrom(value); + } else { + close_ = value; + } + } else { + closeBuilder_.mergeFrom(value); } - - // Construct using - // com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint.newBuilder() - private Builder() {} - - private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * + * + *
+         * Output only. The time that the place starts to be closed.
+         * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearClose() { + bitField0_ = (bitField0_ & ~0x00000002); + close_ = null; + if (closeBuilder_ != null) { + closeBuilder_.dispose(); + closeBuilder_ = null; } - - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - day_ = 0; - hour_ = 0; - minute_ = 0; - dateDeprecated_ = ""; - date_ = null; - if (dateBuilder_ != null) { - dateBuilder_.dispose(); - dateBuilder_ = null; - } - truncated_ = false; - return this; + onChanged(); + return this; + } + /** + * + * + *
+         * Output only. The time that the place starts to be closed.
+         * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.OpeningHours.Period.Point.Builder getCloseBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return getCloseFieldBuilder().getBuilder(); + } + /** + * + * + *
+         * Output only. The time that the place starts to be closed.
+         * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.OpeningHours.Period.PointOrBuilder + getCloseOrBuilder() { + if (closeBuilder_ != null) { + return closeBuilder_.getMessageOrBuilder(); + } else { + return close_ == null + ? com.google.maps.places.v1.Place.OpeningHours.Period.Point.getDefaultInstance() + : close_; } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_OpeningHoursPoint_descriptor; + } + /** + * + * + *
+         * Output only. The time that the place starts to be closed.
+         * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.Period.Point close = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours.Period.Point, + com.google.maps.places.v1.Place.OpeningHours.Period.Point.Builder, + com.google.maps.places.v1.Place.OpeningHours.Period.PointOrBuilder> + getCloseFieldBuilder() { + if (closeBuilder_ == null) { + closeBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours.Period.Point, + com.google.maps.places.v1.Place.OpeningHours.Period.Point.Builder, + com.google.maps.places.v1.Place.OpeningHours.Period.PointOrBuilder>( + getClose(), getParentForChildren(), isClean()); + close_ = null; } + return closeBuilder_; + } - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - getDefaultInstanceForType() { - return com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .getDefaultInstance(); - } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - build() { - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - buildPartial() { - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - result = - new com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; - } + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Place.OpeningHours.Period) + } - private void buildPartial0( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - result) { - int from_bitField0_ = bitField0_; - int to_bitField0_ = 0; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.day_ = day_; - to_bitField0_ |= 0x00000001; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.hour_ = hour_; - to_bitField0_ |= 0x00000002; - } - if (((from_bitField0_ & 0x00000004) != 0)) { - result.minute_ = minute_; - to_bitField0_ |= 0x00000004; - } - if (((from_bitField0_ & 0x00000008) != 0)) { - result.dateDeprecated_ = dateDeprecated_; - } - if (((from_bitField0_ & 0x00000010) != 0)) { - result.date_ = dateBuilder_ == null ? date_ : dateBuilder_.build(); - } - if (((from_bitField0_ & 0x00000020) != 0)) { - result.truncated_ = truncated_; - } - result.bitField0_ |= to_bitField0_; - } + // @@protoc_insertion_point(class_scope:google.maps.places.v1.Place.OpeningHours.Period) + private static final com.google.maps.places.v1.Place.OpeningHours.Period DEFAULT_INSTANCE; - @java.lang.Override - public Builder clone() { - return super.clone(); - } + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.Place.OpeningHours.Period(); + } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.setField(field, value); - } + public static com.google.maps.places.v1.Place.OpeningHours.Period getDefaultInstance() { + return DEFAULT_INSTANCE; + } - @java.lang.Override - public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Period 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 clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } + public static com.google.protobuf.Parser parser() { + return PARSER; + } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, - java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.addRepeatedField(field, value); - } + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours.Period getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other - instanceof - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint) { - return mergeFrom( - (com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint) - other); - } else { - super.mergeFrom(other); - return this; - } - } + public interface SpecialDayOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Place.OpeningHours.SpecialDay) + com.google.protobuf.MessageOrBuilder { - public Builder mergeFrom( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - other) { - if (other - == com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .getDefaultInstance()) return this; - if (other.hasDay()) { - setDay(other.getDay()); - } - if (other.hasHour()) { - setHour(other.getHour()); - } - if (other.hasMinute()) { - setMinute(other.getMinute()); - } - if (!other.getDateDeprecated().isEmpty()) { - dateDeprecated_ = other.dateDeprecated_; - bitField0_ |= 0x00000008; - onChanged(); - } - if (other.hasDate()) { - mergeDate(other.getDate()); - } - if (other.getTruncated() != false) { - setTruncated(other.getTruncated()); - } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; - } + /** + * + * + *
+       * Output only. The date of this special day.
+       * 
+ * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the date field is set. + */ + boolean hasDate(); + /** + * + * + *
+       * Output only. The date of this special day.
+       * 
+ * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The date. + */ + com.google.type.Date getDate(); + /** + * + * + *
+       * Output only. The date of this special day.
+       * 
+ * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + com.google.type.DateOrBuilder getDateOrBuilder(); + } + /** + * + * + *
+     * Structured information for special days that fall within the period that
+     * the returned opening hours cover. Special days are days that could impact
+     * the business hours of a place, e.g. Christmas day.
+     * 
+ * + * Protobuf type {@code google.maps.places.v1.Place.OpeningHours.SpecialDay} + */ + public static final class SpecialDay extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.Place.OpeningHours.SpecialDay) + SpecialDayOrBuilder { + private static final long serialVersionUID = 0L; + // Use SpecialDay.newBuilder() to construct. + private SpecialDay(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } - @java.lang.Override - public final boolean isInitialized() { - return true; - } + private SpecialDay() {} - @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: - { - day_ = input.readInt32(); - bitField0_ |= 0x00000001; - break; - } // case 8 - case 16: - { - hour_ = input.readInt32(); - bitField0_ |= 0x00000002; - break; - } // case 16 - case 24: - { - minute_ = input.readInt32(); - bitField0_ |= 0x00000004; - break; - } // case 24 - case 34: - { - dateDeprecated_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000008; - break; - } // case 34 - case 40: - { - truncated_ = input.readBool(); - bitField0_ |= 0x00000020; - break; - } // case 40 - case 50: - { - input.readMessage(getDateFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000010; - break; - } // case 50 - 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 + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new SpecialDay(); + } - private int bitField0_; + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_OpeningHours_SpecialDay_descriptor; + } - private int day_; - /** - * - * - *
-           * A day of the week, as an integer in the range 0-6.  0 is Sunday, 1 is
-           * Monday, etc.
-           * 
- * - * optional int32 day = 1; - * - * @return Whether the day field is set. - */ - @java.lang.Override - public boolean hasDay() { - return ((bitField0_ & 0x00000001) != 0); - } - /** - * - * - *
-           * A day of the week, as an integer in the range 0-6.  0 is Sunday, 1 is
-           * Monday, etc.
-           * 
- * - * optional int32 day = 1; - * - * @return The day. - */ - @java.lang.Override - public int getDay() { - return day_; - } - /** - * - * - *
-           * A day of the week, as an integer in the range 0-6.  0 is Sunday, 1 is
-           * Monday, etc.
-           * 
- * - * optional int32 day = 1; - * - * @param value The day to set. - * @return This builder for chaining. - */ - public Builder setDay(int value) { + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_OpeningHours_SpecialDay_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Place.OpeningHours.SpecialDay.class, + com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder.class); + } - day_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - /** - * - * - *
-           * A day of the week, as an integer in the range 0-6.  0 is Sunday, 1 is
-           * Monday, etc.
-           * 
- * - * optional int32 day = 1; - * - * @return This builder for chaining. - */ - public Builder clearDay() { - bitField0_ = (bitField0_ & ~0x00000001); - day_ = 0; - onChanged(); - return this; - } + public static final int DATE_FIELD_NUMBER = 1; + private com.google.type.Date date_; + /** + * + * + *
+       * Output only. The date of this special day.
+       * 
+ * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the date field is set. + */ + @java.lang.Override + public boolean hasDate() { + return date_ != null; + } + /** + * + * + *
+       * Output only. The date of this special day.
+       * 
+ * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The date. + */ + @java.lang.Override + public com.google.type.Date getDate() { + return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; + } + /** + * + * + *
+       * Output only. The date of this special day.
+       * 
+ * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + @java.lang.Override + public com.google.type.DateOrBuilder getDateOrBuilder() { + return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; + } - private int hour_; - /** - * - * - *
-           * The hour in 2 digits. Ranges from 00 to 23.
-           * 
- * - * optional int32 hour = 2; - * - * @return Whether the hour field is set. - */ - @java.lang.Override - public boolean hasHour() { - return ((bitField0_ & 0x00000002) != 0); - } - /** - * - * - *
-           * The hour in 2 digits. Ranges from 00 to 23.
-           * 
- * - * optional int32 hour = 2; - * - * @return The hour. - */ - @java.lang.Override - public int getHour() { - return hour_; - } - /** - * - * - *
-           * The hour in 2 digits. Ranges from 00 to 23.
-           * 
- * - * optional int32 hour = 2; - * - * @param value The hour to set. - * @return This builder for chaining. - */ - public Builder setHour(int value) { + private byte memoizedIsInitialized = -1; - hour_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - /** - * - * - *
-           * The hour in 2 digits. Ranges from 00 to 23.
-           * 
- * - * optional int32 hour = 2; - * - * @return This builder for chaining. - */ - public Builder clearHour() { - bitField0_ = (bitField0_ & ~0x00000002); - hour_ = 0; - onChanged(); - return this; - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - private int minute_; - /** - * - * - *
-           * The minute in 2 digits. Ranges from 00 to 59.
-           * 
- * - * optional int32 minute = 3; - * - * @return Whether the minute field is set. - */ - @java.lang.Override - public boolean hasMinute() { - return ((bitField0_ & 0x00000004) != 0); - } - /** - * - * - *
-           * The minute in 2 digits. Ranges from 00 to 59.
-           * 
- * - * optional int32 minute = 3; - * - * @return The minute. - */ - @java.lang.Override - public int getMinute() { - return minute_; - } - /** - * - * - *
-           * The minute in 2 digits. Ranges from 00 to 59.
-           * 
- * - * optional int32 minute = 3; - * - * @param value The minute to set. - * @return This builder for chaining. - */ - public Builder setMinute(int value) { + memoizedIsInitialized = 1; + return true; + } - minute_ = value; - bitField0_ |= 0x00000004; - onChanged(); - return this; - } - /** - * - * - *
-           * The minute in 2 digits. Ranges from 00 to 59.
-           * 
- * - * optional int32 minute = 3; - * - * @return This builder for chaining. - */ - public Builder clearMinute() { - bitField0_ = (bitField0_ & ~0x00000004); - minute_ = 0; - onChanged(); - return this; - } + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (date_ != null) { + output.writeMessage(1, getDate()); + } + getUnknownFields().writeTo(output); + } - private java.lang.Object dateDeprecated_ = ""; - /** - * - * - *
-           * Date of the endpoint expressed in `RFC3339` format in the local
-           * timezone for the place. For example 2010-12-31.
-           * 
- * - * string date_deprecated = 4 [deprecated = true]; - * - * @deprecated - * google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint.date_deprecated - * is deprecated. See google/maps/places/v1/place.proto;l=128 - * @return The dateDeprecated. - */ - @java.lang.Deprecated - public java.lang.String getDateDeprecated() { - java.lang.Object ref = dateDeprecated_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - dateDeprecated_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * - * - *
-           * Date of the endpoint expressed in `RFC3339` format in the local
-           * timezone for the place. For example 2010-12-31.
-           * 
- * - * string date_deprecated = 4 [deprecated = true]; - * - * @deprecated - * google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint.date_deprecated - * is deprecated. See google/maps/places/v1/place.proto;l=128 - * @return The bytes for dateDeprecated. - */ - @java.lang.Deprecated - public com.google.protobuf.ByteString getDateDeprecatedBytes() { - java.lang.Object ref = dateDeprecated_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - dateDeprecated_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - * - * - *
-           * Date of the endpoint expressed in `RFC3339` format in the local
-           * timezone for the place. For example 2010-12-31.
-           * 
- * - * string date_deprecated = 4 [deprecated = true]; - * - * @deprecated - * google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint.date_deprecated - * is deprecated. See google/maps/places/v1/place.proto;l=128 - * @param value The dateDeprecated to set. - * @return This builder for chaining. - */ - @java.lang.Deprecated - public Builder setDateDeprecated(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - dateDeprecated_ = value; - bitField0_ |= 0x00000008; - onChanged(); - return this; - } - /** - * - * - *
-           * Date of the endpoint expressed in `RFC3339` format in the local
-           * timezone for the place. For example 2010-12-31.
-           * 
- * - * string date_deprecated = 4 [deprecated = true]; - * - * @deprecated - * google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint.date_deprecated - * is deprecated. See google/maps/places/v1/place.proto;l=128 - * @return This builder for chaining. - */ - @java.lang.Deprecated - public Builder clearDateDeprecated() { - dateDeprecated_ = getDefaultInstance().getDateDeprecated(); - bitField0_ = (bitField0_ & ~0x00000008); - onChanged(); - return this; - } - /** - * - * - *
-           * Date of the endpoint expressed in `RFC3339` format in the local
-           * timezone for the place. For example 2010-12-31.
-           * 
- * - * string date_deprecated = 4 [deprecated = true]; - * - * @deprecated - * google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint.date_deprecated - * is deprecated. See google/maps/places/v1/place.proto;l=128 - * @param value The bytes for dateDeprecated to set. - * @return This builder for chaining. - */ - @java.lang.Deprecated - public Builder setDateDeprecatedBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - dateDeprecated_ = value; - bitField0_ |= 0x00000008; - onChanged(); - return this; - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - private com.google.type.Date date_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> - dateBuilder_; - /** - * - * - *
-           * Date in the local timezone for the place.
-           * 
- * - * .google.type.Date date = 6; - * - * @return Whether the date field is set. - */ - public boolean hasDate() { - return ((bitField0_ & 0x00000010) != 0); - } - /** - * - * - *
-           * Date in the local timezone for the place.
-           * 
- * - * .google.type.Date date = 6; - * - * @return The date. - */ - public com.google.type.Date getDate() { - if (dateBuilder_ == null) { - return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; - } else { - return dateBuilder_.getMessage(); - } - } - /** - * - * - *
-           * Date in the local timezone for the place.
-           * 
- * - * .google.type.Date date = 6; - */ - public Builder setDate(com.google.type.Date value) { - if (dateBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - date_ = value; - } else { - dateBuilder_.setMessage(value); - } - bitField0_ |= 0x00000010; - onChanged(); - return this; - } - /** - * - * - *
-           * Date in the local timezone for the place.
-           * 
- * - * .google.type.Date date = 6; - */ - public Builder setDate(com.google.type.Date.Builder builderForValue) { - if (dateBuilder_ == null) { - date_ = builderForValue.build(); - } else { - dateBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000010; - onChanged(); - return this; - } - /** - * - * - *
-           * Date in the local timezone for the place.
-           * 
- * - * .google.type.Date date = 6; - */ - public Builder mergeDate(com.google.type.Date value) { - if (dateBuilder_ == null) { - if (((bitField0_ & 0x00000010) != 0) - && date_ != null - && date_ != com.google.type.Date.getDefaultInstance()) { - getDateBuilder().mergeFrom(value); - } else { - date_ = value; - } - } else { - dateBuilder_.mergeFrom(value); - } - bitField0_ |= 0x00000010; - onChanged(); - return this; - } - /** - * - * - *
-           * Date in the local timezone for the place.
-           * 
- * - * .google.type.Date date = 6; - */ - public Builder clearDate() { - bitField0_ = (bitField0_ & ~0x00000010); - date_ = null; - if (dateBuilder_ != null) { - dateBuilder_.dispose(); - dateBuilder_ = null; - } - onChanged(); - return this; - } - /** - * - * - *
-           * Date in the local timezone for the place.
-           * 
- * - * .google.type.Date date = 6; - */ - public com.google.type.Date.Builder getDateBuilder() { - bitField0_ |= 0x00000010; - onChanged(); - return getDateFieldBuilder().getBuilder(); - } - /** - * - * - *
-           * Date in the local timezone for the place.
-           * 
- * - * .google.type.Date date = 6; - */ - public com.google.type.DateOrBuilder getDateOrBuilder() { - if (dateBuilder_ != null) { - return dateBuilder_.getMessageOrBuilder(); - } else { - return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; - } - } - /** - * - * - *
-           * Date in the local timezone for the place.
-           * 
- * - * .google.type.Date date = 6; - */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> - getDateFieldBuilder() { - if (dateBuilder_ == null) { - dateBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.type.Date, - com.google.type.Date.Builder, - com.google.type.DateOrBuilder>(getDate(), getParentForChildren(), isClean()); - date_ = null; - } - return dateBuilder_; - } - - private boolean truncated_; - /** - * - * - *
-           * Whether or not this endpoint was truncated. Truncation occurs when
-           * the real hours are outside the times we are willing to return hours
-           * between, so we truncate the hours back to these boundaries. This
-           * ensures that at most `24 * 7` hours from midnight of the day of the
-           * request are returned.
-           * 
- * - * bool truncated = 5; - * - * @return The truncated. - */ - @java.lang.Override - public boolean getTruncated() { - return truncated_; - } - /** - * - * - *
-           * Whether or not this endpoint was truncated. Truncation occurs when
-           * the real hours are outside the times we are willing to return hours
-           * between, so we truncate the hours back to these boundaries. This
-           * ensures that at most `24 * 7` hours from midnight of the day of the
-           * request are returned.
-           * 
- * - * bool truncated = 5; - * - * @param value The truncated to set. - * @return This builder for chaining. - */ - public Builder setTruncated(boolean value) { - - truncated_ = value; - bitField0_ |= 0x00000020; - onChanged(); - return this; - } - /** - * - * - *
-           * Whether or not this endpoint was truncated. Truncation occurs when
-           * the real hours are outside the times we are willing to return hours
-           * between, so we truncate the hours back to these boundaries. This
-           * ensures that at most `24 * 7` hours from midnight of the day of the
-           * request are returned.
-           * 
- * - * bool truncated = 5; - * - * @return This builder for chaining. - */ - public Builder clearTruncated() { - bitField0_ = (bitField0_ & ~0x00000020); - truncated_ = false; - onChanged(); - return this; - } - - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - - // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint) + size = 0; + if (date_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getDate()); } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - // @@protoc_insertion_point(class_scope:google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint) - private static final com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint - DEFAULT_INSTANCE; - - static { - DEFAULT_INSTANCE = - new com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint(); + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint - getDefaultInstance() { - return DEFAULT_INSTANCE; + if (!(obj instanceof com.google.maps.places.v1.Place.OpeningHours.SpecialDay)) { + return super.equals(obj); } + com.google.maps.places.v1.Place.OpeningHours.SpecialDay other = + (com.google.maps.places.v1.Place.OpeningHours.SpecialDay) obj; - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public OpeningHoursPoint 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 (hasDate() != other.hasDate()) return false; + if (hasDate()) { + if (!getDate().equals(other.getDate())) return false; } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; } - - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - getDefaultInstanceForType() { - return DEFAULT_INSTANCE; + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasDate()) { + hash = (37 * hash) + DATE_FIELD_NUMBER; + hash = (53 * hash) + getDate().hashCode(); } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - public static final int OPEN_FIELD_NUMBER = 1; - private com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - open_; - /** - * - * - *
-       * The time that the place starts to be open.
-       * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * - * - * @return Whether the open field is set. - */ - @java.lang.Override - public boolean hasOpen() { - return open_ != null; + public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - /** - * - * - *
-       * The time that the place starts to be open.
-       * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * - * - * @return The open. - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - getOpen() { - return open_ == null - ? com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .getDefaultInstance() - : open_; - } - /** - * - * - *
-       * The time that the place starts to be open.
-       * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPointOrBuilder - getOpenOrBuilder() { - return open_ == null - ? com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .getDefaultInstance() - : open_; - } - - public static final int CLOSE_FIELD_NUMBER = 2; - private com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - close_; - /** - * - * - *
-       * The time that the place starts to be closed.
-       * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * - * - * @return Whether the close field is set. - */ - @java.lang.Override - public boolean hasClose() { - return close_ != null; - } - /** - * - * - *
-       * The time that the place starts to be closed.
-       * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * - * - * @return The close. - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - getClose() { - return close_ == null - ? com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .getDefaultInstance() - : close_; - } - /** - * - * - *
-       * The time that the place starts to be closed.
-       * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPointOrBuilder - getCloseOrBuilder() { - return close_ == null - ? com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .getDefaultInstance() - : close_; - } - - 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 (open_ != null) { - output.writeMessage(1, getOpen()); - } - if (close_ != null) { - output.writeMessage(2, getClose()); - } - getUnknownFields().writeTo(output); - } - - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - if (open_ != null) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getOpen()); - } - if (close_ != null) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getClose()); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } - - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod)) { - return super.equals(obj); - } - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod other = - (com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod) obj; - - if (hasOpen() != other.hasOpen()) return false; - if (hasOpen()) { - if (!getOpen().equals(other.getOpen())) return false; - } - if (hasClose() != other.hasClose()) return false; - if (hasClose()) { - if (!getClose().equals(other.getClose())) 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 (hasOpen()) { - hash = (37 * hash) + OPEN_FIELD_NUMBER; - hash = (53 * hash) + getOpen().hashCode(); - } - if (hasClose()) { - hash = (37 * hash) + CLOSE_FIELD_NUMBER; - hash = (53 * hash) + getClose().hashCode(); - } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); + + public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod parseFrom( + public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod parseFrom( + public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod parseFrom( - byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod parseFrom( + public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod parseFrom( + public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod parseFrom( + public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); } - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - parseDelimitedFrom( - java.io.InputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { + public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( PARSER, input, extensionRegistry); } - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod parseFrom( + public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod parseFrom( + public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -7697,7 +6019,7 @@ public static Builder newBuilder() { } public static Builder newBuilder( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod prototype) { + com.google.maps.places.v1.Place.OpeningHours.SpecialDay prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @@ -7716,33 +6038,34 @@ protected Builder newBuilderForType( * * *
-       * A period the place remains in open_now status.
+       * Structured information for special days that fall within the period that
+       * the returned opening hours cover. Special days are days that could impact
+       * the business hours of a place, e.g. Christmas day.
        * 
* - * Protobuf type {@code google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod} + * Protobuf type {@code google.maps.places.v1.Place.OpeningHours.SpecialDay} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements - // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod) - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriodOrBuilder { + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place.OpeningHours.SpecialDay) + com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_descriptor; + .internal_static_google_maps_places_v1_Place_OpeningHours_SpecialDay_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_fieldAccessorTable + .internal_static_google_maps_places_v1_Place_OpeningHours_SpecialDay_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.class, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.Builder.class); + com.google.maps.places.v1.Place.OpeningHours.SpecialDay.class, + com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder.class); } - // Construct using - // com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.newBuilder() + // Construct using com.google.maps.places.v1.Place.OpeningHours.SpecialDay.newBuilder() private Builder() {} private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { @@ -7753,15 +6076,10 @@ private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { public Builder clear() { super.clear(); bitField0_ = 0; - open_ = null; - if (openBuilder_ != null) { - openBuilder_.dispose(); - openBuilder_ = null; - } - close_ = null; - if (closeBuilder_ != null) { - closeBuilder_.dispose(); - closeBuilder_ = null; + date_ = null; + if (dateBuilder_ != null) { + dateBuilder_.dispose(); + dateBuilder_ = null; } return this; } @@ -7769,19 +6087,17 @@ public Builder clear() { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_descriptor; + .internal_static_google_maps_places_v1_Place_OpeningHours_SpecialDay_descriptor; } @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - getDefaultInstanceForType() { - return com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .getDefaultInstance(); + public com.google.maps.places.v1.Place.OpeningHours.SpecialDay getDefaultInstanceForType() { + return com.google.maps.places.v1.Place.OpeningHours.SpecialDay.getDefaultInstance(); } @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod build() { - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod result = buildPartial(); + public com.google.maps.places.v1.Place.OpeningHours.SpecialDay build() { + com.google.maps.places.v1.Place.OpeningHours.SpecialDay result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -7789,9 +6105,9 @@ public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod build() { } @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod buildPartial() { - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod result = - new com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod(this); + public com.google.maps.places.v1.Place.OpeningHours.SpecialDay buildPartial() { + com.google.maps.places.v1.Place.OpeningHours.SpecialDay result = + new com.google.maps.places.v1.Place.OpeningHours.SpecialDay(this); if (bitField0_ != 0) { buildPartial0(result); } @@ -7799,14 +6115,10 @@ public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod buildPart return result; } - private void buildPartial0( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod result) { + private void buildPartial0(com.google.maps.places.v1.Place.OpeningHours.SpecialDay result) { int from_bitField0_ = bitField0_; if (((from_bitField0_ & 0x00000001) != 0)) { - result.open_ = openBuilder_ == null ? open_ : openBuilder_.build(); - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.close_ = closeBuilder_ == null ? close_ : closeBuilder_.build(); + result.date_ = dateBuilder_ == null ? date_ : dateBuilder_.build(); } } @@ -7847,25 +6159,19 @@ public Builder addRepeatedField( @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod) { - return mergeFrom( - (com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod) other); + if (other instanceof com.google.maps.places.v1.Place.OpeningHours.SpecialDay) { + return mergeFrom((com.google.maps.places.v1.Place.OpeningHours.SpecialDay) other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod other) { - if (other - == com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .getDefaultInstance()) return this; - if (other.hasOpen()) { - mergeOpen(other.getOpen()); - } - if (other.hasClose()) { - mergeClose(other.getClose()); + public Builder mergeFrom(com.google.maps.places.v1.Place.OpeningHours.SpecialDay other) { + if (other == com.google.maps.places.v1.Place.OpeningHours.SpecialDay.getDefaultInstance()) + return this; + if (other.hasDate()) { + mergeDate(other.getDate()); } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); @@ -7895,16 +6201,10 @@ public Builder mergeFrom( break; case 10: { - input.readMessage(getOpenFieldBuilder().getBuilder(), extensionRegistry); + input.readMessage(getDateFieldBuilder().getBuilder(), extensionRegistry); bitField0_ |= 0x00000001; break; } // case 10 - case 18: - { - input.readMessage(getCloseFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000002; - break; - } // case 18 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -7924,76 +6224,59 @@ public Builder mergeFrom( private int bitField0_; - private com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - open_; + private com.google.type.Date date_; private com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .Builder, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPointOrBuilder> - openBuilder_; + com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> + dateBuilder_; /** * * *
-         * The time that the place starts to be open.
+         * Output only. The date of this special day.
          * 
* - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the open field is set. + * @return Whether the date field is set. */ - public boolean hasOpen() { + public boolean hasDate() { return ((bitField0_ & 0x00000001) != 0); } /** * * *
-         * The time that the place starts to be open.
+         * Output only. The date of this special day.
          * 
* - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The open. + * @return The date. */ - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - getOpen() { - if (openBuilder_ == null) { - return open_ == null - ? com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .getDefaultInstance() - : open_; + public com.google.type.Date getDate() { + if (dateBuilder_ == null) { + return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; } else { - return openBuilder_.getMessage(); + return dateBuilder_.getMessage(); } } /** * * *
-         * The time that the place starts to be open.
+         * Output only. The date of this special day.
          * 
* - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; */ - public Builder setOpen( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - value) { - if (openBuilder_ == null) { + public Builder setDate(com.google.type.Date value) { + if (dateBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - open_ = value; + date_ = value; } else { - openBuilder_.setMessage(value); + dateBuilder_.setMessage(value); } bitField0_ |= 0x00000001; onChanged(); @@ -8003,21 +6286,16 @@ public Builder setOpen( * * *
-         * The time that the place starts to be open.
+         * Output only. The date of this special day.
          * 
* - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; */ - public Builder setOpen( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .Builder - builderForValue) { - if (openBuilder_ == null) { - open_ = builderForValue.build(); - } else { - openBuilder_.setMessage(builderForValue.build()); + public Builder setDate(com.google.type.Date.Builder builderForValue) { + if (dateBuilder_ == null) { + date_ = builderForValue.build(); + } else { + dateBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000001; onChanged(); @@ -8027,28 +6305,22 @@ public Builder setOpen( * * *
-         * The time that the place starts to be open.
+         * Output only. The date of this special day.
          * 
* - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; */ - public Builder mergeOpen( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - value) { - if (openBuilder_ == null) { + public Builder mergeDate(com.google.type.Date value) { + if (dateBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0) - && open_ != null - && open_ - != com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint.getDefaultInstance()) { - getOpenBuilder().mergeFrom(value); + && date_ != null + && date_ != com.google.type.Date.getDefaultInstance()) { + getDateBuilder().mergeFrom(value); } else { - open_ = value; + date_ = value; } } else { - openBuilder_.mergeFrom(value); + dateBuilder_.mergeFrom(value); } bitField0_ |= 0x00000001; onChanged(); @@ -8058,19 +6330,17 @@ public Builder mergeOpen( * * *
-         * The time that the place starts to be open.
+         * Output only. The date of this special day.
          * 
* - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; */ - public Builder clearOpen() { + public Builder clearDate() { bitField0_ = (bitField0_ & ~0x00000001); - open_ = null; - if (openBuilder_ != null) { - openBuilder_.dispose(); - openBuilder_ = null; + date_ = null; + if (dateBuilder_ != null) { + dateBuilder_.dispose(); + dateBuilder_ = null; } onChanged(); return this; @@ -8079,297 +6349,53 @@ public Builder clearOpen() { * * *
-         * The time that the place starts to be open.
+         * Output only. The date of this special day.
          * 
* - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; */ - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .Builder - getOpenBuilder() { + public com.google.type.Date.Builder getDateBuilder() { bitField0_ |= 0x00000001; onChanged(); - return getOpenFieldBuilder().getBuilder(); - } - /** - * - * - *
-         * The time that the place starts to be open.
-         * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * - */ - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPointOrBuilder - getOpenOrBuilder() { - if (openBuilder_ != null) { - return openBuilder_.getMessageOrBuilder(); - } else { - return open_ == null - ? com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .getDefaultInstance() - : open_; - } - } - /** - * - * - *
-         * The time that the place starts to be open.
-         * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint open = 1; - * - */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .Builder, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPointOrBuilder> - getOpenFieldBuilder() { - if (openBuilder_ == null) { - openBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint.Builder, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPointOrBuilder>(getOpen(), getParentForChildren(), isClean()); - open_ = null; - } - return openBuilder_; - } - - private com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - close_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .Builder, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPointOrBuilder> - closeBuilder_; - /** - * - * - *
-         * The time that the place starts to be closed.
-         * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * - * - * @return Whether the close field is set. - */ - public boolean hasClose() { - return ((bitField0_ & 0x00000002) != 0); - } - /** - * - * - *
-         * The time that the place starts to be closed.
-         * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * - * - * @return The close. - */ - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - getClose() { - if (closeBuilder_ == null) { - return close_ == null - ? com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .getDefaultInstance() - : close_; - } else { - return closeBuilder_.getMessage(); - } - } - /** - * - * - *
-         * The time that the place starts to be closed.
-         * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * - */ - public Builder setClose( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - value) { - if (closeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - close_ = value; - } else { - closeBuilder_.setMessage(value); - } - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - /** - * - * - *
-         * The time that the place starts to be closed.
-         * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * - */ - public Builder setClose( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .Builder - builderForValue) { - if (closeBuilder_ == null) { - close_ = builderForValue.build(); - } else { - closeBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - /** - * - * - *
-         * The time that the place starts to be closed.
-         * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * - */ - public Builder mergeClose( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - value) { - if (closeBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0) - && close_ != null - && close_ - != com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint.getDefaultInstance()) { - getCloseBuilder().mergeFrom(value); - } else { - close_ = value; - } - } else { - closeBuilder_.mergeFrom(value); - } - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - /** - * - * - *
-         * The time that the place starts to be closed.
-         * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * - */ - public Builder clearClose() { - bitField0_ = (bitField0_ & ~0x00000002); - close_ = null; - if (closeBuilder_ != null) { - closeBuilder_.dispose(); - closeBuilder_ = null; - } - onChanged(); - return this; - } - /** - * - * - *
-         * The time that the place starts to be closed.
-         * 
- * - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * - */ - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .Builder - getCloseBuilder() { - bitField0_ |= 0x00000002; - onChanged(); - return getCloseFieldBuilder().getBuilder(); + return getDateFieldBuilder().getBuilder(); } /** * * *
-         * The time that the place starts to be closed.
+         * Output only. The date of this special day.
          * 
* - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; */ - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPointOrBuilder - getCloseOrBuilder() { - if (closeBuilder_ != null) { - return closeBuilder_.getMessageOrBuilder(); + public com.google.type.DateOrBuilder getDateOrBuilder() { + if (dateBuilder_ != null) { + return dateBuilder_.getMessageOrBuilder(); } else { - return close_ == null - ? com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .getDefaultInstance() - : close_; + return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; } } /** * * *
-         * The time that the place starts to be closed.
+         * Output only. The date of this special day.
          * 
* - * - * .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint close = 2; - * + * .google.type.Date date = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; */ private com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.OpeningHoursPoint - .Builder, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPointOrBuilder> - getCloseFieldBuilder() { - if (closeBuilder_ == null) { - closeBuilder_ = + com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> + getDateFieldBuilder() { + if (dateBuilder_ == null) { + dateBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPoint.Builder, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .OpeningHoursPointOrBuilder>(getClose(), getParentForChildren(), isClean()); - close_ = null; + com.google.type.Date, + com.google.type.Date.Builder, + com.google.type.DateOrBuilder>(getDate(), getParentForChildren(), isClean()); + date_ = null; } - return closeBuilder_; + return dateBuilder_; } @java.lang.Override @@ -8384,26 +6410,24 @@ public final Builder mergeUnknownFields( return super.mergeUnknownFields(unknownFields); } - // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod) + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Place.OpeningHours.SpecialDay) } - // @@protoc_insertion_point(class_scope:google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod) - private static final com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:google.maps.places.v1.Place.OpeningHours.SpecialDay) + private static final com.google.maps.places.v1.Place.OpeningHours.SpecialDay DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod(); + DEFAULT_INSTANCE = new com.google.maps.places.v1.Place.OpeningHours.SpecialDay(); } - public static com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - getDefaultInstance() { + public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { @java.lang.Override - public OpeningHoursPeriod parsePartialFrom( + public SpecialDay parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -8423,1656 +6447,1669 @@ public OpeningHoursPeriod parsePartialFrom( } }; - public static com.google.protobuf.Parser parser() { + public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser getParserForType() { + public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - getDefaultInstanceForType() { + public com.google.maps.places.v1.Place.OpeningHours.SpecialDay getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface SpecialDayOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Place.OpeningHours.SpecialDay) - com.google.protobuf.MessageOrBuilder { - - /** - * - * - *
-       * The date of this special day.
-       * 
- * - * .google.type.Date date = 1; - * - * @return Whether the date field is set. - */ - boolean hasDate(); - /** - * - * - *
-       * The date of this special day.
-       * 
- * - * .google.type.Date date = 1; - * - * @return The date. - */ - com.google.type.Date getDate(); - /** - * - * - *
-       * The date of this special day.
-       * 
- * - * .google.type.Date date = 1; - */ - com.google.type.DateOrBuilder getDateOrBuilder(); + private int bitField0_; + public static final int OPEN_NOW_FIELD_NUMBER = 1; + private boolean openNow_ = false; + /** + * + * + *
+     * Output only. Is this place open right now?  Always present unless we lack
+     * time-of-day or timezone data for these opening hours.
+     * 
+ * + * optional bool open_now = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the openNow field is set. + */ + @java.lang.Override + public boolean hasOpenNow() { + return ((bitField0_ & 0x00000001) != 0); } /** * * *
-     * Structured information for special days that fall within the period that
-     * the returned opening hours cover. Special days are days that could impact
-     * the business hours of a place, e.g. Christmas day.
+     * Output only. Is this place open right now?  Always present unless we lack
+     * time-of-day or timezone data for these opening hours.
      * 
* - * Protobuf type {@code google.maps.places.v1.Place.OpeningHours.SpecialDay} + * optional bool open_now = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The openNow. */ - public static final class SpecialDay extends com.google.protobuf.GeneratedMessageV3 - implements - // @@protoc_insertion_point(message_implements:google.maps.places.v1.Place.OpeningHours.SpecialDay) - SpecialDayOrBuilder { - private static final long serialVersionUID = 0L; - // Use SpecialDay.newBuilder() to construct. - private SpecialDay(com.google.protobuf.GeneratedMessageV3.Builder builder) { - super(builder); - } + @java.lang.Override + public boolean getOpenNow() { + return openNow_; + } - private SpecialDay() {} + public static final int PERIODS_FIELD_NUMBER = 2; - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance(UnusedPrivateParameter unused) { - return new SpecialDay(); - } + @SuppressWarnings("serial") + private java.util.List periods_; + /** + * + * + *
+     * Output only. The periods that this place is open during the week. The
+     * periods are in chronological order, starting with Sunday in the
+     * place-local timezone. An empty (but not absent) value indicates a place
+     * that is never open, e.g. because it is closed temporarily for
+     * renovations.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getPeriodsList() { + return periods_; + } + /** + * + * + *
+     * Output only. The periods that this place is open during the week. The
+     * periods are in chronological order, starting with Sunday in the
+     * place-local timezone. An empty (but not absent) value indicates a place
+     * that is never open, e.g. because it is closed temporarily for
+     * renovations.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getPeriodsOrBuilderList() { + return periods_; + } + /** + * + * + *
+     * Output only. The periods that this place is open during the week. The
+     * periods are in chronological order, starting with Sunday in the
+     * place-local timezone. An empty (but not absent) value indicates a place
+     * that is never open, e.g. because it is closed temporarily for
+     * renovations.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getPeriodsCount() { + return periods_.size(); + } + /** + * + * + *
+     * Output only. The periods that this place is open during the week. The
+     * periods are in chronological order, starting with Sunday in the
+     * place-local timezone. An empty (but not absent) value indicates a place
+     * that is never open, e.g. because it is closed temporarily for
+     * renovations.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours.Period getPeriods(int index) { + return periods_.get(index); + } + /** + * + * + *
+     * Output only. The periods that this place is open during the week. The
+     * periods are in chronological order, starting with Sunday in the
+     * place-local timezone. An empty (but not absent) value indicates a place
+     * that is never open, e.g. because it is closed temporarily for
+     * renovations.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours.PeriodOrBuilder getPeriodsOrBuilder( + int index) { + return periods_.get(index); + } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; - } + public static final int WEEKDAY_DESCRIPTIONS_FIELD_NUMBER = 3; - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_SpecialDay_descriptor; - } + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList weekdayDescriptions_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * + * + *
+     * Output only. Localized strings describing the opening hours of this
+     * place, one string for each day of the week.  Will be empty if the hours
+     * are unknown or could not be converted to localized text. Example: "Sun:
+     * 18:00–06:00"
+     * 
+ * + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return A list containing the weekdayDescriptions. + */ + public com.google.protobuf.ProtocolStringList getWeekdayDescriptionsList() { + return weekdayDescriptions_; + } + /** + * + * + *
+     * Output only. Localized strings describing the opening hours of this
+     * place, one string for each day of the week.  Will be empty if the hours
+     * are unknown or could not be converted to localized text. Example: "Sun:
+     * 18:00–06:00"
+     * 
+ * + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The count of weekdayDescriptions. + */ + public int getWeekdayDescriptionsCount() { + return weekdayDescriptions_.size(); + } + /** + * + * + *
+     * Output only. Localized strings describing the opening hours of this
+     * place, one string for each day of the week.  Will be empty if the hours
+     * are unknown or could not be converted to localized text. Example: "Sun:
+     * 18:00–06:00"
+     * 
+ * + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param index The index of the element to return. + * @return The weekdayDescriptions at the given index. + */ + public java.lang.String getWeekdayDescriptions(int index) { + return weekdayDescriptions_.get(index); + } + /** + * + * + *
+     * Output only. Localized strings describing the opening hours of this
+     * place, one string for each day of the week.  Will be empty if the hours
+     * are unknown or could not be converted to localized text. Example: "Sun:
+     * 18:00–06:00"
+     * 
+ * + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param index The index of the value to return. + * @return The bytes of the weekdayDescriptions at the given index. + */ + public com.google.protobuf.ByteString getWeekdayDescriptionsBytes(int index) { + return weekdayDescriptions_.getByteString(index); + } - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_SpecialDay_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Place.OpeningHours.SpecialDay.class, - com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder.class); - } + public static final int SECONDARY_HOURS_TYPE_FIELD_NUMBER = 4; + private int secondaryHoursType_ = 0; + /** + * + * + *
+     * Output only. A type string used to identify the type of secondary hours.
+     * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.SecondaryHoursType secondary_hours_type = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The enum numeric value on the wire for secondaryHoursType. + */ + @java.lang.Override + public int getSecondaryHoursTypeValue() { + return secondaryHoursType_; + } + /** + * + * + *
+     * Output only. A type string used to identify the type of secondary hours.
+     * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours.SecondaryHoursType secondary_hours_type = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The secondaryHoursType. + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours.SecondaryHoursType getSecondaryHoursType() { + com.google.maps.places.v1.Place.OpeningHours.SecondaryHoursType result = + com.google.maps.places.v1.Place.OpeningHours.SecondaryHoursType.forNumber( + secondaryHoursType_); + return result == null + ? com.google.maps.places.v1.Place.OpeningHours.SecondaryHoursType.UNRECOGNIZED + : result; + } - public static final int DATE_FIELD_NUMBER = 1; - private com.google.type.Date date_; - /** - * - * - *
-       * The date of this special day.
-       * 
- * - * .google.type.Date date = 1; - * - * @return Whether the date field is set. - */ - @java.lang.Override - public boolean hasDate() { - return date_ != null; - } - /** - * - * - *
-       * The date of this special day.
-       * 
- * - * .google.type.Date date = 1; - * - * @return The date. - */ - @java.lang.Override - public com.google.type.Date getDate() { - return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; - } - /** - * - * - *
-       * The date of this special day.
-       * 
- * - * .google.type.Date date = 1; - */ - @java.lang.Override - public com.google.type.DateOrBuilder getDateOrBuilder() { - return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; - } - - private byte memoizedIsInitialized = -1; + public static final int SPECIAL_DAYS_FIELD_NUMBER = 5; - @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 specialDays_; + /** + * + * + *
+     * Output only. Structured information for special days that fall within the
+     * period that the returned opening hours cover. Special days are days that
+     * could impact the business hours of a place, e.g. Christmas day. Set for
+     * current_opening_hours and current_secondary_opening_hours if there are
+     * exceptional hours.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getSpecialDaysList() { + return specialDays_; + } + /** + * + * + *
+     * Output only. Structured information for special days that fall within the
+     * period that the returned opening hours cover. Special days are days that
+     * could impact the business hours of a place, e.g. Christmas day. Set for
+     * current_opening_hours and current_secondary_opening_hours if there are
+     * exceptional hours.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List< + ? extends com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder> + getSpecialDaysOrBuilderList() { + return specialDays_; + } + /** + * + * + *
+     * Output only. Structured information for special days that fall within the
+     * period that the returned opening hours cover. Special days are days that
+     * could impact the business hours of a place, e.g. Christmas day. Set for
+     * current_opening_hours and current_secondary_opening_hours if there are
+     * exceptional hours.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getSpecialDaysCount() { + return specialDays_.size(); + } + /** + * + * + *
+     * Output only. Structured information for special days that fall within the
+     * period that the returned opening hours cover. Special days are days that
+     * could impact the business hours of a place, e.g. Christmas day. Set for
+     * current_opening_hours and current_secondary_opening_hours if there are
+     * exceptional hours.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours.SpecialDay getSpecialDays(int index) { + return specialDays_.get(index); + } + /** + * + * + *
+     * Output only. Structured information for special days that fall within the
+     * period that the returned opening hours cover. Special days are days that
+     * could impact the business hours of a place, e.g. Christmas day. Set for
+     * current_opening_hours and current_secondary_opening_hours if there are
+     * exceptional hours.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder getSpecialDaysOrBuilder( + int index) { + return specialDays_.get(index); + } - memoizedIsInitialized = 1; - return true; - } + private byte memoizedIsInitialized = -1; - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (date_ != null) { - output.writeMessage(1, getDate()); - } - getUnknownFields().writeTo(output); - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + memoizedIsInitialized = 1; + return true; + } - size = 0; - if (date_ != null) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getDate()); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (((bitField0_ & 0x00000001) != 0)) { + output.writeBool(1, openNow_); } - - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof com.google.maps.places.v1.Place.OpeningHours.SpecialDay)) { - return super.equals(obj); - } - com.google.maps.places.v1.Place.OpeningHours.SpecialDay other = - (com.google.maps.places.v1.Place.OpeningHours.SpecialDay) obj; - - if (hasDate() != other.hasDate()) return false; - if (hasDate()) { - if (!getDate().equals(other.getDate())) return false; - } - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; + for (int i = 0; i < periods_.size(); i++) { + output.writeMessage(2, periods_.get(i)); } - - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; - } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - if (hasDate()) { - hash = (37 * hash) + DATE_FIELD_NUMBER; - hash = (53 * hash) + getDate().hashCode(); - } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; + for (int i = 0; i < weekdayDescriptions_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString( + output, 3, weekdayDescriptions_.getRaw(i)); } - - public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); + if (secondaryHoursType_ + != com.google.maps.places.v1.Place.OpeningHours.SecondaryHoursType + .SECONDARY_HOURS_TYPE_UNSPECIFIED + .getNumber()) { + output.writeEnum(4, secondaryHoursType_); } - - public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay 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 < specialDays_.size(); i++) { + output.writeMessage(5, specialDays_.get(i)); } + getUnknownFields().writeTo(output); + } - public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); + size = 0; + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(1, openNow_); } - - public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); + for (int i = 0; i < periods_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, periods_.get(i)); } - - public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); + { + int dataSize = 0; + for (int i = 0; i < weekdayDescriptions_.size(); i++) { + dataSize += computeStringSizeNoTag(weekdayDescriptions_.getRaw(i)); + } + size += dataSize; + size += 1 * getWeekdayDescriptionsList().size(); } - - public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + if (secondaryHoursType_ + != com.google.maps.places.v1.Place.OpeningHours.SecondaryHoursType + .SECONDARY_HOURS_TYPE_UNSPECIFIED + .getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(4, secondaryHoursType_); } - - public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); + for (int i = 0; i < specialDays_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, specialDays_.get(i)); } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; } - - public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); + if (!(obj instanceof com.google.maps.places.v1.Place.OpeningHours)) { + return super.equals(obj); } + com.google.maps.places.v1.Place.OpeningHours other = + (com.google.maps.places.v1.Place.OpeningHours) obj; - public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + if (hasOpenNow() != other.hasOpenNow()) return false; + if (hasOpenNow()) { + if (getOpenNow() != other.getOpenNow()) return false; } + if (!getPeriodsList().equals(other.getPeriodsList())) return false; + if (!getWeekdayDescriptionsList().equals(other.getWeekdayDescriptionsList())) return false; + if (secondaryHoursType_ != other.secondaryHoursType_) return false; + if (!getSpecialDaysList().equals(other.getSpecialDaysList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } - - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; } - - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasOpenNow()) { + hash = (37 * hash) + OPEN_NOW_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getOpenNow()); } - - public static Builder newBuilder( - com.google.maps.places.v1.Place.OpeningHours.SpecialDay prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + if (getPeriodsCount() > 0) { + hash = (37 * hash) + PERIODS_FIELD_NUMBER; + hash = (53 * hash) + getPeriodsList().hashCode(); } - - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + if (getWeekdayDescriptionsCount() > 0) { + hash = (37 * hash) + WEEKDAY_DESCRIPTIONS_FIELD_NUMBER; + hash = (53 * hash) + getWeekdayDescriptionsList().hashCode(); } - - @java.lang.Override - protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; + hash = (37 * hash) + SECONDARY_HOURS_TYPE_FIELD_NUMBER; + hash = (53 * hash) + secondaryHoursType_; + if (getSpecialDaysCount() > 0) { + hash = (37 * hash) + SPECIAL_DAYS_FIELD_NUMBER; + hash = (53 * hash) + getSpecialDaysList().hashCode(); } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day.
-       * 
- * - * Protobuf type {@code google.maps.places.v1.Place.OpeningHours.SpecialDay} - */ - public static final class Builder - extends com.google.protobuf.GeneratedMessageV3.Builder - implements - // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place.OpeningHours.SpecialDay) - com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_SpecialDay_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_SpecialDay_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Place.OpeningHours.SpecialDay.class, - com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder.class); - } - - // Construct using com.google.maps.places.v1.Place.OpeningHours.SpecialDay.newBuilder() - private Builder() {} + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - } + public static com.google.maps.places.v1.Place.OpeningHours parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - date_ = null; - if (dateBuilder_ != null) { - dateBuilder_.dispose(); - dateBuilder_ = null; - } - return this; - } + public static com.google.maps.places.v1.Place.OpeningHours 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.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_SpecialDay_descriptor; - } + public static com.google.maps.places.v1.Place.OpeningHours parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.SpecialDay getDefaultInstanceForType() { - return com.google.maps.places.v1.Place.OpeningHours.SpecialDay.getDefaultInstance(); - } + public static com.google.maps.places.v1.Place.OpeningHours 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.maps.places.v1.Place.OpeningHours.SpecialDay build() { - com.google.maps.places.v1.Place.OpeningHours.SpecialDay result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } + public static com.google.maps.places.v1.Place.OpeningHours parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.SpecialDay buildPartial() { - com.google.maps.places.v1.Place.OpeningHours.SpecialDay result = - new com.google.maps.places.v1.Place.OpeningHours.SpecialDay(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; - } + public static com.google.maps.places.v1.Place.OpeningHours parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - private void buildPartial0(com.google.maps.places.v1.Place.OpeningHours.SpecialDay result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.date_ = dateBuilder_ == null ? date_ : dateBuilder_.build(); - } - } + public static com.google.maps.places.v1.Place.OpeningHours parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } - @java.lang.Override - public Builder clone() { - return super.clone(); - } + public static com.google.maps.places.v1.Place.OpeningHours parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.setField(field, value); - } + public static com.google.maps.places.v1.Place.OpeningHours parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } - @java.lang.Override - public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } + public static com.google.maps.places.v1.Place.OpeningHours parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - @java.lang.Override - public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } + public static com.google.maps.places.v1.Place.OpeningHours parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, - java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } + public static com.google.maps.places.v1.Place.OpeningHours parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.addRepeatedField(field, value); - } + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.maps.places.v1.Place.OpeningHours.SpecialDay) { - return mergeFrom((com.google.maps.places.v1.Place.OpeningHours.SpecialDay) other); - } else { - super.mergeFrom(other); - return this; - } - } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } - public Builder mergeFrom(com.google.maps.places.v1.Place.OpeningHours.SpecialDay other) { - if (other == com.google.maps.places.v1.Place.OpeningHours.SpecialDay.getDefaultInstance()) - return this; - if (other.hasDate()) { - mergeDate(other.getDate()); - } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; - } + public static Builder newBuilder(com.google.maps.places.v1.Place.OpeningHours prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - @java.lang.Override - public final boolean isInitialized() { - return true; - } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(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(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - input.readMessage(getDateFieldBuilder().getBuilder(), extensionRegistry); - 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; - } + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+     * Information about business hour of the place.
+     * 
+ * + * Protobuf type {@code google.maps.places.v1.Place.OpeningHours} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place.OpeningHours) + com.google.maps.places.v1.Place.OpeningHoursOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_OpeningHours_descriptor; + } - private int bitField0_; + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_OpeningHours_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Place.OpeningHours.class, + com.google.maps.places.v1.Place.OpeningHours.Builder.class); + } - private com.google.type.Date date_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> - dateBuilder_; - /** - * - * - *
-         * The date of this special day.
-         * 
- * - * .google.type.Date date = 1; - * - * @return Whether the date field is set. - */ - public boolean hasDate() { - return ((bitField0_ & 0x00000001) != 0); + // Construct using com.google.maps.places.v1.Place.OpeningHours.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + openNow_ = false; + if (periodsBuilder_ == null) { + periods_ = java.util.Collections.emptyList(); + } else { + periods_ = null; + periodsBuilder_.clear(); } - /** - * - * - *
-         * The date of this special day.
-         * 
- * - * .google.type.Date date = 1; - * - * @return The date. - */ - public com.google.type.Date getDate() { - if (dateBuilder_ == null) { - return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; - } else { - return dateBuilder_.getMessage(); - } + bitField0_ = (bitField0_ & ~0x00000002); + weekdayDescriptions_ = com.google.protobuf.LazyStringArrayList.emptyList(); + secondaryHoursType_ = 0; + if (specialDaysBuilder_ == null) { + specialDays_ = java.util.Collections.emptyList(); + } else { + specialDays_ = null; + specialDaysBuilder_.clear(); } - /** - * - * - *
-         * The date of this special day.
-         * 
- * - * .google.type.Date date = 1; - */ - public Builder setDate(com.google.type.Date value) { - if (dateBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - date_ = value; - } else { - dateBuilder_.setMessage(value); - } - bitField0_ |= 0x00000001; - onChanged(); - return this; + bitField0_ = (bitField0_ & ~0x00000010); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_OpeningHours_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours getDefaultInstanceForType() { + return com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours build() { + com.google.maps.places.v1.Place.OpeningHours result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } - /** - * - * - *
-         * The date of this special day.
-         * 
- * - * .google.type.Date date = 1; - */ - public Builder setDate(com.google.type.Date.Builder builderForValue) { - if (dateBuilder_ == null) { - date_ = builderForValue.build(); - } else { - dateBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000001; - onChanged(); - return this; + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours buildPartial() { + com.google.maps.places.v1.Place.OpeningHours result = + new com.google.maps.places.v1.Place.OpeningHours(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); } - /** - * - * - *
-         * The date of this special day.
-         * 
- * - * .google.type.Date date = 1; - */ - public Builder mergeDate(com.google.type.Date value) { - if (dateBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0) - && date_ != null - && date_ != com.google.type.Date.getDefaultInstance()) { - getDateBuilder().mergeFrom(value); - } else { - date_ = value; - } - } else { - dateBuilder_.mergeFrom(value); + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(com.google.maps.places.v1.Place.OpeningHours result) { + if (periodsBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + periods_ = java.util.Collections.unmodifiableList(periods_); + bitField0_ = (bitField0_ & ~0x00000002); } - bitField0_ |= 0x00000001; - onChanged(); - return this; + result.periods_ = periods_; + } else { + result.periods_ = periodsBuilder_.build(); } - /** - * - * - *
-         * The date of this special day.
-         * 
- * - * .google.type.Date date = 1; - */ - public Builder clearDate() { - bitField0_ = (bitField0_ & ~0x00000001); - date_ = null; - if (dateBuilder_ != null) { - dateBuilder_.dispose(); - dateBuilder_ = null; + if (specialDaysBuilder_ == null) { + if (((bitField0_ & 0x00000010) != 0)) { + specialDays_ = java.util.Collections.unmodifiableList(specialDays_); + bitField0_ = (bitField0_ & ~0x00000010); } - onChanged(); - return this; + result.specialDays_ = specialDays_; + } else { + result.specialDays_ = specialDaysBuilder_.build(); } - /** - * - * - *
-         * The date of this special day.
-         * 
- * - * .google.type.Date date = 1; - */ - public com.google.type.Date.Builder getDateBuilder() { - bitField0_ |= 0x00000001; - onChanged(); - return getDateFieldBuilder().getBuilder(); + } + + private void buildPartial0(com.google.maps.places.v1.Place.OpeningHours result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.openNow_ = openNow_; + to_bitField0_ |= 0x00000001; } - /** - * - * - *
-         * The date of this special day.
-         * 
- * - * .google.type.Date date = 1; - */ - public com.google.type.DateOrBuilder getDateOrBuilder() { - if (dateBuilder_ != null) { - return dateBuilder_.getMessageOrBuilder(); - } else { - return date_ == null ? com.google.type.Date.getDefaultInstance() : date_; - } - } - /** - * - * - *
-         * The date of this special day.
-         * 
- * - * .google.type.Date date = 1; - */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> - getDateFieldBuilder() { - if (dateBuilder_ == null) { - dateBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.type.Date, - com.google.type.Date.Builder, - com.google.type.DateOrBuilder>(getDate(), getParentForChildren(), isClean()); - date_ = null; - } - return dateBuilder_; - } - - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + if (((from_bitField0_ & 0x00000004) != 0)) { + weekdayDescriptions_.makeImmutable(); + result.weekdayDescriptions_ = weekdayDescriptions_; } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + if (((from_bitField0_ & 0x00000008) != 0)) { + result.secondaryHoursType_ = secondaryHoursType_; } - - // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Place.OpeningHours.SpecialDay) + result.bitField0_ |= to_bitField0_; } - // @@protoc_insertion_point(class_scope:google.maps.places.v1.Place.OpeningHours.SpecialDay) - private static final com.google.maps.places.v1.Place.OpeningHours.SpecialDay DEFAULT_INSTANCE; + @java.lang.Override + public Builder clone() { + return super.clone(); + } - static { - DEFAULT_INSTANCE = new com.google.maps.places.v1.Place.OpeningHours.SpecialDay(); + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); } - public static com.google.maps.places.v1.Place.OpeningHours.SpecialDay getDefaultInstance() { - return DEFAULT_INSTANCE; + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public SpecialDay 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 clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } - public static com.google.protobuf.Parser parser() { - return PARSER; + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); } @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); } @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.SpecialDay getDefaultInstanceForType() { - return DEFAULT_INSTANCE; + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.Place.OpeningHours) { + return mergeFrom((com.google.maps.places.v1.Place.OpeningHours) other); + } else { + super.mergeFrom(other); + return this; + } } - } - public static final int OPEN_NOW_FIELD_NUMBER = 1; - private boolean openNow_ = false; - /** - * - * - *
-     * Is this place open right now?  Always present unless we lack time-of-day
-     * or timezone data for these opening hours.
-     * 
- * - * bool open_now = 1; - * - * @return The openNow. - */ - @java.lang.Override - public boolean getOpenNow() { - return openNow_; - } + public Builder mergeFrom(com.google.maps.places.v1.Place.OpeningHours other) { + if (other == com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance()) return this; + if (other.hasOpenNow()) { + setOpenNow(other.getOpenNow()); + } + if (periodsBuilder_ == null) { + if (!other.periods_.isEmpty()) { + if (periods_.isEmpty()) { + periods_ = other.periods_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensurePeriodsIsMutable(); + periods_.addAll(other.periods_); + } + onChanged(); + } + } else { + if (!other.periods_.isEmpty()) { + if (periodsBuilder_.isEmpty()) { + periodsBuilder_.dispose(); + periodsBuilder_ = null; + periods_ = other.periods_; + bitField0_ = (bitField0_ & ~0x00000002); + periodsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders + ? getPeriodsFieldBuilder() + : null; + } else { + periodsBuilder_.addAllMessages(other.periods_); + } + } + } + if (!other.weekdayDescriptions_.isEmpty()) { + if (weekdayDescriptions_.isEmpty()) { + weekdayDescriptions_ = other.weekdayDescriptions_; + bitField0_ |= 0x00000004; + } else { + ensureWeekdayDescriptionsIsMutable(); + weekdayDescriptions_.addAll(other.weekdayDescriptions_); + } + onChanged(); + } + if (other.secondaryHoursType_ != 0) { + setSecondaryHoursTypeValue(other.getSecondaryHoursTypeValue()); + } + if (specialDaysBuilder_ == null) { + if (!other.specialDays_.isEmpty()) { + if (specialDays_.isEmpty()) { + specialDays_ = other.specialDays_; + bitField0_ = (bitField0_ & ~0x00000010); + } else { + ensureSpecialDaysIsMutable(); + specialDays_.addAll(other.specialDays_); + } + onChanged(); + } + } else { + if (!other.specialDays_.isEmpty()) { + if (specialDaysBuilder_.isEmpty()) { + specialDaysBuilder_.dispose(); + specialDaysBuilder_ = null; + specialDays_ = other.specialDays_; + bitField0_ = (bitField0_ & ~0x00000010); + specialDaysBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders + ? getSpecialDaysFieldBuilder() + : null; + } else { + specialDaysBuilder_.addAllMessages(other.specialDays_); + } + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - public static final int PERIODS_FIELD_NUMBER = 2; + @java.lang.Override + public final boolean isInitialized() { + return true; + } - @SuppressWarnings("serial") - private java.util.List - periods_; - /** - * - * - *
-     * The periods that this place is open during the week. The periods are in
-     * chronological order, starting with Sunday in the place-local timezone. An
-     * empty (but not absent) value indicates a place that is never open, e.g.
-     * because it is closed temporarily for renovations.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; - * - */ - @java.lang.Override - public java.util.List - getPeriodsList() { - return periods_; - } - /** - * - * - *
-     * The periods that this place is open during the week. The periods are in
-     * chronological order, starting with Sunday in the place-local timezone. An
-     * empty (but not absent) value indicates a place that is never open, e.g.
-     * because it is closed temporarily for renovations.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; - * - */ - @java.lang.Override - public java.util.List< - ? extends com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriodOrBuilder> - getPeriodsOrBuilderList() { - return periods_; - } - /** - * - * - *
-     * The periods that this place is open during the week. The periods are in
-     * chronological order, starting with Sunday in the place-local timezone. An
-     * empty (but not absent) value indicates a place that is never open, e.g.
-     * because it is closed temporarily for renovations.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; - * - */ - @java.lang.Override - public int getPeriodsCount() { - return periods_.size(); - } - /** - * - * - *
-     * The periods that this place is open during the week. The periods are in
-     * chronological order, starting with Sunday in the place-local timezone. An
-     * empty (but not absent) value indicates a place that is never open, e.g.
-     * because it is closed temporarily for renovations.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; - * - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod getPeriods(int index) { - return periods_.get(index); - } - /** - * - * - *
-     * The periods that this place is open during the week. The periods are in
-     * chronological order, starting with Sunday in the place-local timezone. An
-     * empty (but not absent) value indicates a place that is never open, e.g.
-     * because it is closed temporarily for renovations.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; - * - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriodOrBuilder - getPeriodsOrBuilder(int index) { - return periods_.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 8: + { + openNow_ = input.readBool(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: + { + com.google.maps.places.v1.Place.OpeningHours.Period m = + input.readMessage( + com.google.maps.places.v1.Place.OpeningHours.Period.parser(), + extensionRegistry); + if (periodsBuilder_ == null) { + ensurePeriodsIsMutable(); + periods_.add(m); + } else { + periodsBuilder_.addMessage(m); + } + break; + } // case 18 + case 26: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureWeekdayDescriptionsIsMutable(); + weekdayDescriptions_.add(s); + break; + } // case 26 + case 32: + { + secondaryHoursType_ = input.readEnum(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 42: + { + com.google.maps.places.v1.Place.OpeningHours.SpecialDay m = + input.readMessage( + com.google.maps.places.v1.Place.OpeningHours.SpecialDay.parser(), + extensionRegistry); + if (specialDaysBuilder_ == null) { + ensureSpecialDaysIsMutable(); + specialDays_.add(m); + } else { + specialDaysBuilder_.addMessage(m); + } + 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; + } - public static final int WEEKDAY_DESCRIPTIONS_FIELD_NUMBER = 3; + private int bitField0_; - @SuppressWarnings("serial") - private com.google.protobuf.LazyStringList weekdayDescriptions_; - /** - * - * - *
-     * Localized strings describing the opening hours of this place, one string
-     * for each day of the week.  Will be empty if the hours are unknown or
-     * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-     * 
- * - * repeated string weekday_descriptions = 3; - * - * @return A list containing the weekdayDescriptions. - */ - public com.google.protobuf.ProtocolStringList getWeekdayDescriptionsList() { - return weekdayDescriptions_; - } - /** - * - * - *
-     * Localized strings describing the opening hours of this place, one string
-     * for each day of the week.  Will be empty if the hours are unknown or
-     * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-     * 
- * - * repeated string weekday_descriptions = 3; - * - * @return The count of weekdayDescriptions. - */ - public int getWeekdayDescriptionsCount() { - return weekdayDescriptions_.size(); - } - /** - * - * - *
-     * Localized strings describing the opening hours of this place, one string
-     * for each day of the week.  Will be empty if the hours are unknown or
-     * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-     * 
- * - * repeated string weekday_descriptions = 3; - * - * @param index The index of the element to return. - * @return The weekdayDescriptions at the given index. - */ - public java.lang.String getWeekdayDescriptions(int index) { - return weekdayDescriptions_.get(index); - } - /** - * - * - *
-     * Localized strings describing the opening hours of this place, one string
-     * for each day of the week.  Will be empty if the hours are unknown or
-     * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-     * 
- * - * repeated string weekday_descriptions = 3; - * - * @param index The index of the value to return. - * @return The bytes of the weekdayDescriptions at the given index. - */ - public com.google.protobuf.ByteString getWeekdayDescriptionsBytes(int index) { - return weekdayDescriptions_.getByteString(index); - } + private boolean openNow_; + /** + * + * + *
+       * Output only. Is this place open right now?  Always present unless we lack
+       * time-of-day or timezone data for these opening hours.
+       * 
+ * + * optional bool open_now = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the openNow field is set. + */ + @java.lang.Override + public boolean hasOpenNow() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * + * + *
+       * Output only. Is this place open right now?  Always present unless we lack
+       * time-of-day or timezone data for these opening hours.
+       * 
+ * + * optional bool open_now = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The openNow. + */ + @java.lang.Override + public boolean getOpenNow() { + return openNow_; + } + /** + * + * + *
+       * Output only. Is this place open right now?  Always present unless we lack
+       * time-of-day or timezone data for these opening hours.
+       * 
+ * + * optional bool open_now = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The openNow to set. + * @return This builder for chaining. + */ + public Builder setOpenNow(boolean value) { - public static final int SECONDARY_HOUR_TYPE_FIELD_NUMBER = 4; - private int secondaryHourType_ = 0; - /** - * - * - *
-     * A type string used to identify the type of secondary hours.
-     * 
- * - * .google.maps.places.v1.Place.OpeningHours.SecondaryHourType secondary_hour_type = 4; - * - * - * @return The enum numeric value on the wire for secondaryHourType. - */ - @java.lang.Override - public int getSecondaryHourTypeValue() { - return secondaryHourType_; - } - /** - * - * - *
-     * A type string used to identify the type of secondary hours.
-     * 
- * - * .google.maps.places.v1.Place.OpeningHours.SecondaryHourType secondary_hour_type = 4; - * - * - * @return The secondaryHourType. - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.SecondaryHourType getSecondaryHourType() { - com.google.maps.places.v1.Place.OpeningHours.SecondaryHourType result = - com.google.maps.places.v1.Place.OpeningHours.SecondaryHourType.forNumber( - secondaryHourType_); - return result == null - ? com.google.maps.places.v1.Place.OpeningHours.SecondaryHourType.UNRECOGNIZED - : result; - } + openNow_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+       * Output only. Is this place open right now?  Always present unless we lack
+       * time-of-day or timezone data for these opening hours.
+       * 
+ * + * optional bool open_now = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearOpenNow() { + bitField0_ = (bitField0_ & ~0x00000001); + openNow_ = false; + onChanged(); + return this; + } - public static final int SPECIAL_DAYS_FIELD_NUMBER = 5; + private java.util.List periods_ = + java.util.Collections.emptyList(); - @SuppressWarnings("serial") - private java.util.List specialDays_; - /** - * - * - *
-     * Structured information for special days that fall within the period that
-     * the returned opening hours cover. Special days are days that could impact
-     * the business hours of a place, e.g. Christmas day. Set for
-     * current_opening_hours and current_secondary_opening_hours if there are
-     * exceptional hours.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - */ - @java.lang.Override - public java.util.List - getSpecialDaysList() { - return specialDays_; - } - /** - * - * - *
-     * Structured information for special days that fall within the period that
-     * the returned opening hours cover. Special days are days that could impact
-     * the business hours of a place, e.g. Christmas day. Set for
-     * current_opening_hours and current_secondary_opening_hours if there are
-     * exceptional hours.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - */ - @java.lang.Override - public java.util.List< - ? extends com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder> - getSpecialDaysOrBuilderList() { - return specialDays_; - } - /** - * - * - *
-     * Structured information for special days that fall within the period that
-     * the returned opening hours cover. Special days are days that could impact
-     * the business hours of a place, e.g. Christmas day. Set for
-     * current_opening_hours and current_secondary_opening_hours if there are
-     * exceptional hours.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - */ - @java.lang.Override - public int getSpecialDaysCount() { - return specialDays_.size(); - } - /** - * - * - *
-     * Structured information for special days that fall within the period that
-     * the returned opening hours cover. Special days are days that could impact
-     * the business hours of a place, e.g. Christmas day. Set for
-     * current_opening_hours and current_secondary_opening_hours if there are
-     * exceptional hours.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.SpecialDay getSpecialDays(int index) { - return specialDays_.get(index); - } - /** - * - * - *
-     * Structured information for special days that fall within the period that
-     * the returned opening hours cover. Special days are days that could impact
-     * the business hours of a place, e.g. Christmas day. Set for
-     * current_opening_hours and current_secondary_opening_hours if there are
-     * exceptional hours.
-     * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder getSpecialDaysOrBuilder( - int index) { - return specialDays_.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 void ensurePeriodsIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + periods_ = + new java.util.ArrayList( + periods_); + bitField0_ |= 0x00000002; + } + } - memoizedIsInitialized = 1; - return true; - } + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours.Period, + com.google.maps.places.v1.Place.OpeningHours.Period.Builder, + com.google.maps.places.v1.Place.OpeningHours.PeriodOrBuilder> + periodsBuilder_; - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (openNow_ != false) { - output.writeBool(1, openNow_); - } - for (int i = 0; i < periods_.size(); i++) { - output.writeMessage(2, periods_.get(i)); + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List getPeriodsList() { + if (periodsBuilder_ == null) { + return java.util.Collections.unmodifiableList(periods_); + } else { + return periodsBuilder_.getMessageList(); + } } - for (int i = 0; i < weekdayDescriptions_.size(); i++) { - com.google.protobuf.GeneratedMessageV3.writeString( - output, 3, weekdayDescriptions_.getRaw(i)); + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public int getPeriodsCount() { + if (periodsBuilder_ == null) { + return periods_.size(); + } else { + return periodsBuilder_.getCount(); + } } - if (secondaryHourType_ - != com.google.maps.places.v1.Place.OpeningHours.SecondaryHourType - .SECONDARY_HOUR_TYPE_UNSPECIFIED - .getNumber()) { - output.writeEnum(4, secondaryHourType_); + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.OpeningHours.Period getPeriods(int index) { + if (periodsBuilder_ == null) { + return periods_.get(index); + } else { + return periodsBuilder_.getMessage(index); + } } - for (int i = 0; i < specialDays_.size(); i++) { - output.writeMessage(5, specialDays_.get(i)); + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setPeriods( + int index, com.google.maps.places.v1.Place.OpeningHours.Period value) { + if (periodsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePeriodsIsMutable(); + periods_.set(index, value); + onChanged(); + } else { + periodsBuilder_.setMessage(index, value); + } + return this; } - getUnknownFields().writeTo(output); - } - - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - if (openNow_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(1, openNow_); + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setPeriods( + int index, com.google.maps.places.v1.Place.OpeningHours.Period.Builder builderForValue) { + if (periodsBuilder_ == null) { + ensurePeriodsIsMutable(); + periods_.set(index, builderForValue.build()); + onChanged(); + } else { + periodsBuilder_.setMessage(index, builderForValue.build()); + } + return this; } - for (int i = 0; i < periods_.size(); i++) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, periods_.get(i)); + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addPeriods(com.google.maps.places.v1.Place.OpeningHours.Period value) { + if (periodsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePeriodsIsMutable(); + periods_.add(value); + onChanged(); + } else { + periodsBuilder_.addMessage(value); + } + return this; } - { - int dataSize = 0; - for (int i = 0; i < weekdayDescriptions_.size(); i++) { - dataSize += computeStringSizeNoTag(weekdayDescriptions_.getRaw(i)); + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addPeriods( + int index, com.google.maps.places.v1.Place.OpeningHours.Period value) { + if (periodsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePeriodsIsMutable(); + periods_.add(index, value); + onChanged(); + } else { + periodsBuilder_.addMessage(index, value); } - size += dataSize; - size += 1 * getWeekdayDescriptionsList().size(); + return this; } - if (secondaryHourType_ - != com.google.maps.places.v1.Place.OpeningHours.SecondaryHourType - .SECONDARY_HOUR_TYPE_UNSPECIFIED - .getNumber()) { - size += com.google.protobuf.CodedOutputStream.computeEnumSize(4, secondaryHourType_); + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addPeriods( + com.google.maps.places.v1.Place.OpeningHours.Period.Builder builderForValue) { + if (periodsBuilder_ == null) { + ensurePeriodsIsMutable(); + periods_.add(builderForValue.build()); + onChanged(); + } else { + periodsBuilder_.addMessage(builderForValue.build()); + } + return this; } - for (int i = 0; i < specialDays_.size(); i++) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, specialDays_.get(i)); + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addPeriods( + int index, com.google.maps.places.v1.Place.OpeningHours.Period.Builder builderForValue) { + if (periodsBuilder_ == null) { + ensurePeriodsIsMutable(); + periods_.add(index, builderForValue.build()); + onChanged(); + } else { + periodsBuilder_.addMessage(index, builderForValue.build()); + } + 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.maps.places.v1.Place.OpeningHours)) { - return super.equals(obj); - } - com.google.maps.places.v1.Place.OpeningHours other = - (com.google.maps.places.v1.Place.OpeningHours) obj; - - if (getOpenNow() != other.getOpenNow()) return false; - if (!getPeriodsList().equals(other.getPeriodsList())) return false; - if (!getWeekdayDescriptionsList().equals(other.getWeekdayDescriptionsList())) return false; - if (secondaryHourType_ != other.secondaryHourType_) return false; - if (!getSpecialDaysList().equals(other.getSpecialDaysList())) 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) + OPEN_NOW_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getOpenNow()); - if (getPeriodsCount() > 0) { - hash = (37 * hash) + PERIODS_FIELD_NUMBER; - hash = (53 * hash) + getPeriodsList().hashCode(); - } - if (getWeekdayDescriptionsCount() > 0) { - hash = (37 * hash) + WEEKDAY_DESCRIPTIONS_FIELD_NUMBER; - hash = (53 * hash) + getWeekdayDescriptionsList().hashCode(); - } - hash = (37 * hash) + SECONDARY_HOUR_TYPE_FIELD_NUMBER; - hash = (53 * hash) + secondaryHourType_; - if (getSpecialDaysCount() > 0) { - hash = (37 * hash) + SPECIAL_DAYS_FIELD_NUMBER; - hash = (53 * hash) + getSpecialDaysList().hashCode(); - } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static com.google.maps.places.v1.Place.OpeningHours parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.maps.places.v1.Place.OpeningHours parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.OpeningHours parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.maps.places.v1.Place.OpeningHours parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.OpeningHours parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.maps.places.v1.Place.OpeningHours parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.OpeningHours parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } - - public static com.google.maps.places.v1.Place.OpeningHours parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.OpeningHours parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); - } - - public static com.google.maps.places.v1.Place.OpeningHours parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } - - public static com.google.maps.places.v1.Place.OpeningHours parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } - - public static com.google.maps.places.v1.Place.OpeningHours parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } - - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } - - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } - - public static Builder newBuilder(com.google.maps.places.v1.Place.OpeningHours 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.GeneratedMessageV3.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } - /** - * - * - *
-     * Information about business hour of the place.
-     * 
- * - * Protobuf type {@code google.maps.places.v1.Place.OpeningHours} - */ - public static final class Builder - extends com.google.protobuf.GeneratedMessageV3.Builder - implements - // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place.OpeningHours) - com.google.maps.places.v1.Place.OpeningHoursOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Place.OpeningHours.class, - com.google.maps.places.v1.Place.OpeningHours.Builder.class); - } - - // Construct using com.google.maps.places.v1.Place.OpeningHours.newBuilder() - private Builder() {} - - private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAllPeriods( + java.lang.Iterable + values) { + if (periodsBuilder_ == null) { + ensurePeriodsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, periods_); + onChanged(); + } else { + periodsBuilder_.addAllMessages(values); + } + return this; } - - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - openNow_ = false; + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearPeriods() { if (periodsBuilder_ == null) { periods_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); } else { - periods_ = null; periodsBuilder_.clear(); } - bitField0_ = (bitField0_ & ~0x00000002); - weekdayDescriptions_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000004); - secondaryHourType_ = 0; - if (specialDaysBuilder_ == null) { - specialDays_ = java.util.Collections.emptyList(); + return this; + } + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder removePeriods(int index) { + if (periodsBuilder_ == null) { + ensurePeriodsIsMutable(); + periods_.remove(index); + onChanged(); } else { - specialDays_ = null; - specialDaysBuilder_.clear(); + periodsBuilder_.remove(index); } - bitField0_ = (bitField0_ & ~0x00000010); return this; } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_OpeningHours_descriptor; + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.OpeningHours.Period.Builder getPeriodsBuilder( + int index) { + return getPeriodsFieldBuilder().getBuilder(index); } - - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours getDefaultInstanceForType() { - return com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance(); - } - - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours build() { - com.google.maps.places.v1.Place.OpeningHours result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } - - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours buildPartial() { - com.google.maps.places.v1.Place.OpeningHours result = - new com.google.maps.places.v1.Place.OpeningHours(this); - buildPartialRepeatedFields(result); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; - } - - private void buildPartialRepeatedFields(com.google.maps.places.v1.Place.OpeningHours result) { + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.OpeningHours.PeriodOrBuilder getPeriodsOrBuilder( + int index) { if (periodsBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0)) { - periods_ = java.util.Collections.unmodifiableList(periods_); - bitField0_ = (bitField0_ & ~0x00000002); - } - result.periods_ = periods_; + return periods_.get(index); } else { - result.periods_ = periodsBuilder_.build(); - } - if (((bitField0_ & 0x00000004) != 0)) { - weekdayDescriptions_ = weekdayDescriptions_.getUnmodifiableView(); - bitField0_ = (bitField0_ & ~0x00000004); + return periodsBuilder_.getMessageOrBuilder(index); } - result.weekdayDescriptions_ = weekdayDescriptions_; - if (specialDaysBuilder_ == null) { - if (((bitField0_ & 0x00000010) != 0)) { - specialDays_ = java.util.Collections.unmodifiableList(specialDays_); - bitField0_ = (bitField0_ & ~0x00000010); - } - result.specialDays_ = specialDays_; + } + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List + getPeriodsOrBuilderList() { + if (periodsBuilder_ != null) { + return periodsBuilder_.getMessageOrBuilderList(); } else { - result.specialDays_ = specialDaysBuilder_.build(); + return java.util.Collections.unmodifiableList(periods_); } } + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.OpeningHours.Period.Builder addPeriodsBuilder() { + return getPeriodsFieldBuilder() + .addBuilder(com.google.maps.places.v1.Place.OpeningHours.Period.getDefaultInstance()); + } + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.OpeningHours.Period.Builder addPeriodsBuilder( + int index) { + return getPeriodsFieldBuilder() + .addBuilder( + index, com.google.maps.places.v1.Place.OpeningHours.Period.getDefaultInstance()); + } + /** + * + * + *
+       * Output only. The periods that this place is open during the week. The
+       * periods are in chronological order, starting with Sunday in the
+       * place-local timezone. An empty (but not absent) value indicates a place
+       * that is never open, e.g. because it is closed temporarily for
+       * renovations.
+       * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours.Period periods = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List + getPeriodsBuilderList() { + return getPeriodsFieldBuilder().getBuilderList(); + } - private void buildPartial0(com.google.maps.places.v1.Place.OpeningHours result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.openNow_ = openNow_; - } - if (((from_bitField0_ & 0x00000008) != 0)) { - result.secondaryHourType_ = secondaryHourType_; + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours.Period, + com.google.maps.places.v1.Place.OpeningHours.Period.Builder, + com.google.maps.places.v1.Place.OpeningHours.PeriodOrBuilder> + getPeriodsFieldBuilder() { + if (periodsBuilder_ == null) { + periodsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours.Period, + com.google.maps.places.v1.Place.OpeningHours.Period.Builder, + com.google.maps.places.v1.Place.OpeningHours.PeriodOrBuilder>( + periods_, ((bitField0_ & 0x00000002) != 0), getParentForChildren(), isClean()); + periods_ = null; } + return periodsBuilder_; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } + private com.google.protobuf.LazyStringArrayList weekdayDescriptions_ = + com.google.protobuf.LazyStringArrayList.emptyList(); - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.setField(field, value); + private void ensureWeekdayDescriptionsIsMutable() { + if (!weekdayDescriptions_.isModifiable()) { + weekdayDescriptions_ = new com.google.protobuf.LazyStringArrayList(weekdayDescriptions_); + } + bitField0_ |= 0x00000004; } - - @java.lang.Override - public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); + /** + * + * + *
+       * Output only. Localized strings describing the opening hours of this
+       * place, one string for each day of the week.  Will be empty if the hours
+       * are unknown or could not be converted to localized text. Example: "Sun:
+       * 18:00–06:00"
+       * 
+ * + * + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return A list containing the weekdayDescriptions. + */ + public com.google.protobuf.ProtocolStringList getWeekdayDescriptionsList() { + weekdayDescriptions_.makeImmutable(); + return weekdayDescriptions_; } - - @java.lang.Override - public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); + /** + * + * + *
+       * Output only. Localized strings describing the opening hours of this
+       * place, one string for each day of the week.  Will be empty if the hours
+       * are unknown or could not be converted to localized text. Example: "Sun:
+       * 18:00–06:00"
+       * 
+ * + * + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The count of weekdayDescriptions. + */ + public int getWeekdayDescriptionsCount() { + return weekdayDescriptions_.size(); } - - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, - java.lang.Object value) { - return super.setRepeatedField(field, index, value); + /** + * + * + *
+       * Output only. Localized strings describing the opening hours of this
+       * place, one string for each day of the week.  Will be empty if the hours
+       * are unknown or could not be converted to localized text. Example: "Sun:
+       * 18:00–06:00"
+       * 
+ * + * + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param index The index of the element to return. + * @return The weekdayDescriptions at the given index. + */ + public java.lang.String getWeekdayDescriptions(int index) { + return weekdayDescriptions_.get(index); } - - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.addRepeatedField(field, value); + /** + * + * + *
+       * Output only. Localized strings describing the opening hours of this
+       * place, one string for each day of the week.  Will be empty if the hours
+       * are unknown or could not be converted to localized text. Example: "Sun:
+       * 18:00–06:00"
+       * 
+ * + * + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param index The index of the value to return. + * @return The bytes of the weekdayDescriptions at the given index. + */ + public com.google.protobuf.ByteString getWeekdayDescriptionsBytes(int index) { + return weekdayDescriptions_.getByteString(index); } - - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.maps.places.v1.Place.OpeningHours) { - return mergeFrom((com.google.maps.places.v1.Place.OpeningHours) other); - } else { - super.mergeFrom(other); - return this; + /** + * + * + *
+       * Output only. Localized strings describing the opening hours of this
+       * place, one string for each day of the week.  Will be empty if the hours
+       * are unknown or could not be converted to localized text. Example: "Sun:
+       * 18:00–06:00"
+       * 
+ * + * + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param index The index to set the value at. + * @param value The weekdayDescriptions to set. + * @return This builder for chaining. + */ + public Builder setWeekdayDescriptions(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } + ensureWeekdayDescriptionsIsMutable(); + weekdayDescriptions_.set(index, value); + bitField0_ |= 0x00000004; + onChanged(); + return this; } - - public Builder mergeFrom(com.google.maps.places.v1.Place.OpeningHours other) { - if (other == com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance()) return this; - if (other.getOpenNow() != false) { - setOpenNow(other.getOpenNow()); + /** + * + * + *
+       * Output only. Localized strings describing the opening hours of this
+       * place, one string for each day of the week.  Will be empty if the hours
+       * are unknown or could not be converted to localized text. Example: "Sun:
+       * 18:00–06:00"
+       * 
+ * + * + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The weekdayDescriptions to add. + * @return This builder for chaining. + */ + public Builder addWeekdayDescriptions(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - if (periodsBuilder_ == null) { - if (!other.periods_.isEmpty()) { - if (periods_.isEmpty()) { - periods_ = other.periods_; - bitField0_ = (bitField0_ & ~0x00000002); - } else { - ensurePeriodsIsMutable(); - periods_.addAll(other.periods_); - } - onChanged(); - } - } else { - if (!other.periods_.isEmpty()) { - if (periodsBuilder_.isEmpty()) { - periodsBuilder_.dispose(); - periodsBuilder_ = null; - periods_ = other.periods_; - bitField0_ = (bitField0_ & ~0x00000002); - periodsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders - ? getPeriodsFieldBuilder() - : null; - } else { - periodsBuilder_.addAllMessages(other.periods_); - } - } - } - if (!other.weekdayDescriptions_.isEmpty()) { - if (weekdayDescriptions_.isEmpty()) { - weekdayDescriptions_ = other.weekdayDescriptions_; - bitField0_ = (bitField0_ & ~0x00000004); - } else { - ensureWeekdayDescriptionsIsMutable(); - weekdayDescriptions_.addAll(other.weekdayDescriptions_); - } - onChanged(); - } - if (other.secondaryHourType_ != 0) { - setSecondaryHourTypeValue(other.getSecondaryHourTypeValue()); - } - if (specialDaysBuilder_ == null) { - if (!other.specialDays_.isEmpty()) { - if (specialDays_.isEmpty()) { - specialDays_ = other.specialDays_; - bitField0_ = (bitField0_ & ~0x00000010); - } else { - ensureSpecialDaysIsMutable(); - specialDays_.addAll(other.specialDays_); - } - onChanged(); - } - } else { - if (!other.specialDays_.isEmpty()) { - if (specialDaysBuilder_.isEmpty()) { - specialDaysBuilder_.dispose(); - specialDaysBuilder_ = null; - specialDays_ = other.specialDays_; - bitField0_ = (bitField0_ & ~0x00000010); - specialDaysBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders - ? getSpecialDaysFieldBuilder() - : null; - } else { - specialDaysBuilder_.addAllMessages(other.specialDays_); - } - } - } - this.mergeUnknownFields(other.getUnknownFields()); + ensureWeekdayDescriptionsIsMutable(); + weekdayDescriptions_.add(value); + bitField0_ |= 0x00000004; 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: - { - openNow_ = input.readBool(); - bitField0_ |= 0x00000001; - break; - } // case 8 - case 18: - { - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod m = - input.readMessage( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.parser(), - extensionRegistry); - if (periodsBuilder_ == null) { - ensurePeriodsIsMutable(); - periods_.add(m); - } else { - periodsBuilder_.addMessage(m); - } - break; - } // case 18 - case 26: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureWeekdayDescriptionsIsMutable(); - weekdayDescriptions_.add(s); - break; - } // case 26 - case 32: - { - secondaryHourType_ = input.readEnum(); - bitField0_ |= 0x00000008; - break; - } // case 32 - case 42: - { - com.google.maps.places.v1.Place.OpeningHours.SpecialDay m = - input.readMessage( - com.google.maps.places.v1.Place.OpeningHours.SpecialDay.parser(), - extensionRegistry); - if (specialDaysBuilder_ == null) { - ensureSpecialDaysIsMutable(); - specialDays_.add(m); - } else { - specialDaysBuilder_.addMessage(m); - } - 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 bitField0_; - - private boolean openNow_; /** * * *
-       * Is this place open right now?  Always present unless we lack time-of-day
-       * or timezone data for these opening hours.
+       * Output only. Localized strings describing the opening hours of this
+       * place, one string for each day of the week.  Will be empty if the hours
+       * are unknown or could not be converted to localized text. Example: "Sun:
+       * 18:00–06:00"
        * 
* - * bool open_now = 1; + * + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The openNow. + * @param values The weekdayDescriptions to add. + * @return This builder for chaining. */ - @java.lang.Override - public boolean getOpenNow() { - return openNow_; + public Builder addAllWeekdayDescriptions(java.lang.Iterable values) { + ensureWeekdayDescriptionsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, weekdayDescriptions_); + bitField0_ |= 0x00000004; + onChanged(); + return this; } /** * * *
-       * Is this place open right now?  Always present unless we lack time-of-day
-       * or timezone data for these opening hours.
+       * Output only. Localized strings describing the opening hours of this
+       * place, one string for each day of the week.  Will be empty if the hours
+       * are unknown or could not be converted to localized text. Example: "Sun:
+       * 18:00–06:00"
        * 
* - * bool open_now = 1; + * + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The openNow to set. * @return This builder for chaining. */ - public Builder setOpenNow(boolean value) { - - openNow_ = value; - bitField0_ |= 0x00000001; + public Builder clearWeekdayDescriptions() { + weekdayDescriptions_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + ; onChanged(); return this; } @@ -10080,252 +8117,247 @@ public Builder setOpenNow(boolean value) { * * *
-       * Is this place open right now?  Always present unless we lack time-of-day
-       * or timezone data for these opening hours.
+       * Output only. Localized strings describing the opening hours of this
+       * place, one string for each day of the week.  Will be empty if the hours
+       * are unknown or could not be converted to localized text. Example: "Sun:
+       * 18:00–06:00"
        * 
* - * bool open_now = 1; + * + * repeated string weekday_descriptions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * + * @param value The bytes of the weekdayDescriptions to add. * @return This builder for chaining. */ - public Builder clearOpenNow() { - bitField0_ = (bitField0_ & ~0x00000001); - openNow_ = false; + public Builder addWeekdayDescriptionsBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureWeekdayDescriptionsIsMutable(); + weekdayDescriptions_.add(value); + bitField0_ |= 0x00000004; onChanged(); return this; } - private java.util.List - periods_ = java.util.Collections.emptyList(); - - private void ensurePeriodsIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { - periods_ = - new java.util.ArrayList< - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod>(periods_); - bitField0_ |= 0x00000002; - } - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.Builder, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriodOrBuilder> - periodsBuilder_; - + private int secondaryHoursType_ = 0; /** * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. A type string used to identify the type of secondary hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * .google.maps.places.v1.Place.OpeningHours.SecondaryHoursType secondary_hours_type = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * + * + * @return The enum numeric value on the wire for secondaryHoursType. */ - public java.util.List - getPeriodsList() { - if (periodsBuilder_ == null) { - return java.util.Collections.unmodifiableList(periods_); - } else { - return periodsBuilder_.getMessageList(); - } + @java.lang.Override + public int getSecondaryHoursTypeValue() { + return secondaryHoursType_; } /** * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. A type string used to identify the type of secondary hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * .google.maps.places.v1.Place.OpeningHours.SecondaryHoursType secondary_hours_type = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * + * + * @param value The enum numeric value on the wire for secondaryHoursType to set. + * @return This builder for chaining. */ - public int getPeriodsCount() { - if (periodsBuilder_ == null) { - return periods_.size(); - } else { - return periodsBuilder_.getCount(); - } + public Builder setSecondaryHoursTypeValue(int value) { + secondaryHoursType_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; } /** * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. A type string used to identify the type of secondary hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * .google.maps.places.v1.Place.OpeningHours.SecondaryHoursType secondary_hours_type = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * + * + * @return The secondaryHoursType. */ - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod getPeriods(int index) { - if (periodsBuilder_ == null) { - return periods_.get(index); - } else { - return periodsBuilder_.getMessage(index); - } + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours.SecondaryHoursType + getSecondaryHoursType() { + com.google.maps.places.v1.Place.OpeningHours.SecondaryHoursType result = + com.google.maps.places.v1.Place.OpeningHours.SecondaryHoursType.forNumber( + secondaryHoursType_); + return result == null + ? com.google.maps.places.v1.Place.OpeningHours.SecondaryHoursType.UNRECOGNIZED + : result; } /** * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. A type string used to identify the type of secondary hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * .google.maps.places.v1.Place.OpeningHours.SecondaryHoursType secondary_hours_type = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * + * + * @param value The secondaryHoursType to set. + * @return This builder for chaining. */ - public Builder setPeriods( - int index, com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod value) { - if (periodsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensurePeriodsIsMutable(); - periods_.set(index, value); - onChanged(); - } else { - periodsBuilder_.setMessage(index, value); + public Builder setSecondaryHoursType( + com.google.maps.places.v1.Place.OpeningHours.SecondaryHoursType value) { + if (value == null) { + throw new NullPointerException(); } + bitField0_ |= 0x00000008; + secondaryHoursType_ = value.getNumber(); + onChanged(); return this; } /** * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. A type string used to identify the type of secondary hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * .google.maps.places.v1.Place.OpeningHours.SecondaryHoursType secondary_hours_type = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * + * + * @return This builder for chaining. */ - public Builder setPeriods( - int index, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.Builder builderForValue) { - if (periodsBuilder_ == null) { - ensurePeriodsIsMutable(); - periods_.set(index, builderForValue.build()); - onChanged(); - } else { - periodsBuilder_.setMessage(index, builderForValue.build()); - } + public Builder clearSecondaryHoursType() { + bitField0_ = (bitField0_ & ~0x00000008); + secondaryHoursType_ = 0; + onChanged(); return this; } + + private java.util.List specialDays_ = + java.util.Collections.emptyList(); + + private void ensureSpecialDaysIsMutable() { + if (!((bitField0_ & 0x00000010) != 0)) { + specialDays_ = + new java.util.ArrayList( + specialDays_); + bitField0_ |= 0x00000010; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours.SpecialDay, + com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder, + com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder> + specialDaysBuilder_; + /** * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addPeriods( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod value) { - if (periodsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensurePeriodsIsMutable(); - periods_.add(value); - onChanged(); + public java.util.List + getSpecialDaysList() { + if (specialDaysBuilder_ == null) { + return java.util.Collections.unmodifiableList(specialDays_); } else { - periodsBuilder_.addMessage(value); + return specialDaysBuilder_.getMessageList(); } - return this; } /** * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addPeriods( - int index, com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod value) { - if (periodsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensurePeriodsIsMutable(); - periods_.add(index, value); - onChanged(); + public int getSpecialDaysCount() { + if (specialDaysBuilder_ == null) { + return specialDays_.size(); } else { - periodsBuilder_.addMessage(index, value); + return specialDaysBuilder_.getCount(); } - return this; } /** * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addPeriods( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.Builder builderForValue) { - if (periodsBuilder_ == null) { - ensurePeriodsIsMutable(); - periods_.add(builderForValue.build()); - onChanged(); + public com.google.maps.places.v1.Place.OpeningHours.SpecialDay getSpecialDays(int index) { + if (specialDaysBuilder_ == null) { + return specialDays_.get(index); } else { - periodsBuilder_.addMessage(builderForValue.build()); + return specialDaysBuilder_.getMessage(index); } - return this; } /** * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addPeriods( - int index, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.Builder builderForValue) { - if (periodsBuilder_ == null) { - ensurePeriodsIsMutable(); - periods_.add(index, builderForValue.build()); + public Builder setSpecialDays( + int index, com.google.maps.places.v1.Place.OpeningHours.SpecialDay value) { + if (specialDaysBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSpecialDaysIsMutable(); + specialDays_.set(index, value); onChanged(); } else { - periodsBuilder_.addMessage(index, builderForValue.build()); + specialDaysBuilder_.setMessage(index, value); } return this; } @@ -10333,25 +8365,26 @@ public Builder addPeriods( * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addAllPeriods( - java.lang.Iterable< - ? extends com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod> - values) { - if (periodsBuilder_ == null) { - ensurePeriodsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, periods_); + public Builder setSpecialDays( + int index, + com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder builderForValue) { + if (specialDaysBuilder_ == null) { + ensureSpecialDaysIsMutable(); + specialDays_.set(index, builderForValue.build()); onChanged(); } else { - periodsBuilder_.addAllMessages(values); + specialDaysBuilder_.setMessage(index, builderForValue.build()); } return this; } @@ -10359,22 +8392,27 @@ public Builder addAllPeriods( * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder clearPeriods() { - if (periodsBuilder_ == null) { - periods_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); + public Builder addSpecialDays(com.google.maps.places.v1.Place.OpeningHours.SpecialDay value) { + if (specialDaysBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSpecialDaysIsMutable(); + specialDays_.add(value); onChanged(); } else { - periodsBuilder_.clear(); + specialDaysBuilder_.addMessage(value); } return this; } @@ -10382,22 +8420,28 @@ public Builder clearPeriods() { * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder removePeriods(int index) { - if (periodsBuilder_ == null) { - ensurePeriodsIsMutable(); - periods_.remove(index); + public Builder addSpecialDays( + int index, com.google.maps.places.v1.Place.OpeningHours.SpecialDay value) { + if (specialDaysBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSpecialDaysIsMutable(); + specialDays_.add(index, value); onChanged(); } else { - periodsBuilder_.remove(index); + specialDaysBuilder_.addMessage(index, value); } return this; } @@ -10405,928 +8449,327 @@ public Builder removePeriods(int index) { * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.Builder - getPeriodsBuilder(int index) { - return getPeriodsFieldBuilder().getBuilder(index); + public Builder addSpecialDays( + com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder builderForValue) { + if (specialDaysBuilder_ == null) { + ensureSpecialDaysIsMutable(); + specialDays_.add(builderForValue.build()); + onChanged(); + } else { + specialDaysBuilder_.addMessage(builderForValue.build()); + } + return this; } /** * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriodOrBuilder - getPeriodsOrBuilder(int index) { - if (periodsBuilder_ == null) { - return periods_.get(index); + public Builder addSpecialDays( + int index, + com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder builderForValue) { + if (specialDaysBuilder_ == null) { + ensureSpecialDaysIsMutable(); + specialDays_.add(index, builderForValue.build()); + onChanged(); } else { - return periodsBuilder_.getMessageOrBuilder(index); + specialDaysBuilder_.addMessage(index, builderForValue.build()); } + return this; } /** * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public java.util.List< - ? extends com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriodOrBuilder> - getPeriodsOrBuilderList() { - if (periodsBuilder_ != null) { - return periodsBuilder_.getMessageOrBuilderList(); + public Builder addAllSpecialDays( + java.lang.Iterable + values) { + if (specialDaysBuilder_ == null) { + ensureSpecialDaysIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, specialDays_); + onChanged(); } else { - return java.util.Collections.unmodifiableList(periods_); + specialDaysBuilder_.addAllMessages(values); } + return this; } /** * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.Builder - addPeriodsBuilder() { - return getPeriodsFieldBuilder() - .addBuilder( - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .getDefaultInstance()); + public Builder clearSpecialDays() { + if (specialDaysBuilder_ == null) { + specialDays_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + } else { + specialDaysBuilder_.clear(); + } + return this; } /** * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.Builder - addPeriodsBuilder(int index) { - return getPeriodsFieldBuilder() - .addBuilder( - index, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod - .getDefaultInstance()); + public Builder removeSpecialDays(int index) { + if (specialDaysBuilder_ == null) { + ensureSpecialDaysIsMutable(); + specialDays_.remove(index); + onChanged(); + } else { + specialDaysBuilder_.remove(index); + } + return this; } /** * * *
-       * The periods that this place is open during the week. The periods are in
-       * chronological order, starting with Sunday in the place-local timezone. An
-       * empty (but not absent) value indicates a place that is never open, e.g.
-       * because it is closed temporarily for renovations.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated .google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod periods = 2; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public java.util.List - getPeriodsBuilderList() { - return getPeriodsFieldBuilder().getBuilderList(); - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.Builder, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriodOrBuilder> - getPeriodsFieldBuilder() { - if (periodsBuilder_ == null) { - periodsBuilder_ = - new com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriod.Builder, - com.google.maps.places.v1.Place.OpeningHours.OpeningHoursPeriodOrBuilder>( - periods_, ((bitField0_ & 0x00000002) != 0), getParentForChildren(), isClean()); - periods_ = null; - } - return periodsBuilder_; - } - - private com.google.protobuf.LazyStringList weekdayDescriptions_ = - com.google.protobuf.LazyStringArrayList.EMPTY; - - private void ensureWeekdayDescriptionsIsMutable() { - if (!((bitField0_ & 0x00000004) != 0)) { - weekdayDescriptions_ = new com.google.protobuf.LazyStringArrayList(weekdayDescriptions_); - bitField0_ |= 0x00000004; - } + public com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder getSpecialDaysBuilder( + int index) { + return getSpecialDaysFieldBuilder().getBuilder(index); } /** * * *
-       * Localized strings describing the opening hours of this place, one string
-       * for each day of the week.  Will be empty if the hours are unknown or
-       * could not be converted to localized text. Example: "Sun: 18:00–06:00"
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated string weekday_descriptions = 3; - * - * @return A list containing the weekdayDescriptions. + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ProtocolStringList getWeekdayDescriptionsList() { - return weekdayDescriptions_.getUnmodifiableView(); + public com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder + getSpecialDaysOrBuilder(int index) { + if (specialDaysBuilder_ == null) { + return specialDays_.get(index); + } else { + return specialDaysBuilder_.getMessageOrBuilder(index); + } } /** * * *
-       * Localized strings describing the opening hours of this place, one string
-       * for each day of the week.  Will be empty if the hours are unknown or
-       * could not be converted to localized text. Example: "Sun: 18:00–06:00"
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * repeated string weekday_descriptions = 3; - * - * @return The count of weekdayDescriptions. - */ - public int getWeekdayDescriptionsCount() { - return weekdayDescriptions_.size(); - } - /** - * - * - *
-       * Localized strings describing the opening hours of this place, one string
-       * for each day of the week.  Will be empty if the hours are unknown or
-       * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-       * 
- * - * repeated string weekday_descriptions = 3; - * - * @param index The index of the element to return. - * @return The weekdayDescriptions at the given index. - */ - public java.lang.String getWeekdayDescriptions(int index) { - return weekdayDescriptions_.get(index); - } - /** - * - * - *
-       * Localized strings describing the opening hours of this place, one string
-       * for each day of the week.  Will be empty if the hours are unknown or
-       * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-       * 
- * - * repeated string weekday_descriptions = 3; - * - * @param index The index of the value to return. - * @return The bytes of the weekdayDescriptions at the given index. - */ - public com.google.protobuf.ByteString getWeekdayDescriptionsBytes(int index) { - return weekdayDescriptions_.getByteString(index); - } - /** - * - * - *
-       * Localized strings describing the opening hours of this place, one string
-       * for each day of the week.  Will be empty if the hours are unknown or
-       * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-       * 
- * - * repeated string weekday_descriptions = 3; - * - * @param index The index to set the value at. - * @param value The weekdayDescriptions to set. - * @return This builder for chaining. - */ - public Builder setWeekdayDescriptions(int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureWeekdayDescriptionsIsMutable(); - weekdayDescriptions_.set(index, value); - onChanged(); - return this; - } - /** - * - * - *
-       * Localized strings describing the opening hours of this place, one string
-       * for each day of the week.  Will be empty if the hours are unknown or
-       * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-       * 
- * - * repeated string weekday_descriptions = 3; - * - * @param value The weekdayDescriptions to add. - * @return This builder for chaining. - */ - public Builder addWeekdayDescriptions(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureWeekdayDescriptionsIsMutable(); - weekdayDescriptions_.add(value); - onChanged(); - return this; - } - /** - * - * - *
-       * Localized strings describing the opening hours of this place, one string
-       * for each day of the week.  Will be empty if the hours are unknown or
-       * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-       * 
- * - * repeated string weekday_descriptions = 3; - * - * @param values The weekdayDescriptions to add. - * @return This builder for chaining. - */ - public Builder addAllWeekdayDescriptions(java.lang.Iterable values) { - ensureWeekdayDescriptionsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, weekdayDescriptions_); - onChanged(); - return this; - } - /** - * - * - *
-       * Localized strings describing the opening hours of this place, one string
-       * for each day of the week.  Will be empty if the hours are unknown or
-       * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-       * 
- * - * repeated string weekday_descriptions = 3; - * - * @return This builder for chaining. - */ - public Builder clearWeekdayDescriptions() { - weekdayDescriptions_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000004); - onChanged(); - return this; - } - /** - * - * - *
-       * Localized strings describing the opening hours of this place, one string
-       * for each day of the week.  Will be empty if the hours are unknown or
-       * could not be converted to localized text. Example: "Sun: 18:00–06:00"
-       * 
- * - * repeated string weekday_descriptions = 3; - * - * @param value The bytes of the weekdayDescriptions to add. - * @return This builder for chaining. - */ - public Builder addWeekdayDescriptionsBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - ensureWeekdayDescriptionsIsMutable(); - weekdayDescriptions_.add(value); - onChanged(); - return this; - } - - private int secondaryHourType_ = 0; - /** - * - * - *
-       * A type string used to identify the type of secondary hours.
-       * 
- * - * .google.maps.places.v1.Place.OpeningHours.SecondaryHourType secondary_hour_type = 4; - * - * - * @return The enum numeric value on the wire for secondaryHourType. - */ - @java.lang.Override - public int getSecondaryHourTypeValue() { - return secondaryHourType_; - } - /** - * - * - *
-       * A type string used to identify the type of secondary hours.
-       * 
- * - * .google.maps.places.v1.Place.OpeningHours.SecondaryHourType secondary_hour_type = 4; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @param value The enum numeric value on the wire for secondaryHourType to set. - * @return This builder for chaining. */ - public Builder setSecondaryHourTypeValue(int value) { - secondaryHourType_ = value; - bitField0_ |= 0x00000008; - onChanged(); - return this; + public java.util.List< + ? extends com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder> + getSpecialDaysOrBuilderList() { + if (specialDaysBuilder_ != null) { + return specialDaysBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(specialDays_); + } } /** * * *
-       * A type string used to identify the type of secondary hours.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * .google.maps.places.v1.Place.OpeningHours.SecondaryHourType secondary_hour_type = 4; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @return The secondaryHourType. */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours.SecondaryHourType getSecondaryHourType() { - com.google.maps.places.v1.Place.OpeningHours.SecondaryHourType result = - com.google.maps.places.v1.Place.OpeningHours.SecondaryHourType.forNumber( - secondaryHourType_); - return result == null - ? com.google.maps.places.v1.Place.OpeningHours.SecondaryHourType.UNRECOGNIZED - : result; + public com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder + addSpecialDaysBuilder() { + return getSpecialDaysFieldBuilder() + .addBuilder( + com.google.maps.places.v1.Place.OpeningHours.SpecialDay.getDefaultInstance()); } /** * * *
-       * A type string used to identify the type of secondary hours.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * .google.maps.places.v1.Place.OpeningHours.SecondaryHourType secondary_hour_type = 4; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @param value The secondaryHourType to set. - * @return This builder for chaining. */ - public Builder setSecondaryHourType( - com.google.maps.places.v1.Place.OpeningHours.SecondaryHourType value) { - if (value == null) { - throw new NullPointerException(); - } - bitField0_ |= 0x00000008; - secondaryHourType_ = value.getNumber(); - onChanged(); - return this; + public com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder addSpecialDaysBuilder( + int index) { + return getSpecialDaysFieldBuilder() + .addBuilder( + index, + com.google.maps.places.v1.Place.OpeningHours.SpecialDay.getDefaultInstance()); } /** * * *
-       * A type string used to identify the type of secondary hours.
+       * Output only. Structured information for special days that fall within the
+       * period that the returned opening hours cover. Special days are days that
+       * could impact the business hours of a place, e.g. Christmas day. Set for
+       * current_opening_hours and current_secondary_opening_hours if there are
+       * exceptional hours.
        * 
* - * .google.maps.places.v1.Place.OpeningHours.SecondaryHourType secondary_hour_type = 4; + * + * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * - * @return This builder for chaining. */ - public Builder clearSecondaryHourType() { - bitField0_ = (bitField0_ & ~0x00000008); - secondaryHourType_ = 0; - onChanged(); - return this; - } - - private java.util.List specialDays_ = - java.util.Collections.emptyList(); - - private void ensureSpecialDaysIsMutable() { - if (!((bitField0_ & 0x00000010) != 0)) { - specialDays_ = - new java.util.ArrayList( - specialDays_); - bitField0_ |= 0x00000010; - } + public java.util.List + getSpecialDaysBuilderList() { + return getSpecialDaysFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< com.google.maps.places.v1.Place.OpeningHours.SpecialDay, com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder, com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder> - specialDaysBuilder_; - - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public java.util.List - getSpecialDaysList() { - if (specialDaysBuilder_ == null) { - return java.util.Collections.unmodifiableList(specialDays_); - } else { - return specialDaysBuilder_.getMessageList(); - } - } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public int getSpecialDaysCount() { + getSpecialDaysFieldBuilder() { if (specialDaysBuilder_ == null) { - return specialDays_.size(); - } else { - return specialDaysBuilder_.getCount(); + specialDaysBuilder_ = + new com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours.SpecialDay, + com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder, + com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder>( + specialDays_, + ((bitField0_ & 0x00000010) != 0), + getParentForChildren(), + isClean()); + specialDays_ = null; } + return specialDaysBuilder_; } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public com.google.maps.places.v1.Place.OpeningHours.SpecialDay getSpecialDays(int index) { - if (specialDaysBuilder_ == null) { - return specialDays_.get(index); - } else { - return specialDaysBuilder_.getMessage(index); - } - } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public Builder setSpecialDays( - int index, com.google.maps.places.v1.Place.OpeningHours.SpecialDay value) { - if (specialDaysBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSpecialDaysIsMutable(); - specialDays_.set(index, value); - onChanged(); - } else { - specialDaysBuilder_.setMessage(index, value); - } - return this; - } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public Builder setSpecialDays( - int index, - com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder builderForValue) { - if (specialDaysBuilder_ == null) { - ensureSpecialDaysIsMutable(); - specialDays_.set(index, builderForValue.build()); - onChanged(); - } else { - specialDaysBuilder_.setMessage(index, builderForValue.build()); - } - return this; + + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public Builder addSpecialDays(com.google.maps.places.v1.Place.OpeningHours.SpecialDay value) { - if (specialDaysBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSpecialDaysIsMutable(); - specialDays_.add(value); - onChanged(); - } else { - specialDaysBuilder_.addMessage(value); - } - return this; + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public Builder addSpecialDays( - int index, com.google.maps.places.v1.Place.OpeningHours.SpecialDay value) { - if (specialDaysBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSpecialDaysIsMutable(); - specialDays_.add(index, value); - onChanged(); - } else { - specialDaysBuilder_.addMessage(index, value); - } - return this; - } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public Builder addSpecialDays( - com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder builderForValue) { - if (specialDaysBuilder_ == null) { - ensureSpecialDaysIsMutable(); - specialDays_.add(builderForValue.build()); - onChanged(); - } else { - specialDaysBuilder_.addMessage(builderForValue.build()); - } - return this; - } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public Builder addSpecialDays( - int index, - com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder builderForValue) { - if (specialDaysBuilder_ == null) { - ensureSpecialDaysIsMutable(); - specialDays_.add(index, builderForValue.build()); - onChanged(); - } else { - specialDaysBuilder_.addMessage(index, builderForValue.build()); - } - return this; - } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public Builder addAllSpecialDays( - java.lang.Iterable - values) { - if (specialDaysBuilder_ == null) { - ensureSpecialDaysIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, specialDays_); - onChanged(); - } else { - specialDaysBuilder_.addAllMessages(values); - } - return this; - } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public Builder clearSpecialDays() { - if (specialDaysBuilder_ == null) { - specialDays_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000010); - onChanged(); - } else { - specialDaysBuilder_.clear(); - } - return this; - } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public Builder removeSpecialDays(int index) { - if (specialDaysBuilder_ == null) { - ensureSpecialDaysIsMutable(); - specialDays_.remove(index); - onChanged(); - } else { - specialDaysBuilder_.remove(index); - } - return this; - } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder getSpecialDaysBuilder( - int index) { - return getSpecialDaysFieldBuilder().getBuilder(index); - } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder - getSpecialDaysOrBuilder(int index) { - if (specialDaysBuilder_ == null) { - return specialDays_.get(index); - } else { - return specialDaysBuilder_.getMessageOrBuilder(index); - } - } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public java.util.List< - ? extends com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder> - getSpecialDaysOrBuilderList() { - if (specialDaysBuilder_ != null) { - return specialDaysBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(specialDays_); - } - } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder - addSpecialDaysBuilder() { - return getSpecialDaysFieldBuilder() - .addBuilder( - com.google.maps.places.v1.Place.OpeningHours.SpecialDay.getDefaultInstance()); - } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder addSpecialDaysBuilder( - int index) { - return getSpecialDaysFieldBuilder() - .addBuilder( - index, - com.google.maps.places.v1.Place.OpeningHours.SpecialDay.getDefaultInstance()); - } - /** - * - * - *
-       * Structured information for special days that fall within the period that
-       * the returned opening hours cover. Special days are days that could impact
-       * the business hours of a place, e.g. Christmas day. Set for
-       * current_opening_hours and current_secondary_opening_hours if there are
-       * exceptional hours.
-       * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours.SpecialDay special_days = 5; - * - */ - public java.util.List - getSpecialDaysBuilderList() { - return getSpecialDaysFieldBuilder().getBuilderList(); - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours.SpecialDay, - com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder, - com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder> - getSpecialDaysFieldBuilder() { - if (specialDaysBuilder_ == null) { - specialDaysBuilder_ = - new com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours.SpecialDay, - com.google.maps.places.v1.Place.OpeningHours.SpecialDay.Builder, - com.google.maps.places.v1.Place.OpeningHours.SpecialDayOrBuilder>( - specialDays_, - ((bitField0_ & 0x00000010) != 0), - getParentForChildren(), - isClean()); - specialDays_ = null; - } - return specialDaysBuilder_; - } - - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - - // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Place.OpeningHours) - } - - // @@protoc_insertion_point(class_scope:google.maps.places.v1.Place.OpeningHours) - private static final com.google.maps.places.v1.Place.OpeningHours DEFAULT_INSTANCE; - - static { - DEFAULT_INSTANCE = new com.google.maps.places.v1.Place.OpeningHours(); - } - - public static com.google.maps.places.v1.Place.OpeningHours getDefaultInstance() { - return DEFAULT_INSTANCE; - } - - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public OpeningHours 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(); + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Place.OpeningHours) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.Place.OpeningHours) + private static final com.google.maps.places.v1.Place.OpeningHours DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.Place.OpeningHours(); + } + + public static com.google.maps.places.v1.Place.OpeningHours getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public OpeningHours 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(); } }; @@ -11354,10 +8797,10 @@ public interface AttributionOrBuilder * * *
-     * Name of the Place's data provider.
+     * Output only. Name of the Place's data provider.
      * 
* - * string provider = 1; + * string provider = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The provider. */ @@ -11366,10 +8809,10 @@ public interface AttributionOrBuilder * * *
-     * Name of the Place's data provider.
+     * Output only. Name of the Place's data provider.
      * 
* - * string provider = 1; + * string provider = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for provider. */ @@ -11379,10 +8822,10 @@ public interface AttributionOrBuilder * * *
-     * URI to the Place's data provider.
+     * Output only. URI to the Place's data provider.
      * 
* - * string provider_uri = 2; + * string provider_uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The providerUri. */ @@ -11391,10 +8834,10 @@ public interface AttributionOrBuilder * * *
-     * URI to the Place's data provider.
+     * Output only. URI to the Place's data provider.
      * 
* - * string provider_uri = 2; + * string provider_uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for providerUri. */ @@ -11430,11 +8873,6 @@ protected java.lang.Object newInstance(UnusedPrivateParameter unused) { return new Attribution(); } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; - } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlaceProto .internal_static_google_maps_places_v1_Place_Attribution_descriptor; @@ -11458,10 +8896,10 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
-     * Name of the Place's data provider.
+     * Output only. Name of the Place's data provider.
      * 
* - * string provider = 1; + * string provider = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The provider. */ @@ -11481,10 +8919,10 @@ public java.lang.String getProvider() { * * *
-     * Name of the Place's data provider.
+     * Output only. Name of the Place's data provider.
      * 
* - * string provider = 1; + * string provider = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for provider. */ @@ -11509,10 +8947,10 @@ public com.google.protobuf.ByteString getProviderBytes() { * * *
-     * URI to the Place's data provider.
+     * Output only. URI to the Place's data provider.
      * 
* - * string provider_uri = 2; + * string provider_uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The providerUri. */ @@ -11532,10 +8970,10 @@ public java.lang.String getProviderUri() { * * *
-     * URI to the Place's data provider.
+     * Output only. URI to the Place's data provider.
      * 
* - * string provider_uri = 2; + * string provider_uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for providerUri. */ @@ -11926,10 +9364,10 @@ public Builder mergeFrom( * * *
-       * Name of the Place's data provider.
+       * Output only. Name of the Place's data provider.
        * 
* - * string provider = 1; + * string provider = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The provider. */ @@ -11948,10 +9386,10 @@ public java.lang.String getProvider() { * * *
-       * Name of the Place's data provider.
+       * Output only. Name of the Place's data provider.
        * 
* - * string provider = 1; + * string provider = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for provider. */ @@ -11970,10 +9408,10 @@ public com.google.protobuf.ByteString getProviderBytes() { * * *
-       * Name of the Place's data provider.
+       * Output only. Name of the Place's data provider.
        * 
* - * string provider = 1; + * string provider = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The provider to set. * @return This builder for chaining. @@ -11991,10 +9429,10 @@ public Builder setProvider(java.lang.String value) { * * *
-       * Name of the Place's data provider.
+       * Output only. Name of the Place's data provider.
        * 
* - * string provider = 1; + * string provider = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ @@ -12008,10 +9446,10 @@ public Builder clearProvider() { * * *
-       * Name of the Place's data provider.
+       * Output only. Name of the Place's data provider.
        * 
* - * string provider = 1; + * string provider = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The bytes for provider to set. * @return This builder for chaining. @@ -12032,10 +9470,10 @@ public Builder setProviderBytes(com.google.protobuf.ByteString value) { * * *
-       * URI to the Place's data provider.
+       * Output only. URI to the Place's data provider.
        * 
* - * string provider_uri = 2; + * string provider_uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The providerUri. */ @@ -12054,10 +9492,10 @@ public java.lang.String getProviderUri() { * * *
-       * URI to the Place's data provider.
+       * Output only. URI to the Place's data provider.
        * 
* - * string provider_uri = 2; + * string provider_uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for providerUri. */ @@ -12076,10 +9514,10 @@ public com.google.protobuf.ByteString getProviderUriBytes() { * * *
-       * URI to the Place's data provider.
+       * Output only. URI to the Place's data provider.
        * 
* - * string provider_uri = 2; + * string provider_uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The providerUri to set. * @return This builder for chaining. @@ -12097,10 +9535,10 @@ public Builder setProviderUri(java.lang.String value) { * * *
-       * URI to the Place's data provider.
+       * Output only. URI to the Place's data provider.
        * 
* - * string provider_uri = 2; + * string provider_uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ @@ -12114,10 +9552,10 @@ public Builder clearProviderUri() { * * *
-       * URI to the Place's data provider.
+       * Output only. URI to the Place's data provider.
        * 
* - * string provider_uri = 2; + * string provider_uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The bytes for providerUri to set. * @return This builder for chaining. @@ -12197,156 +9635,295 @@ public com.google.maps.places.v1.Place.Attribution getDefaultInstanceForType() { } } - public interface EditorialSummaryOrBuilder + public interface PaymentOptionsOrBuilder extends - // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Place.EditorialSummary) + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Place.PaymentOptions) com.google.protobuf.MessageOrBuilder { /** * * *
-     * A summary is comprised of a textual overview, and also includes the
-     * language code for these if applicable. Summary text must be presented
-     * as-is and can not be modified or altered.
+     * Place accepts credit cards as payment.
+     * 
+ * + * optional bool accepts_credit_cards = 1; + * + * @return Whether the acceptsCreditCards field is set. + */ + boolean hasAcceptsCreditCards(); + /** + * + * + *
+     * Place accepts credit cards as payment.
+     * 
+ * + * optional bool accepts_credit_cards = 1; + * + * @return The acceptsCreditCards. + */ + boolean getAcceptsCreditCards(); + + /** + * + * + *
+     * Place accepts debit cards as payment.
+     * 
+ * + * optional bool accepts_debit_cards = 2; + * + * @return Whether the acceptsDebitCards field is set. + */ + boolean hasAcceptsDebitCards(); + /** + * + * + *
+     * Place accepts debit cards as payment.
+     * 
+ * + * optional bool accepts_debit_cards = 2; + * + * @return The acceptsDebitCards. + */ + boolean getAcceptsDebitCards(); + + /** + * + * + *
+     * Place accepts cash only as payment. Places with this attribute may still
+     * accept other payment methods.
+     * 
+ * + * optional bool accepts_cash_only = 3; + * + * @return Whether the acceptsCashOnly field is set. + */ + boolean hasAcceptsCashOnly(); + /** + * + * + *
+     * Place accepts cash only as payment. Places with this attribute may still
+     * accept other payment methods.
      * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_cash_only = 3; * - * @return Whether the overview field is set. + * @return The acceptsCashOnly. */ - boolean hasOverview(); + boolean getAcceptsCashOnly(); + /** * * *
-     * A summary is comprised of a textual overview, and also includes the
-     * language code for these if applicable. Summary text must be presented
-     * as-is and can not be modified or altered.
+     * Place accepts NFC payments.
      * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_nfc = 4; * - * @return The overview. + * @return Whether the acceptsNfc field is set. */ - com.google.type.LocalizedText getOverview(); + boolean hasAcceptsNfc(); /** * * *
-     * A summary is comprised of a textual overview, and also includes the
-     * language code for these if applicable. Summary text must be presented
-     * as-is and can not be modified or altered.
+     * Place accepts NFC payments.
      * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_nfc = 4; + * + * @return The acceptsNfc. */ - com.google.type.LocalizedTextOrBuilder getOverviewOrBuilder(); + boolean getAcceptsNfc(); } /** * * *
-   * Contains a summary of the place.
+   * Payment options the place accepts.
    * 
* - * Protobuf type {@code google.maps.places.v1.Place.EditorialSummary} + * Protobuf type {@code google.maps.places.v1.Place.PaymentOptions} */ - public static final class EditorialSummary extends com.google.protobuf.GeneratedMessageV3 + public static final class PaymentOptions extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:google.maps.places.v1.Place.EditorialSummary) - EditorialSummaryOrBuilder { + // @@protoc_insertion_point(message_implements:google.maps.places.v1.Place.PaymentOptions) + PaymentOptionsOrBuilder { private static final long serialVersionUID = 0L; - // Use EditorialSummary.newBuilder() to construct. - private EditorialSummary(com.google.protobuf.GeneratedMessageV3.Builder builder) { + // Use PaymentOptions.newBuilder() to construct. + private PaymentOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } - private EditorialSummary() {} + private PaymentOptions() {} @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance(UnusedPrivateParameter unused) { - return new EditorialSummary(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; + return new PaymentOptions(); } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_EditorialSummary_descriptor; + .internal_static_google_maps_places_v1_Place_PaymentOptions_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_EditorialSummary_fieldAccessorTable + .internal_static_google_maps_places_v1_Place_PaymentOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Place.EditorialSummary.class, - com.google.maps.places.v1.Place.EditorialSummary.Builder.class); + com.google.maps.places.v1.Place.PaymentOptions.class, + com.google.maps.places.v1.Place.PaymentOptions.Builder.class); } - public static final int OVERVIEW_FIELD_NUMBER = 1; - private com.google.type.LocalizedText overview_; + private int bitField0_; + public static final int ACCEPTS_CREDIT_CARDS_FIELD_NUMBER = 1; + private boolean acceptsCreditCards_ = false; /** * * *
-     * A summary is comprised of a textual overview, and also includes the
-     * language code for these if applicable. Summary text must be presented
-     * as-is and can not be modified or altered.
+     * Place accepts credit cards as payment.
      * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_credit_cards = 1; * - * @return Whether the overview field is set. + * @return Whether the acceptsCreditCards field is set. */ @java.lang.Override - public boolean hasOverview() { - return overview_ != null; + public boolean hasAcceptsCreditCards() { + return ((bitField0_ & 0x00000001) != 0); } /** * * *
-     * A summary is comprised of a textual overview, and also includes the
-     * language code for these if applicable. Summary text must be presented
-     * as-is and can not be modified or altered.
+     * Place accepts credit cards as payment.
      * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_credit_cards = 1; * - * @return The overview. + * @return The acceptsCreditCards. */ @java.lang.Override - public com.google.type.LocalizedText getOverview() { - return overview_ == null ? com.google.type.LocalizedText.getDefaultInstance() : overview_; + public boolean getAcceptsCreditCards() { + return acceptsCreditCards_; } + + public static final int ACCEPTS_DEBIT_CARDS_FIELD_NUMBER = 2; + private boolean acceptsDebitCards_ = false; /** * * *
-     * A summary is comprised of a textual overview, and also includes the
-     * language code for these if applicable. Summary text must be presented
-     * as-is and can not be modified or altered.
+     * Place accepts debit cards as payment.
      * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_debit_cards = 2; + * + * @return Whether the acceptsDebitCards field is set. */ @java.lang.Override - public com.google.type.LocalizedTextOrBuilder getOverviewOrBuilder() { - return overview_ == null ? com.google.type.LocalizedText.getDefaultInstance() : overview_; + public boolean hasAcceptsDebitCards() { + return ((bitField0_ & 0x00000002) != 0); } - - private byte memoizedIsInitialized = -1; - - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; + /** + * + * + *
+     * Place accepts debit cards as payment.
+     * 
+ * + * optional bool accepts_debit_cards = 2; + * + * @return The acceptsDebitCards. + */ + @java.lang.Override + public boolean getAcceptsDebitCards() { + return acceptsDebitCards_; + } + + public static final int ACCEPTS_CASH_ONLY_FIELD_NUMBER = 3; + private boolean acceptsCashOnly_ = false; + /** + * + * + *
+     * Place accepts cash only as payment. Places with this attribute may still
+     * accept other payment methods.
+     * 
+ * + * optional bool accepts_cash_only = 3; + * + * @return Whether the acceptsCashOnly field is set. + */ + @java.lang.Override + public boolean hasAcceptsCashOnly() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * + * + *
+     * Place accepts cash only as payment. Places with this attribute may still
+     * accept other payment methods.
+     * 
+ * + * optional bool accepts_cash_only = 3; + * + * @return The acceptsCashOnly. + */ + @java.lang.Override + public boolean getAcceptsCashOnly() { + return acceptsCashOnly_; + } + + public static final int ACCEPTS_NFC_FIELD_NUMBER = 4; + private boolean acceptsNfc_ = false; + /** + * + * + *
+     * Place accepts NFC payments.
+     * 
+ * + * optional bool accepts_nfc = 4; + * + * @return Whether the acceptsNfc field is set. + */ + @java.lang.Override + public boolean hasAcceptsNfc() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + * + * + *
+     * Place accepts NFC payments.
+     * 
+ * + * optional bool accepts_nfc = 4; + * + * @return The acceptsNfc. + */ + @java.lang.Override + public boolean getAcceptsNfc() { + return acceptsNfc_; + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; @@ -12356,8 +9933,17 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (overview_ != null) { - output.writeMessage(1, getOverview()); + if (((bitField0_ & 0x00000001) != 0)) { + output.writeBool(1, acceptsCreditCards_); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeBool(2, acceptsDebitCards_); + } + if (((bitField0_ & 0x00000004) != 0)) { + output.writeBool(3, acceptsCashOnly_); + } + if (((bitField0_ & 0x00000008) != 0)) { + output.writeBool(4, acceptsNfc_); } getUnknownFields().writeTo(output); } @@ -12368,8 +9954,17 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (overview_ != null) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getOverview()); + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(1, acceptsCreditCards_); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(2, acceptsDebitCards_); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(3, acceptsCashOnly_); + } + if (((bitField0_ & 0x00000008) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, acceptsNfc_); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; @@ -12381,15 +9976,27 @@ public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } - if (!(obj instanceof com.google.maps.places.v1.Place.EditorialSummary)) { + if (!(obj instanceof com.google.maps.places.v1.Place.PaymentOptions)) { return super.equals(obj); } - com.google.maps.places.v1.Place.EditorialSummary other = - (com.google.maps.places.v1.Place.EditorialSummary) obj; + com.google.maps.places.v1.Place.PaymentOptions other = + (com.google.maps.places.v1.Place.PaymentOptions) obj; - if (hasOverview() != other.hasOverview()) return false; - if (hasOverview()) { - if (!getOverview().equals(other.getOverview())) return false; + if (hasAcceptsCreditCards() != other.hasAcceptsCreditCards()) return false; + if (hasAcceptsCreditCards()) { + if (getAcceptsCreditCards() != other.getAcceptsCreditCards()) return false; + } + if (hasAcceptsDebitCards() != other.hasAcceptsDebitCards()) return false; + if (hasAcceptsDebitCards()) { + if (getAcceptsDebitCards() != other.getAcceptsDebitCards()) return false; + } + if (hasAcceptsCashOnly() != other.hasAcceptsCashOnly()) return false; + if (hasAcceptsCashOnly()) { + if (getAcceptsCashOnly() != other.getAcceptsCashOnly()) return false; + } + if (hasAcceptsNfc() != other.hasAcceptsNfc()) return false; + if (hasAcceptsNfc()) { + if (getAcceptsNfc() != other.getAcceptsNfc()) return false; } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; @@ -12402,80 +10009,92 @@ public int hashCode() { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasOverview()) { - hash = (37 * hash) + OVERVIEW_FIELD_NUMBER; - hash = (53 * hash) + getOverview().hashCode(); + if (hasAcceptsCreditCards()) { + hash = (37 * hash) + ACCEPTS_CREDIT_CARDS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getAcceptsCreditCards()); + } + if (hasAcceptsDebitCards()) { + hash = (37 * hash) + ACCEPTS_DEBIT_CARDS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getAcceptsDebitCards()); + } + if (hasAcceptsCashOnly()) { + hash = (37 * hash) + ACCEPTS_CASH_ONLY_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getAcceptsCashOnly()); + } + if (hasAcceptsNfc()) { + hash = (37 * hash) + ACCEPTS_NFC_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getAcceptsNfc()); } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; } - public static com.google.maps.places.v1.Place.EditorialSummary parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + public static com.google.maps.places.v1.Place.PaymentOptions parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.maps.places.v1.Place.EditorialSummary parseFrom( + public static com.google.maps.places.v1.Place.PaymentOptions parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.maps.places.v1.Place.EditorialSummary parseFrom( + public static com.google.maps.places.v1.Place.PaymentOptions parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.maps.places.v1.Place.EditorialSummary parseFrom( + public static com.google.maps.places.v1.Place.PaymentOptions parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.maps.places.v1.Place.EditorialSummary parseFrom(byte[] data) + public static com.google.maps.places.v1.Place.PaymentOptions parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.maps.places.v1.Place.EditorialSummary parseFrom( + public static com.google.maps.places.v1.Place.PaymentOptions parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.maps.places.v1.Place.EditorialSummary parseFrom( + public static com.google.maps.places.v1.Place.PaymentOptions parseFrom( java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - public static com.google.maps.places.v1.Place.EditorialSummary parseFrom( + public static com.google.maps.places.v1.Place.PaymentOptions parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } - public static com.google.maps.places.v1.Place.EditorialSummary parseDelimitedFrom( + public static com.google.maps.places.v1.Place.PaymentOptions parseDelimitedFrom( java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); } - public static com.google.maps.places.v1.Place.EditorialSummary parseDelimitedFrom( + public static com.google.maps.places.v1.Place.PaymentOptions parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( PARSER, input, extensionRegistry); } - public static com.google.maps.places.v1.Place.EditorialSummary parseFrom( + public static com.google.maps.places.v1.Place.PaymentOptions parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - public static com.google.maps.places.v1.Place.EditorialSummary parseFrom( + public static com.google.maps.places.v1.Place.PaymentOptions parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -12492,7 +10111,7 @@ public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(com.google.maps.places.v1.Place.EditorialSummary prototype) { + public static Builder newBuilder(com.google.maps.places.v1.Place.PaymentOptions prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @@ -12511,32 +10130,32 @@ protected Builder newBuilderForType( * * *
-     * Contains a summary of the place.
+     * Payment options the place accepts.
      * 
* - * Protobuf type {@code google.maps.places.v1.Place.EditorialSummary} + * Protobuf type {@code google.maps.places.v1.Place.PaymentOptions} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements - // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place.EditorialSummary) - com.google.maps.places.v1.Place.EditorialSummaryOrBuilder { + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place.PaymentOptions) + com.google.maps.places.v1.Place.PaymentOptionsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_EditorialSummary_descriptor; + .internal_static_google_maps_places_v1_Place_PaymentOptions_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_EditorialSummary_fieldAccessorTable + .internal_static_google_maps_places_v1_Place_PaymentOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Place.EditorialSummary.class, - com.google.maps.places.v1.Place.EditorialSummary.Builder.class); + com.google.maps.places.v1.Place.PaymentOptions.class, + com.google.maps.places.v1.Place.PaymentOptions.Builder.class); } - // Construct using com.google.maps.places.v1.Place.EditorialSummary.newBuilder() + // Construct using com.google.maps.places.v1.Place.PaymentOptions.newBuilder() private Builder() {} private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { @@ -12547,28 +10166,27 @@ private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { public Builder clear() { super.clear(); bitField0_ = 0; - overview_ = null; - if (overviewBuilder_ != null) { - overviewBuilder_.dispose(); - overviewBuilder_ = null; - } + acceptsCreditCards_ = false; + acceptsDebitCards_ = false; + acceptsCashOnly_ = false; + acceptsNfc_ = false; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_EditorialSummary_descriptor; + .internal_static_google_maps_places_v1_Place_PaymentOptions_descriptor; } @java.lang.Override - public com.google.maps.places.v1.Place.EditorialSummary getDefaultInstanceForType() { - return com.google.maps.places.v1.Place.EditorialSummary.getDefaultInstance(); + public com.google.maps.places.v1.Place.PaymentOptions getDefaultInstanceForType() { + return com.google.maps.places.v1.Place.PaymentOptions.getDefaultInstance(); } @java.lang.Override - public com.google.maps.places.v1.Place.EditorialSummary build() { - com.google.maps.places.v1.Place.EditorialSummary result = buildPartial(); + public com.google.maps.places.v1.Place.PaymentOptions build() { + com.google.maps.places.v1.Place.PaymentOptions result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -12576,9 +10194,9 @@ public com.google.maps.places.v1.Place.EditorialSummary build() { } @java.lang.Override - public com.google.maps.places.v1.Place.EditorialSummary buildPartial() { - com.google.maps.places.v1.Place.EditorialSummary result = - new com.google.maps.places.v1.Place.EditorialSummary(this); + public com.google.maps.places.v1.Place.PaymentOptions buildPartial() { + com.google.maps.places.v1.Place.PaymentOptions result = + new com.google.maps.places.v1.Place.PaymentOptions(this); if (bitField0_ != 0) { buildPartial0(result); } @@ -12586,11 +10204,26 @@ public com.google.maps.places.v1.Place.EditorialSummary buildPartial() { return result; } - private void buildPartial0(com.google.maps.places.v1.Place.EditorialSummary result) { + private void buildPartial0(com.google.maps.places.v1.Place.PaymentOptions result) { int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) != 0)) { - result.overview_ = overviewBuilder_ == null ? overview_ : overviewBuilder_.build(); + result.acceptsCreditCards_ = acceptsCreditCards_; + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.acceptsDebitCards_ = acceptsDebitCards_; + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.acceptsCashOnly_ = acceptsCashOnly_; + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.acceptsNfc_ = acceptsNfc_; + to_bitField0_ |= 0x00000008; } + result.bitField0_ |= to_bitField0_; } @java.lang.Override @@ -12630,19 +10263,28 @@ public Builder addRepeatedField( @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.maps.places.v1.Place.EditorialSummary) { - return mergeFrom((com.google.maps.places.v1.Place.EditorialSummary) other); + if (other instanceof com.google.maps.places.v1.Place.PaymentOptions) { + return mergeFrom((com.google.maps.places.v1.Place.PaymentOptions) other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(com.google.maps.places.v1.Place.EditorialSummary other) { - if (other == com.google.maps.places.v1.Place.EditorialSummary.getDefaultInstance()) + public Builder mergeFrom(com.google.maps.places.v1.Place.PaymentOptions other) { + if (other == com.google.maps.places.v1.Place.PaymentOptions.getDefaultInstance()) return this; - if (other.hasOverview()) { - mergeOverview(other.getOverview()); + if (other.hasAcceptsCreditCards()) { + setAcceptsCreditCards(other.getAcceptsCreditCards()); + } + if (other.hasAcceptsDebitCards()) { + setAcceptsDebitCards(other.getAcceptsDebitCards()); + } + if (other.hasAcceptsCashOnly()) { + setAcceptsCashOnly(other.getAcceptsCashOnly()); + } + if (other.hasAcceptsNfc()) { + setAcceptsNfc(other.getAcceptsNfc()); } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); @@ -12670,12 +10312,30 @@ public Builder mergeFrom( case 0: done = true; break; - case 10: + case 8: { - input.readMessage(getOverviewFieldBuilder().getBuilder(), extensionRegistry); + acceptsCreditCards_ = input.readBool(); bitField0_ |= 0x00000001; break; - } // case 10 + } // case 8 + case 16: + { + acceptsDebitCards_ = input.readBool(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 24: + { + acceptsCashOnly_ = input.readBool(); + bitField0_ |= 0x00000004; + break; + } // case 24 + case 32: + { + acceptsNfc_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -12695,68 +10355,52 @@ public Builder mergeFrom( private int bitField0_; - private com.google.type.LocalizedText overview_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.LocalizedText, - com.google.type.LocalizedText.Builder, - com.google.type.LocalizedTextOrBuilder> - overviewBuilder_; + private boolean acceptsCreditCards_; /** * * *
-       * A summary is comprised of a textual overview, and also includes the
-       * language code for these if applicable. Summary text must be presented
-       * as-is and can not be modified or altered.
+       * Place accepts credit cards as payment.
        * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_credit_cards = 1; * - * @return Whether the overview field is set. + * @return Whether the acceptsCreditCards field is set. */ - public boolean hasOverview() { + @java.lang.Override + public boolean hasAcceptsCreditCards() { return ((bitField0_ & 0x00000001) != 0); } /** * * *
-       * A summary is comprised of a textual overview, and also includes the
-       * language code for these if applicable. Summary text must be presented
-       * as-is and can not be modified or altered.
+       * Place accepts credit cards as payment.
        * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_credit_cards = 1; * - * @return The overview. + * @return The acceptsCreditCards. */ - public com.google.type.LocalizedText getOverview() { - if (overviewBuilder_ == null) { - return overview_ == null ? com.google.type.LocalizedText.getDefaultInstance() : overview_; - } else { - return overviewBuilder_.getMessage(); - } + @java.lang.Override + public boolean getAcceptsCreditCards() { + return acceptsCreditCards_; } /** * * *
-       * A summary is comprised of a textual overview, and also includes the
-       * language code for these if applicable. Summary text must be presented
-       * as-is and can not be modified or altered.
+       * Place accepts credit cards as payment.
        * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_credit_cards = 1; + * + * @param value The acceptsCreditCards to set. + * @return This builder for chaining. */ - public Builder setOverview(com.google.type.LocalizedText value) { - if (overviewBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - overview_ = value; - } else { - overviewBuilder_.setMessage(value); - } + public Builder setAcceptsCreditCards(boolean value) { + + acceptsCreditCards_ = value; bitField0_ |= 0x00000001; onChanged(); return this; @@ -12765,47 +10409,67 @@ public Builder setOverview(com.google.type.LocalizedText value) { * * *
-       * A summary is comprised of a textual overview, and also includes the
-       * language code for these if applicable. Summary text must be presented
-       * as-is and can not be modified or altered.
+       * Place accepts credit cards as payment.
        * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_credit_cards = 1; + * + * @return This builder for chaining. */ - public Builder setOverview(com.google.type.LocalizedText.Builder builderForValue) { - if (overviewBuilder_ == null) { - overview_ = builderForValue.build(); - } else { - overviewBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000001; + public Builder clearAcceptsCreditCards() { + bitField0_ = (bitField0_ & ~0x00000001); + acceptsCreditCards_ = false; onChanged(); return this; } + + private boolean acceptsDebitCards_; /** * * *
-       * A summary is comprised of a textual overview, and also includes the
-       * language code for these if applicable. Summary text must be presented
-       * as-is and can not be modified or altered.
+       * Place accepts debit cards as payment.
        * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_debit_cards = 2; + * + * @return Whether the acceptsDebitCards field is set. */ - public Builder mergeOverview(com.google.type.LocalizedText value) { - if (overviewBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0) - && overview_ != null - && overview_ != com.google.type.LocalizedText.getDefaultInstance()) { - getOverviewBuilder().mergeFrom(value); - } else { - overview_ = value; - } - } else { - overviewBuilder_.mergeFrom(value); - } - bitField0_ |= 0x00000001; + @java.lang.Override + public boolean hasAcceptsDebitCards() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * + * + *
+       * Place accepts debit cards as payment.
+       * 
+ * + * optional bool accepts_debit_cards = 2; + * + * @return The acceptsDebitCards. + */ + @java.lang.Override + public boolean getAcceptsDebitCards() { + return acceptsDebitCards_; + } + /** + * + * + *
+       * Place accepts debit cards as payment.
+       * 
+ * + * optional bool accepts_debit_cards = 2; + * + * @param value The acceptsDebitCards to set. + * @return This builder for chaining. + */ + public Builder setAcceptsDebitCards(boolean value) { + + acceptsDebitCards_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -12813,83 +10477,158 @@ public Builder mergeOverview(com.google.type.LocalizedText value) { * * *
-       * A summary is comprised of a textual overview, and also includes the
-       * language code for these if applicable. Summary text must be presented
-       * as-is and can not be modified or altered.
+       * Place accepts debit cards as payment.
        * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_debit_cards = 2; + * + * @return This builder for chaining. */ - public Builder clearOverview() { - bitField0_ = (bitField0_ & ~0x00000001); - overview_ = null; - if (overviewBuilder_ != null) { - overviewBuilder_.dispose(); - overviewBuilder_ = null; - } + public Builder clearAcceptsDebitCards() { + bitField0_ = (bitField0_ & ~0x00000002); + acceptsDebitCards_ = false; onChanged(); return this; } + + private boolean acceptsCashOnly_; /** * * *
-       * A summary is comprised of a textual overview, and also includes the
-       * language code for these if applicable. Summary text must be presented
-       * as-is and can not be modified or altered.
+       * Place accepts cash only as payment. Places with this attribute may still
+       * accept other payment methods.
        * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_cash_only = 3; + * + * @return Whether the acceptsCashOnly field is set. */ - public com.google.type.LocalizedText.Builder getOverviewBuilder() { - bitField0_ |= 0x00000001; + @java.lang.Override + public boolean hasAcceptsCashOnly() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * + * + *
+       * Place accepts cash only as payment. Places with this attribute may still
+       * accept other payment methods.
+       * 
+ * + * optional bool accepts_cash_only = 3; + * + * @return The acceptsCashOnly. + */ + @java.lang.Override + public boolean getAcceptsCashOnly() { + return acceptsCashOnly_; + } + /** + * + * + *
+       * Place accepts cash only as payment. Places with this attribute may still
+       * accept other payment methods.
+       * 
+ * + * optional bool accepts_cash_only = 3; + * + * @param value The acceptsCashOnly to set. + * @return This builder for chaining. + */ + public Builder setAcceptsCashOnly(boolean value) { + + acceptsCashOnly_ = value; + bitField0_ |= 0x00000004; onChanged(); - return getOverviewFieldBuilder().getBuilder(); + return this; } /** * * *
-       * A summary is comprised of a textual overview, and also includes the
-       * language code for these if applicable. Summary text must be presented
-       * as-is and can not be modified or altered.
+       * Place accepts cash only as payment. Places with this attribute may still
+       * accept other payment methods.
        * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_cash_only = 3; + * + * @return This builder for chaining. */ - public com.google.type.LocalizedTextOrBuilder getOverviewOrBuilder() { - if (overviewBuilder_ != null) { - return overviewBuilder_.getMessageOrBuilder(); - } else { - return overview_ == null ? com.google.type.LocalizedText.getDefaultInstance() : overview_; - } + public Builder clearAcceptsCashOnly() { + bitField0_ = (bitField0_ & ~0x00000004); + acceptsCashOnly_ = false; + onChanged(); + return this; + } + + private boolean acceptsNfc_; + /** + * + * + *
+       * Place accepts NFC payments.
+       * 
+ * + * optional bool accepts_nfc = 4; + * + * @return Whether the acceptsNfc field is set. + */ + @java.lang.Override + public boolean hasAcceptsNfc() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + * + * + *
+       * Place accepts NFC payments.
+       * 
+ * + * optional bool accepts_nfc = 4; + * + * @return The acceptsNfc. + */ + @java.lang.Override + public boolean getAcceptsNfc() { + return acceptsNfc_; } /** * * *
-       * A summary is comprised of a textual overview, and also includes the
-       * language code for these if applicable. Summary text must be presented
-       * as-is and can not be modified or altered.
+       * Place accepts NFC payments.
        * 
* - * .google.type.LocalizedText overview = 1; + * optional bool accepts_nfc = 4; + * + * @param value The acceptsNfc to set. + * @return This builder for chaining. + */ + public Builder setAcceptsNfc(boolean value) { + + acceptsNfc_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+       * Place accepts NFC payments.
+       * 
+ * + * optional bool accepts_nfc = 4; + * + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.LocalizedText, - com.google.type.LocalizedText.Builder, - com.google.type.LocalizedTextOrBuilder> - getOverviewFieldBuilder() { - if (overviewBuilder_ == null) { - overviewBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.type.LocalizedText, - com.google.type.LocalizedText.Builder, - com.google.type.LocalizedTextOrBuilder>( - getOverview(), getParentForChildren(), isClean()); - overview_ = null; - } - return overviewBuilder_; + public Builder clearAcceptsNfc() { + bitField0_ = (bitField0_ & ~0x00000008); + acceptsNfc_ = false; + onChanged(); + return this; } @java.lang.Override @@ -12904,24 +10643,24 @@ public final Builder mergeUnknownFields( return super.mergeUnknownFields(unknownFields); } - // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Place.EditorialSummary) + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Place.PaymentOptions) } - // @@protoc_insertion_point(class_scope:google.maps.places.v1.Place.EditorialSummary) - private static final com.google.maps.places.v1.Place.EditorialSummary DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:google.maps.places.v1.Place.PaymentOptions) + private static final com.google.maps.places.v1.Place.PaymentOptions DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new com.google.maps.places.v1.Place.EditorialSummary(); + DEFAULT_INSTANCE = new com.google.maps.places.v1.Place.PaymentOptions(); } - public static com.google.maps.places.v1.Place.EditorialSummary getDefaultInstance() { + public static com.google.maps.places.v1.Place.PaymentOptions getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { @java.lang.Override - public EditorialSummary parsePartialFrom( + public PaymentOptions parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -12941,3356 +10680,7799 @@ public EditorialSummary parsePartialFrom( } }; - public static com.google.protobuf.Parser parser() { + public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser getParserForType() { + public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override - public com.google.maps.places.v1.Place.EditorialSummary getDefaultInstanceForType() { + public com.google.maps.places.v1.Place.PaymentOptions getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - private int bitField0_; - public static final int ID_FIELD_NUMBER = 2; + public interface ParkingOptionsOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Place.ParkingOptions) + com.google.protobuf.MessageOrBuilder { - @SuppressWarnings("serial") - private volatile java.lang.Object id_ = ""; - /** - * - * - *
-   * Required. The unique identifier of a place.
-   * 
- * - * string id = 2 [(.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; - } - } - /** - * - * - *
-   * Required. The unique identifier of a place.
-   * 
- * - * string id = 2 [(.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; - } - } + /** + * + * + *
+     * Place offers free parking lots.
+     * 
+ * + * optional bool free_parking_lot = 1; + * + * @return Whether the freeParkingLot field is set. + */ + boolean hasFreeParkingLot(); + /** + * + * + *
+     * Place offers free parking lots.
+     * 
+ * + * optional bool free_parking_lot = 1; + * + * @return The freeParkingLot. + */ + boolean getFreeParkingLot(); - public static final int DISPLAY_NAME_FIELD_NUMBER = 31; - private com.google.type.LocalizedText displayName_; - /** - * - * - *
-   * The localized name of the place, suitable as a short human-readable
-   * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
-   * 
- * - * .google.type.LocalizedText display_name = 31; - * - * @return Whether the displayName field is set. - */ - @java.lang.Override - public boolean hasDisplayName() { - return displayName_ != null; - } - /** - * - * - *
-   * The localized name of the place, suitable as a short human-readable
-   * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
-   * 
- * - * .google.type.LocalizedText display_name = 31; - * - * @return The displayName. - */ - @java.lang.Override - public com.google.type.LocalizedText getDisplayName() { - return displayName_ == null ? com.google.type.LocalizedText.getDefaultInstance() : displayName_; - } - /** - * - * - *
-   * The localized name of the place, suitable as a short human-readable
-   * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
-   * 
- * - * .google.type.LocalizedText display_name = 31; - */ - @java.lang.Override - public com.google.type.LocalizedTextOrBuilder getDisplayNameOrBuilder() { - return displayName_ == null ? com.google.type.LocalizedText.getDefaultInstance() : displayName_; - } + /** + * + * + *
+     * Place offers paid parking lots.
+     * 
+ * + * optional bool paid_parking_lot = 2; + * + * @return Whether the paidParkingLot field is set. + */ + boolean hasPaidParkingLot(); + /** + * + * + *
+     * Place offers paid parking lots.
+     * 
+ * + * optional bool paid_parking_lot = 2; + * + * @return The paidParkingLot. + */ + boolean getPaidParkingLot(); - public static final int TYPES_FIELD_NUMBER = 5; + /** + * + * + *
+     * Place offers free street parking.
+     * 
+ * + * optional bool free_street_parking = 3; + * + * @return Whether the freeStreetParking field is set. + */ + boolean hasFreeStreetParking(); + /** + * + * + *
+     * Place offers free street parking.
+     * 
+ * + * optional bool free_street_parking = 3; + * + * @return The freeStreetParking. + */ + boolean getFreeStreetParking(); - @SuppressWarnings("serial") - private com.google.protobuf.LazyStringList types_; - /** - * - * - *
-   * A set of type tags for this result. For example, "political" and
-   * "locality".
-   * 
- * - * repeated string types = 5; - * - * @return A list containing the types. - */ - public com.google.protobuf.ProtocolStringList getTypesList() { - return types_; - } - /** - * - * - *
-   * A set of type tags for this result. For example, "political" and
-   * "locality".
-   * 
- * - * repeated string types = 5; - * - * @return The count of types. - */ - public int getTypesCount() { - return types_.size(); - } - /** - * - * - *
-   * A set of type tags for this result. For example, "political" and
-   * "locality".
-   * 
- * - * repeated string types = 5; - * - * @param index The index of the element to return. - * @return The types at the given index. - */ - public java.lang.String getTypes(int index) { - return types_.get(index); + /** + * + * + *
+     * Place offers paid street parking.
+     * 
+ * + * optional bool paid_street_parking = 4; + * + * @return Whether the paidStreetParking field is set. + */ + boolean hasPaidStreetParking(); + /** + * + * + *
+     * Place offers paid street parking.
+     * 
+ * + * optional bool paid_street_parking = 4; + * + * @return The paidStreetParking. + */ + boolean getPaidStreetParking(); + + /** + * + * + *
+     * Place offers valet parking.
+     * 
+ * + * optional bool valet_parking = 5; + * + * @return Whether the valetParking field is set. + */ + boolean hasValetParking(); + /** + * + * + *
+     * Place offers valet parking.
+     * 
+ * + * optional bool valet_parking = 5; + * + * @return The valetParking. + */ + boolean getValetParking(); + + /** + * + * + *
+     * Place offers free garage parking.
+     * 
+ * + * optional bool free_garage_parking = 6; + * + * @return Whether the freeGarageParking field is set. + */ + boolean hasFreeGarageParking(); + /** + * + * + *
+     * Place offers free garage parking.
+     * 
+ * + * optional bool free_garage_parking = 6; + * + * @return The freeGarageParking. + */ + boolean getFreeGarageParking(); + + /** + * + * + *
+     * Place offers paid garage parking.
+     * 
+ * + * optional bool paid_garage_parking = 7; + * + * @return Whether the paidGarageParking field is set. + */ + boolean hasPaidGarageParking(); + /** + * + * + *
+     * Place offers paid garage parking.
+     * 
+ * + * optional bool paid_garage_parking = 7; + * + * @return The paidGarageParking. + */ + boolean getPaidGarageParking(); } /** * * *
-   * A set of type tags for this result. For example, "political" and
-   * "locality".
+   * Information about parking options for the place. A parking lot could
+   * support more than one option at the same time.
    * 
* - * repeated string types = 5; - * - * @param index The index of the value to return. - * @return The bytes of the types at the given index. + * Protobuf type {@code google.maps.places.v1.Place.ParkingOptions} */ - public com.google.protobuf.ByteString getTypesBytes(int index) { - return types_.getByteString(index); - } + public static final class ParkingOptions extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.Place.ParkingOptions) + ParkingOptionsOrBuilder { + private static final long serialVersionUID = 0L; + // Use ParkingOptions.newBuilder() to construct. + private ParkingOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } - public static final int NATIONAL_PHONE_NUMBER_FIELD_NUMBER = 7; + private ParkingOptions() {} - @SuppressWarnings("serial") - private volatile java.lang.Object nationalPhoneNumber_ = ""; - /** - * - * - *
-   * A human-readable phone number for the place, in national format.
-   * 
- * - * string national_phone_number = 7; - * - * @return The nationalPhoneNumber. - */ - @java.lang.Override - public java.lang.String getNationalPhoneNumber() { - java.lang.Object ref = nationalPhoneNumber_; - 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(); - nationalPhoneNumber_ = s; - return s; + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new ParkingOptions(); } - } - /** - * - * - *
-   * A human-readable phone number for the place, in national format.
-   * 
- * - * string national_phone_number = 7; - * - * @return The bytes for nationalPhoneNumber. - */ - @java.lang.Override - public com.google.protobuf.ByteString getNationalPhoneNumberBytes() { - java.lang.Object ref = nationalPhoneNumber_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - nationalPhoneNumber_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_ParkingOptions_descriptor; } - } - public static final int INTERNATIONAL_PHONE_NUMBER_FIELD_NUMBER = 8; + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_ParkingOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Place.ParkingOptions.class, + com.google.maps.places.v1.Place.ParkingOptions.Builder.class); + } - @SuppressWarnings("serial") - private volatile java.lang.Object internationalPhoneNumber_ = ""; - /** - * - * - *
-   * A human-readable phone number for the place, in international format.
-   * 
- * - * string international_phone_number = 8; - * - * @return The internationalPhoneNumber. - */ - @java.lang.Override - public java.lang.String getInternationalPhoneNumber() { - java.lang.Object ref = internationalPhoneNumber_; - 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(); - internationalPhoneNumber_ = s; - return s; + private int bitField0_; + public static final int FREE_PARKING_LOT_FIELD_NUMBER = 1; + private boolean freeParkingLot_ = false; + /** + * + * + *
+     * Place offers free parking lots.
+     * 
+ * + * optional bool free_parking_lot = 1; + * + * @return Whether the freeParkingLot field is set. + */ + @java.lang.Override + public boolean hasFreeParkingLot() { + return ((bitField0_ & 0x00000001) != 0); } - } - /** - * - * - *
-   * A human-readable phone number for the place, in international format.
-   * 
- * - * string international_phone_number = 8; - * - * @return The bytes for internationalPhoneNumber. - */ - @java.lang.Override - public com.google.protobuf.ByteString getInternationalPhoneNumberBytes() { - java.lang.Object ref = internationalPhoneNumber_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - internationalPhoneNumber_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
+     * Place offers free parking lots.
+     * 
+ * + * optional bool free_parking_lot = 1; + * + * @return The freeParkingLot. + */ + @java.lang.Override + public boolean getFreeParkingLot() { + return freeParkingLot_; } - } - - public static final int FORMATTED_ADDRESS_FIELD_NUMBER = 9; - @SuppressWarnings("serial") - private volatile java.lang.Object formattedAddress_ = ""; - /** - * - * - *
-   * A full, human-readable address for this place.
-   * 
- * - * string formatted_address = 9; - * - * @return The formattedAddress. - */ - @java.lang.Override - public java.lang.String getFormattedAddress() { - java.lang.Object ref = formattedAddress_; - 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(); - formattedAddress_ = s; - return s; + public static final int PAID_PARKING_LOT_FIELD_NUMBER = 2; + private boolean paidParkingLot_ = false; + /** + * + * + *
+     * Place offers paid parking lots.
+     * 
+ * + * optional bool paid_parking_lot = 2; + * + * @return Whether the paidParkingLot field is set. + */ + @java.lang.Override + public boolean hasPaidParkingLot() { + return ((bitField0_ & 0x00000002) != 0); } - } - /** - * - * - *
-   * A full, human-readable address for this place.
-   * 
- * - * string formatted_address = 9; - * - * @return The bytes for formattedAddress. - */ - @java.lang.Override - public com.google.protobuf.ByteString getFormattedAddressBytes() { - java.lang.Object ref = formattedAddress_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - formattedAddress_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * + * + *
+     * Place offers paid parking lots.
+     * 
+ * + * optional bool paid_parking_lot = 2; + * + * @return The paidParkingLot. + */ + @java.lang.Override + public boolean getPaidParkingLot() { + return paidParkingLot_; } - } - public static final int ADDRESS_COMPONENTS_FIELD_NUMBER = 10; + public static final int FREE_STREET_PARKING_FIELD_NUMBER = 3; + private boolean freeStreetParking_ = false; + /** + * + * + *
+     * Place offers free street parking.
+     * 
+ * + * optional bool free_street_parking = 3; + * + * @return Whether the freeStreetParking field is set. + */ + @java.lang.Override + public boolean hasFreeStreetParking() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * + * + *
+     * Place offers free street parking.
+     * 
+ * + * optional bool free_street_parking = 3; + * + * @return The freeStreetParking. + */ + @java.lang.Override + public boolean getFreeStreetParking() { + return freeStreetParking_; + } - @SuppressWarnings("serial") - private java.util.List addressComponents_; - /** - * - * - *
-   * Repeated components for each locality level.
-   * 
- * - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; - */ - @java.lang.Override - public java.util.List - getAddressComponentsList() { - return addressComponents_; - } - /** - * - * - *
-   * Repeated components for each locality level.
-   * 
- * - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; - */ - @java.lang.Override - public java.util.List - getAddressComponentsOrBuilderList() { - return addressComponents_; - } - /** - * - * - *
-   * Repeated components for each locality level.
-   * 
- * - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; - */ - @java.lang.Override - public int getAddressComponentsCount() { - return addressComponents_.size(); - } - /** - * - * - *
-   * Repeated components for each locality level.
-   * 
- * - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; - */ - @java.lang.Override - public com.google.maps.places.v1.Place.AddressComponent getAddressComponents(int index) { - return addressComponents_.get(index); - } - /** - * - * - *
-   * Repeated components for each locality level.
-   * 
- * - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; - */ - @java.lang.Override - public com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOrBuilder( - int index) { - return addressComponents_.get(index); - } + public static final int PAID_STREET_PARKING_FIELD_NUMBER = 4; + private boolean paidStreetParking_ = false; + /** + * + * + *
+     * Place offers paid street parking.
+     * 
+ * + * optional bool paid_street_parking = 4; + * + * @return Whether the paidStreetParking field is set. + */ + @java.lang.Override + public boolean hasPaidStreetParking() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + * + * + *
+     * Place offers paid street parking.
+     * 
+ * + * optional bool paid_street_parking = 4; + * + * @return The paidStreetParking. + */ + @java.lang.Override + public boolean getPaidStreetParking() { + return paidStreetParking_; + } - public static final int PLUS_CODE_FIELD_NUMBER = 11; - private com.google.maps.places.v1.Place.PlusCode plusCode_; - /** - * - * - *
-   * Plus code of the place location lat/long.
-   * 
- * - * .google.maps.places.v1.Place.PlusCode plus_code = 11; - * - * @return Whether the plusCode field is set. - */ - @java.lang.Override - public boolean hasPlusCode() { - return plusCode_ != null; - } - /** - * - * - *
-   * Plus code of the place location lat/long.
-   * 
- * - * .google.maps.places.v1.Place.PlusCode plus_code = 11; - * - * @return The plusCode. - */ - @java.lang.Override - public com.google.maps.places.v1.Place.PlusCode getPlusCode() { - return plusCode_ == null - ? com.google.maps.places.v1.Place.PlusCode.getDefaultInstance() - : plusCode_; - } - /** - * - * - *
-   * Plus code of the place location lat/long.
-   * 
- * - * .google.maps.places.v1.Place.PlusCode plus_code = 11; - */ - @java.lang.Override - public com.google.maps.places.v1.Place.PlusCodeOrBuilder getPlusCodeOrBuilder() { - return plusCode_ == null - ? com.google.maps.places.v1.Place.PlusCode.getDefaultInstance() - : plusCode_; - } + public static final int VALET_PARKING_FIELD_NUMBER = 5; + private boolean valetParking_ = false; + /** + * + * + *
+     * Place offers valet parking.
+     * 
+ * + * optional bool valet_parking = 5; + * + * @return Whether the valetParking field is set. + */ + @java.lang.Override + public boolean hasValetParking() { + return ((bitField0_ & 0x00000010) != 0); + } + /** + * + * + *
+     * Place offers valet parking.
+     * 
+ * + * optional bool valet_parking = 5; + * + * @return The valetParking. + */ + @java.lang.Override + public boolean getValetParking() { + return valetParking_; + } - public static final int LOCATION_FIELD_NUMBER = 12; - private com.google.type.LatLng location_; - /** - * - * - *
-   * The position of this place.
-   * 
- * - * .google.type.LatLng location = 12; - * - * @return Whether the location field is set. - */ - @java.lang.Override - public boolean hasLocation() { - return location_ != null; - } - /** - * - * - *
-   * The position of this place.
-   * 
- * - * .google.type.LatLng location = 12; - * - * @return The location. - */ - @java.lang.Override - public com.google.type.LatLng getLocation() { - return location_ == null ? com.google.type.LatLng.getDefaultInstance() : location_; - } - /** - * - * - *
-   * The position of this place.
-   * 
- * - * .google.type.LatLng location = 12; - */ - @java.lang.Override - public com.google.type.LatLngOrBuilder getLocationOrBuilder() { - return location_ == null ? com.google.type.LatLng.getDefaultInstance() : location_; - } + public static final int FREE_GARAGE_PARKING_FIELD_NUMBER = 6; + private boolean freeGarageParking_ = false; + /** + * + * + *
+     * Place offers free garage parking.
+     * 
+ * + * optional bool free_garage_parking = 6; + * + * @return Whether the freeGarageParking field is set. + */ + @java.lang.Override + public boolean hasFreeGarageParking() { + return ((bitField0_ & 0x00000020) != 0); + } + /** + * + * + *
+     * Place offers free garage parking.
+     * 
+ * + * optional bool free_garage_parking = 6; + * + * @return The freeGarageParking. + */ + @java.lang.Override + public boolean getFreeGarageParking() { + return freeGarageParking_; + } - public static final int VIEWPORT_FIELD_NUMBER = 13; - private com.google.geo.type.Viewport viewport_; - /** - * - * - *
-   * A viewport suitable for displaying the place on an average-sized map.
-   * 
- * - * .google.geo.type.Viewport viewport = 13; - * - * @return Whether the viewport field is set. - */ - @java.lang.Override - public boolean hasViewport() { - return viewport_ != null; - } - /** - * - * - *
-   * A viewport suitable for displaying the place on an average-sized map.
-   * 
- * - * .google.geo.type.Viewport viewport = 13; - * - * @return The viewport. - */ - @java.lang.Override - public com.google.geo.type.Viewport getViewport() { - return viewport_ == null ? com.google.geo.type.Viewport.getDefaultInstance() : viewport_; - } - /** - * - * - *
-   * A viewport suitable for displaying the place on an average-sized map.
-   * 
- * - * .google.geo.type.Viewport viewport = 13; - */ - @java.lang.Override - public com.google.geo.type.ViewportOrBuilder getViewportOrBuilder() { - return viewport_ == null ? com.google.geo.type.Viewport.getDefaultInstance() : viewport_; - } + public static final int PAID_GARAGE_PARKING_FIELD_NUMBER = 7; + private boolean paidGarageParking_ = false; + /** + * + * + *
+     * Place offers paid garage parking.
+     * 
+ * + * optional bool paid_garage_parking = 7; + * + * @return Whether the paidGarageParking field is set. + */ + @java.lang.Override + public boolean hasPaidGarageParking() { + return ((bitField0_ & 0x00000040) != 0); + } + /** + * + * + *
+     * Place offers paid garage parking.
+     * 
+ * + * optional bool paid_garage_parking = 7; + * + * @return The paidGarageParking. + */ + @java.lang.Override + public boolean getPaidGarageParking() { + return paidGarageParking_; + } - public static final int RATING_FIELD_NUMBER = 14; - private double rating_ = 0D; - /** - * - * - *
-   * A rating between 1.0 and 5.0, based on user reviews of this place.
-   * 
- * - * double rating = 14; - * - * @return The rating. - */ - @java.lang.Override - public double getRating() { - return rating_; - } + private byte memoizedIsInitialized = -1; - public static final int GOOGLE_MAPS_URI_FIELD_NUMBER = 15; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - @SuppressWarnings("serial") - private volatile java.lang.Object googleMapsUri_ = ""; - /** - * - * - *
-   * A URL providing more information about this place.
-   * 
- * - * string google_maps_uri = 15; - * - * @return The googleMapsUri. - */ - @java.lang.Override - public java.lang.String getGoogleMapsUri() { - java.lang.Object ref = googleMapsUri_; - 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(); - googleMapsUri_ = s; - return s; + memoizedIsInitialized = 1; + return true; } - } - /** - * - * - *
-   * A URL providing more information about this place.
-   * 
- * - * string google_maps_uri = 15; - * - * @return The bytes for googleMapsUri. - */ - @java.lang.Override - public com.google.protobuf.ByteString getGoogleMapsUriBytes() { - java.lang.Object ref = googleMapsUri_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - googleMapsUri_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (((bitField0_ & 0x00000001) != 0)) { + output.writeBool(1, freeParkingLot_); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeBool(2, paidParkingLot_); + } + if (((bitField0_ & 0x00000004) != 0)) { + output.writeBool(3, freeStreetParking_); + } + if (((bitField0_ & 0x00000008) != 0)) { + output.writeBool(4, paidStreetParking_); + } + if (((bitField0_ & 0x00000010) != 0)) { + output.writeBool(5, valetParking_); + } + if (((bitField0_ & 0x00000020) != 0)) { + output.writeBool(6, freeGarageParking_); + } + if (((bitField0_ & 0x00000040) != 0)) { + output.writeBool(7, paidGarageParking_); + } + getUnknownFields().writeTo(output); } - } - public static final int WEBSITE_URI_FIELD_NUMBER = 16; + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - @SuppressWarnings("serial") - private volatile java.lang.Object websiteUri_ = ""; - /** - * - * - *
-   * The authoritative website for this place, e.g. a business' homepage.
-   * Note that for places that are part of a chain (e.g. an IKEA store), this
-   * will usually be the website for the individual store, not the overall
-   * chain.
-   * 
- * - * string website_uri = 16; - * - * @return The websiteUri. - */ - @java.lang.Override - public java.lang.String getWebsiteUri() { - java.lang.Object ref = websiteUri_; - 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(); - websiteUri_ = s; - return s; + size = 0; + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(1, freeParkingLot_); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(2, paidParkingLot_); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(3, freeStreetParking_); + } + if (((bitField0_ & 0x00000008) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, paidStreetParking_); + } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(5, valetParking_); + } + if (((bitField0_ & 0x00000020) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(6, freeGarageParking_); + } + if (((bitField0_ & 0x00000040) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(7, paidGarageParking_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - } - /** - * - * - *
-   * The authoritative website for this place, e.g. a business' homepage.
-   * Note that for places that are part of a chain (e.g. an IKEA store), this
-   * will usually be the website for the individual store, not the overall
-   * chain.
-   * 
- * - * string website_uri = 16; - * - * @return The bytes for websiteUri. - */ - @java.lang.Override - public com.google.protobuf.ByteString getWebsiteUriBytes() { - java.lang.Object ref = websiteUri_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - websiteUri_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.maps.places.v1.Place.ParkingOptions)) { + return super.equals(obj); + } + com.google.maps.places.v1.Place.ParkingOptions other = + (com.google.maps.places.v1.Place.ParkingOptions) obj; + + if (hasFreeParkingLot() != other.hasFreeParkingLot()) return false; + if (hasFreeParkingLot()) { + if (getFreeParkingLot() != other.getFreeParkingLot()) return false; + } + if (hasPaidParkingLot() != other.hasPaidParkingLot()) return false; + if (hasPaidParkingLot()) { + if (getPaidParkingLot() != other.getPaidParkingLot()) return false; + } + if (hasFreeStreetParking() != other.hasFreeStreetParking()) return false; + if (hasFreeStreetParking()) { + if (getFreeStreetParking() != other.getFreeStreetParking()) return false; + } + if (hasPaidStreetParking() != other.hasPaidStreetParking()) return false; + if (hasPaidStreetParking()) { + if (getPaidStreetParking() != other.getPaidStreetParking()) return false; + } + if (hasValetParking() != other.hasValetParking()) return false; + if (hasValetParking()) { + if (getValetParking() != other.getValetParking()) return false; + } + if (hasFreeGarageParking() != other.hasFreeGarageParking()) return false; + if (hasFreeGarageParking()) { + if (getFreeGarageParking() != other.getFreeGarageParking()) return false; + } + if (hasPaidGarageParking() != other.hasPaidGarageParking()) return false; + if (hasPaidGarageParking()) { + if (getPaidGarageParking() != other.getPaidGarageParking()) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; } - } - public static final int REVIEWS_FIELD_NUMBER = 20; + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasFreeParkingLot()) { + hash = (37 * hash) + FREE_PARKING_LOT_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getFreeParkingLot()); + } + if (hasPaidParkingLot()) { + hash = (37 * hash) + PAID_PARKING_LOT_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getPaidParkingLot()); + } + if (hasFreeStreetParking()) { + hash = (37 * hash) + FREE_STREET_PARKING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getFreeStreetParking()); + } + if (hasPaidStreetParking()) { + hash = (37 * hash) + PAID_STREET_PARKING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getPaidStreetParking()); + } + if (hasValetParking()) { + hash = (37 * hash) + VALET_PARKING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getValetParking()); + } + if (hasFreeGarageParking()) { + hash = (37 * hash) + FREE_GARAGE_PARKING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getFreeGarageParking()); + } + if (hasPaidGarageParking()) { + hash = (37 * hash) + PAID_GARAGE_PARKING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getPaidGarageParking()); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - @SuppressWarnings("serial") - private java.util.List reviews_; - /** - * - * - *
-   * List of reviews about this place.
-   * 
- * - * repeated .google.maps.places.v1.Place.Review reviews = 20; - */ - @java.lang.Override - public java.util.List getReviewsList() { - return reviews_; - } - /** - * - * - *
-   * List of reviews about this place.
-   * 
- * - * repeated .google.maps.places.v1.Place.Review reviews = 20; - */ - @java.lang.Override - public java.util.List - getReviewsOrBuilderList() { - return reviews_; - } - /** - * - * - *
-   * List of reviews about this place.
-   * 
- * - * repeated .google.maps.places.v1.Place.Review reviews = 20; - */ - @java.lang.Override - public int getReviewsCount() { - return reviews_.size(); - } - /** - * - * - *
-   * List of reviews about this place.
-   * 
- * - * repeated .google.maps.places.v1.Place.Review reviews = 20; - */ - @java.lang.Override - public com.google.maps.places.v1.Place.Review getReviews(int index) { - return reviews_.get(index); - } - /** - * - * - *
-   * List of reviews about this place.
-   * 
- * - * repeated .google.maps.places.v1.Place.Review reviews = 20; - */ - @java.lang.Override - public com.google.maps.places.v1.Place.ReviewOrBuilder getReviewsOrBuilder(int index) { - return reviews_.get(index); - } + public static com.google.maps.places.v1.Place.ParkingOptions parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - public static final int OPENING_HOURS_FIELD_NUMBER = 21; - private com.google.maps.places.v1.Place.OpeningHours openingHours_; - /** - * - * - *
-   * The regular hours of operation.
-   * 
- * - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; - * - * @return Whether the openingHours field is set. - */ - @java.lang.Override - public boolean hasOpeningHours() { - return openingHours_ != null; - } - /** - * - * - *
-   * The regular hours of operation.
-   * 
- * - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; - * - * @return The openingHours. - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours getOpeningHours() { - return openingHours_ == null - ? com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance() - : openingHours_; - } - /** - * - * - *
-   * The regular hours of operation.
-   * 
- * - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHoursOrBuilder getOpeningHoursOrBuilder() { - return openingHours_ == null - ? com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance() - : openingHours_; - } + public static com.google.maps.places.v1.Place.ParkingOptions parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - public static final int UTC_OFFSET_MINUTES_FIELD_NUMBER = 22; - private int utcOffsetMinutes_ = 0; - /** - * - * - *
-   * Number of minutes this place's timezone is currently offset from UTC.
-   * This is expressed in minutes to support timezones that are offset by
-   * fractions of an hour, e.g. X hours and 15 minutes.
-   * 
- * - * int32 utc_offset_minutes = 22; - * - * @return The utcOffsetMinutes. - */ - @java.lang.Override - public int getUtcOffsetMinutes() { - return utcOffsetMinutes_; - } + public static com.google.maps.places.v1.Place.ParkingOptions parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - public static final int ADR_FORMAT_ADDRESS_FIELD_NUMBER = 24; + public static com.google.maps.places.v1.Place.ParkingOptions 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 adrFormatAddress_ = ""; - /** - * - * - *
-   * The place's address in adr microformat: http://microformats.org/wiki/adr.
-   * 
- * - * string adr_format_address = 24; - * - * @return The adrFormatAddress. - */ - @java.lang.Override - public java.lang.String getAdrFormatAddress() { - java.lang.Object ref = adrFormatAddress_; - 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(); - adrFormatAddress_ = s; - return s; + public static com.google.maps.places.v1.Place.ParkingOptions parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - } - /** - * - * - *
-   * The place's address in adr microformat: http://microformats.org/wiki/adr.
-   * 
- * - * string adr_format_address = 24; - * - * @return The bytes for adrFormatAddress. - */ - @java.lang.Override - public com.google.protobuf.ByteString getAdrFormatAddressBytes() { - java.lang.Object ref = adrFormatAddress_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - adrFormatAddress_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + + public static com.google.maps.places.v1.Place.ParkingOptions parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - } - public static final int BUSINESS_STATUS_FIELD_NUMBER = 25; - private int businessStatus_ = 0; - /** - * - * - *
-   * The business status for the place.
-   * 
- * - * .google.maps.places.v1.Place.BusinessStatus business_status = 25; - * - * @return The enum numeric value on the wire for businessStatus. - */ - @java.lang.Override - public int getBusinessStatusValue() { - return businessStatus_; - } - /** - * - * - *
-   * The business status for the place.
-   * 
- * - * .google.maps.places.v1.Place.BusinessStatus business_status = 25; - * - * @return The businessStatus. - */ - @java.lang.Override - public com.google.maps.places.v1.Place.BusinessStatus getBusinessStatus() { - com.google.maps.places.v1.Place.BusinessStatus result = - com.google.maps.places.v1.Place.BusinessStatus.forNumber(businessStatus_); - return result == null ? com.google.maps.places.v1.Place.BusinessStatus.UNRECOGNIZED : result; - } - - public static final int PRICE_LEVEL_FIELD_NUMBER = 26; - private int priceLevel_ = 0; - /** - * - * - *
-   * Price level of the place.
-   * 
- * - * .google.maps.places.v1.PriceLevel price_level = 26; - * - * @return The enum numeric value on the wire for priceLevel. - */ - @java.lang.Override - public int getPriceLevelValue() { - return priceLevel_; - } - /** - * - * - *
-   * Price level of the place.
-   * 
- * - * .google.maps.places.v1.PriceLevel price_level = 26; - * - * @return The priceLevel. - */ - @java.lang.Override - public com.google.maps.places.v1.PriceLevel getPriceLevel() { - com.google.maps.places.v1.PriceLevel result = - com.google.maps.places.v1.PriceLevel.forNumber(priceLevel_); - return result == null ? com.google.maps.places.v1.PriceLevel.UNRECOGNIZED : result; - } + public static com.google.maps.places.v1.Place.ParkingOptions parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } - public static final int ATTRIBUTIONS_FIELD_NUMBER = 27; + public static com.google.maps.places.v1.Place.ParkingOptions parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } - @SuppressWarnings("serial") - private java.util.List attributions_; - /** - * - * - *
-   * A set of data provider that must be shown with this result.
-   * 
- * - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; - */ - @java.lang.Override - public java.util.List getAttributionsList() { - return attributions_; - } - /** - * - * - *
-   * A set of data provider that must be shown with this result.
-   * 
- * - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; - */ - @java.lang.Override - public java.util.List - getAttributionsOrBuilderList() { - return attributions_; - } - /** - * - * - *
-   * A set of data provider that must be shown with this result.
-   * 
- * - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; - */ - @java.lang.Override - public int getAttributionsCount() { - return attributions_.size(); - } - /** - * - * - *
-   * A set of data provider that must be shown with this result.
-   * 
- * - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; - */ - @java.lang.Override - public com.google.maps.places.v1.Place.Attribution getAttributions(int index) { - return attributions_.get(index); - } - /** - * - * - *
-   * A set of data provider that must be shown with this result.
-   * 
- * - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; - */ - @java.lang.Override - public com.google.maps.places.v1.Place.AttributionOrBuilder getAttributionsOrBuilder(int index) { - return attributions_.get(index); - } + public static com.google.maps.places.v1.Place.ParkingOptions parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } - public static final int USER_RATING_COUNT_FIELD_NUMBER = 28; - private int userRatingCount_ = 0; - /** - * - * - *
-   * The total number of reviews (with or without text) for this place.
-   * 
- * - * int32 user_rating_count = 28; - * - * @return The userRatingCount. - */ - @java.lang.Override - public int getUserRatingCount() { - return userRatingCount_; - } + public static com.google.maps.places.v1.Place.ParkingOptions parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - public static final int ICON_MASK_BASE_URI_FIELD_NUMBER = 29; + public static com.google.maps.places.v1.Place.ParkingOptions parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } - @SuppressWarnings("serial") - private volatile java.lang.Object iconMaskBaseUri_ = ""; - /** - * - * - *
-   * A truncated URL to an v2 icon mask. User can access different icon type by
-   * appending type suffix to the end (eg, ".svg" or ".png").
-   * 
- * - * string icon_mask_base_uri = 29; - * - * @return The iconMaskBaseUri. - */ - @java.lang.Override - public java.lang.String getIconMaskBaseUri() { - java.lang.Object ref = iconMaskBaseUri_; - 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(); - iconMaskBaseUri_ = s; - return s; + public static com.google.maps.places.v1.Place.ParkingOptions parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); } - } - /** - * - * - *
-   * A truncated URL to an v2 icon mask. User can access different icon type by
-   * appending type suffix to the end (eg, ".svg" or ".png").
-   * 
- * - * string icon_mask_base_uri = 29; - * - * @return The bytes for iconMaskBaseUri. - */ - @java.lang.Override - public com.google.protobuf.ByteString getIconMaskBaseUriBytes() { - java.lang.Object ref = iconMaskBaseUri_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - iconMaskBaseUri_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); } - } - public static final int ICON_BACKGROUND_COLOR_FIELD_NUMBER = 30; + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } - @SuppressWarnings("serial") - private volatile java.lang.Object iconBackgroundColor_ = ""; - /** - * - * - *
-   * Background color for icon_mask in hex format, e.g. #909CE1.
-   * 
- * - * string icon_background_color = 30; - * - * @return The iconBackgroundColor. - */ - @java.lang.Override - public java.lang.String getIconBackgroundColor() { - java.lang.Object ref = iconBackgroundColor_; - 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(); - iconBackgroundColor_ = s; - return s; + public static Builder newBuilder(com.google.maps.places.v1.Place.ParkingOptions prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } - } - /** - * - * - *
-   * Background color for icon_mask in hex format, e.g. #909CE1.
-   * 
- * - * string icon_background_color = 30; - * - * @return The bytes for iconBackgroundColor. - */ - @java.lang.Override - public com.google.protobuf.ByteString getIconBackgroundColorBytes() { - java.lang.Object ref = iconBackgroundColor_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - iconBackgroundColor_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } - } - public static final int TAKEOUT_FIELD_NUMBER = 33; - private boolean takeout_ = false; - /** - * - * - *
-   * Specifies if the business supports takeout.
-   * 
- * - * optional bool takeout = 33; - * - * @return Whether the takeout field is set. - */ - @java.lang.Override - public boolean hasTakeout() { - return ((bitField0_ & 0x00000001) != 0); - } - /** - * - * - *
-   * Specifies if the business supports takeout.
-   * 
- * - * optional bool takeout = 33; - * - * @return The takeout. - */ - @java.lang.Override - public boolean getTakeout() { - return takeout_; - } - - public static final int DELIVERY_FIELD_NUMBER = 34; - private boolean delivery_ = false; - /** - * - * - *
-   * Specifies if the business supports delivery.
-   * 
- * - * optional bool delivery = 34; - * - * @return Whether the delivery field is set. - */ - @java.lang.Override - public boolean hasDelivery() { - return ((bitField0_ & 0x00000002) != 0); - } - /** - * - * - *
-   * Specifies if the business supports delivery.
-   * 
- * - * optional bool delivery = 34; - * - * @return The delivery. - */ - @java.lang.Override - public boolean getDelivery() { - return delivery_; - } + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+     * Information about parking options for the place. A parking lot could
+     * support more than one option at the same time.
+     * 
+ * + * Protobuf type {@code google.maps.places.v1.Place.ParkingOptions} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place.ParkingOptions) + com.google.maps.places.v1.Place.ParkingOptionsOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_ParkingOptions_descriptor; + } - public static final int DINE_IN_FIELD_NUMBER = 35; - private boolean dineIn_ = false; - /** - * - * - *
-   * Specifies if the business supports indoor or outdoor seating options.
-   * 
- * - * optional bool dine_in = 35; - * - * @return Whether the dineIn field is set. - */ - @java.lang.Override - public boolean hasDineIn() { - return ((bitField0_ & 0x00000004) != 0); - } - /** - * - * - *
-   * Specifies if the business supports indoor or outdoor seating options.
-   * 
- * - * optional bool dine_in = 35; - * - * @return The dineIn. - */ - @java.lang.Override - public boolean getDineIn() { - return dineIn_; - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_ParkingOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Place.ParkingOptions.class, + com.google.maps.places.v1.Place.ParkingOptions.Builder.class); + } - public static final int CURBSIDE_PICKUP_FIELD_NUMBER = 36; - private boolean curbsidePickup_ = false; - /** - * - * - *
-   * Specifies if the business supports curbside pickup.
-   * 
- * - * optional bool curbside_pickup = 36; - * - * @return Whether the curbsidePickup field is set. - */ - @java.lang.Override - public boolean hasCurbsidePickup() { - return ((bitField0_ & 0x00000008) != 0); - } - /** - * - * - *
-   * Specifies if the business supports curbside pickup.
-   * 
- * - * optional bool curbside_pickup = 36; - * - * @return The curbsidePickup. - */ - @java.lang.Override - public boolean getCurbsidePickup() { - return curbsidePickup_; - } + // Construct using com.google.maps.places.v1.Place.ParkingOptions.newBuilder() + private Builder() {} - public static final int WHEELCHAIR_ACCESSIBLE_ENTRANCE_FIELD_NUMBER = 37; - private boolean wheelchairAccessibleEntrance_ = false; - /** - * - * - *
-   * Specifies if the place has an entrance that is wheelchair-accessible.
-   * 
- * - * optional bool wheelchair_accessible_entrance = 37; - * - * @return Whether the wheelchairAccessibleEntrance field is set. - */ - @java.lang.Override - public boolean hasWheelchairAccessibleEntrance() { - return ((bitField0_ & 0x00000010) != 0); - } - /** - * - * - *
-   * Specifies if the place has an entrance that is wheelchair-accessible.
-   * 
- * - * optional bool wheelchair_accessible_entrance = 37; - * - * @return The wheelchairAccessibleEntrance. - */ - @java.lang.Override - public boolean getWheelchairAccessibleEntrance() { - return wheelchairAccessibleEntrance_; - } + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } - public static final int RESERVABLE_FIELD_NUMBER = 38; - private boolean reservable_ = false; - /** - * - * - *
-   * Specifies if the place supports reservations.
-   * 
- * - * optional bool reservable = 38; - * - * @return Whether the reservable field is set. - */ - @java.lang.Override - public boolean hasReservable() { - return ((bitField0_ & 0x00000020) != 0); - } - /** - * - * - *
-   * Specifies if the place supports reservations.
-   * 
- * - * optional bool reservable = 38; - * - * @return The reservable. - */ - @java.lang.Override - public boolean getReservable() { - return reservable_; - } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + freeParkingLot_ = false; + paidParkingLot_ = false; + freeStreetParking_ = false; + paidStreetParking_ = false; + valetParking_ = false; + freeGarageParking_ = false; + paidGarageParking_ = false; + return this; + } - public static final int SERVES_BREAKFAST_FIELD_NUMBER = 39; - private boolean servesBreakfast_ = false; - /** - * - * - *
-   * Specifies if the place serves breakfast.
-   * 
- * - * optional bool serves_breakfast = 39; - * - * @return Whether the servesBreakfast field is set. - */ - @java.lang.Override - public boolean hasServesBreakfast() { - return ((bitField0_ & 0x00000040) != 0); - } - /** - * - * - *
-   * Specifies if the place serves breakfast.
-   * 
- * - * optional bool serves_breakfast = 39; - * - * @return The servesBreakfast. - */ - @java.lang.Override - public boolean getServesBreakfast() { - return servesBreakfast_; - } + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_ParkingOptions_descriptor; + } - public static final int SERVES_LUNCH_FIELD_NUMBER = 40; - private boolean servesLunch_ = false; - /** - * - * - *
-   * Specifies if the place serves lunch.
-   * 
- * - * optional bool serves_lunch = 40; - * - * @return Whether the servesLunch field is set. - */ - @java.lang.Override - public boolean hasServesLunch() { - return ((bitField0_ & 0x00000080) != 0); - } - /** - * - * - *
-   * Specifies if the place serves lunch.
-   * 
- * - * optional bool serves_lunch = 40; - * - * @return The servesLunch. - */ - @java.lang.Override - public boolean getServesLunch() { - return servesLunch_; - } + @java.lang.Override + public com.google.maps.places.v1.Place.ParkingOptions getDefaultInstanceForType() { + return com.google.maps.places.v1.Place.ParkingOptions.getDefaultInstance(); + } - public static final int SERVES_DINNER_FIELD_NUMBER = 41; - private boolean servesDinner_ = false; - /** - * - * - *
-   * Specifies if the place serves dinner.
-   * 
- * - * optional bool serves_dinner = 41; - * - * @return Whether the servesDinner field is set. - */ - @java.lang.Override - public boolean hasServesDinner() { - return ((bitField0_ & 0x00000100) != 0); - } - /** - * - * - *
-   * Specifies if the place serves dinner.
-   * 
- * - * optional bool serves_dinner = 41; - * - * @return The servesDinner. - */ - @java.lang.Override - public boolean getServesDinner() { - return servesDinner_; - } + @java.lang.Override + public com.google.maps.places.v1.Place.ParkingOptions build() { + com.google.maps.places.v1.Place.ParkingOptions result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - public static final int SERVES_BEER_FIELD_NUMBER = 42; - private boolean servesBeer_ = false; - /** - * - * - *
-   * Specifies if the place serves beer.
-   * 
- * - * optional bool serves_beer = 42; - * - * @return Whether the servesBeer field is set. - */ - @java.lang.Override - public boolean hasServesBeer() { - return ((bitField0_ & 0x00000200) != 0); - } - /** - * - * - *
-   * Specifies if the place serves beer.
-   * 
- * - * optional bool serves_beer = 42; - * - * @return The servesBeer. - */ - @java.lang.Override - public boolean getServesBeer() { - return servesBeer_; - } + @java.lang.Override + public com.google.maps.places.v1.Place.ParkingOptions buildPartial() { + com.google.maps.places.v1.Place.ParkingOptions result = + new com.google.maps.places.v1.Place.ParkingOptions(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - public static final int SERVES_WINE_FIELD_NUMBER = 43; - private boolean servesWine_ = false; - /** - * - * - *
-   * Specifies if the place serves wine.
-   * 
- * - * optional bool serves_wine = 43; - * - * @return Whether the servesWine field is set. - */ - @java.lang.Override - public boolean hasServesWine() { - return ((bitField0_ & 0x00000400) != 0); - } - /** - * - * - *
-   * Specifies if the place serves wine.
-   * 
- * - * optional bool serves_wine = 43; - * - * @return The servesWine. - */ - @java.lang.Override - public boolean getServesWine() { - return servesWine_; - } + private void buildPartial0(com.google.maps.places.v1.Place.ParkingOptions result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.freeParkingLot_ = freeParkingLot_; + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.paidParkingLot_ = paidParkingLot_; + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.freeStreetParking_ = freeStreetParking_; + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.paidStreetParking_ = paidStreetParking_; + to_bitField0_ |= 0x00000008; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.valetParking_ = valetParking_; + to_bitField0_ |= 0x00000010; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.freeGarageParking_ = freeGarageParking_; + to_bitField0_ |= 0x00000020; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.paidGarageParking_ = paidGarageParking_; + to_bitField0_ |= 0x00000040; + } + result.bitField0_ |= to_bitField0_; + } - public static final int SERVES_BRUNCH_FIELD_NUMBER = 44; - private boolean servesBrunch_ = false; - /** - * - * - *
-   * Specifies if the place serves brunch.
-   * 
- * - * optional bool serves_brunch = 44; - * - * @return Whether the servesBrunch field is set. - */ - @java.lang.Override - public boolean hasServesBrunch() { - return ((bitField0_ & 0x00000800) != 0); - } - /** - * - * - *
-   * Specifies if the place serves brunch.
-   * 
- * - * optional bool serves_brunch = 44; - * - * @return The servesBrunch. - */ - @java.lang.Override - public boolean getServesBrunch() { - return servesBrunch_; - } + @java.lang.Override + public Builder clone() { + return super.clone(); + } - public static final int SERVES_VEGETARIAN_FOOD_FIELD_NUMBER = 45; - private boolean servesVegetarianFood_ = false; - /** - * - * - *
-   * Specifies if the place serves vegetarian food.
-   * 
- * - * optional bool serves_vegetarian_food = 45; - * - * @return Whether the servesVegetarianFood field is set. - */ - @java.lang.Override - public boolean hasServesVegetarianFood() { - return ((bitField0_ & 0x00001000) != 0); - } - /** - * - * - *
-   * Specifies if the place serves vegetarian food.
-   * 
- * - * optional bool serves_vegetarian_food = 45; - * - * @return The servesVegetarianFood. - */ - @java.lang.Override - public boolean getServesVegetarianFood() { - return servesVegetarianFood_; - } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } - public static final int CURRENT_OPENING_HOURS_FIELD_NUMBER = 46; - private com.google.maps.places.v1.Place.OpeningHours currentOpeningHours_; - /** - * - * - *
-   * The hours of operation for the next seven days (including today). The time
-   * period starts at midnight on the date of the request and ends at 11:59 pm
-   * six days later. This field includes the special_days subfield of all hours,
-   * set for dates that have exceptional hours.
-   * 
- * - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; - * - * @return Whether the currentOpeningHours field is set. - */ - @java.lang.Override - public boolean hasCurrentOpeningHours() { - return currentOpeningHours_ != null; - } - /** - * - * - *
-   * The hours of operation for the next seven days (including today). The time
-   * period starts at midnight on the date of the request and ends at 11:59 pm
-   * six days later. This field includes the special_days subfield of all hours,
-   * set for dates that have exceptional hours.
-   * 
- * - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; - * - * @return The currentOpeningHours. - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours getCurrentOpeningHours() { - return currentOpeningHours_ == null - ? com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance() - : currentOpeningHours_; - } - /** - * - * - *
-   * The hours of operation for the next seven days (including today). The time
-   * period starts at midnight on the date of the request and ends at 11:59 pm
-   * six days later. This field includes the special_days subfield of all hours,
-   * set for dates that have exceptional hours.
-   * 
- * - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHoursOrBuilder getCurrentOpeningHoursOrBuilder() { - return currentOpeningHours_ == null - ? com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance() - : currentOpeningHours_; - } + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } - public static final int CURRENT_SECONDARY_OPENING_HOURS_FIELD_NUMBER = 47; + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } - @SuppressWarnings("serial") - private java.util.List - currentSecondaryOpeningHours_; - /** - * - * - *
-   * Contains an array of entries for the next seven days including information
-   * about secondary hours of a business. Secondary hours are different from a
-   * business's main hours. For example, a restaurant can specify drive through
-   * hours or delivery hours as its secondary hours. This field populates the
-   * type subfield, which draws from a predefined list of opening hours types
-   * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-   * place. This field includes the special_days subfield of all hours, set for
-   * dates that have exceptional hours.
-   * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; - * - */ - @java.lang.Override - public java.util.List - getCurrentSecondaryOpeningHoursList() { - return currentSecondaryOpeningHours_; - } - /** - * - * - *
-   * Contains an array of entries for the next seven days including information
-   * about secondary hours of a business. Secondary hours are different from a
-   * business's main hours. For example, a restaurant can specify drive through
-   * hours or delivery hours as its secondary hours. This field populates the
-   * type subfield, which draws from a predefined list of opening hours types
-   * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-   * place. This field includes the special_days subfield of all hours, set for
-   * dates that have exceptional hours.
-   * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; - * - */ - @java.lang.Override - public java.util.List - getCurrentSecondaryOpeningHoursOrBuilderList() { - return currentSecondaryOpeningHours_; - } - /** - * - * - *
-   * Contains an array of entries for the next seven days including information
-   * about secondary hours of a business. Secondary hours are different from a
-   * business's main hours. For example, a restaurant can specify drive through
-   * hours or delivery hours as its secondary hours. This field populates the
-   * type subfield, which draws from a predefined list of opening hours types
-   * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-   * place. This field includes the special_days subfield of all hours, set for
-   * dates that have exceptional hours.
-   * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; - * - */ - @java.lang.Override - public int getCurrentSecondaryOpeningHoursCount() { - return currentSecondaryOpeningHours_.size(); - } - /** - * - * - *
-   * Contains an array of entries for the next seven days including information
-   * about secondary hours of a business. Secondary hours are different from a
-   * business's main hours. For example, a restaurant can specify drive through
-   * hours or delivery hours as its secondary hours. This field populates the
-   * type subfield, which draws from a predefined list of opening hours types
-   * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-   * place. This field includes the special_days subfield of all hours, set for
-   * dates that have exceptional hours.
-   * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; - * - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours getCurrentSecondaryOpeningHours(int index) { - return currentSecondaryOpeningHours_.get(index); - } - /** - * - * - *
-   * Contains an array of entries for the next seven days including information
-   * about secondary hours of a business. Secondary hours are different from a
-   * business's main hours. For example, a restaurant can specify drive through
-   * hours or delivery hours as its secondary hours. This field populates the
-   * type subfield, which draws from a predefined list of opening hours types
-   * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-   * place. This field includes the special_days subfield of all hours, set for
-   * dates that have exceptional hours.
-   * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; - * - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHoursOrBuilder - getCurrentSecondaryOpeningHoursOrBuilder(int index) { - return currentSecondaryOpeningHours_.get(index); - } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } - public static final int SECONDARY_OPENING_HOURS_FIELD_NUMBER = 49; + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } - @SuppressWarnings("serial") - private java.util.List secondaryOpeningHours_; - /** - * - * - *
-   * Contains an array of entries for information about regular secondary hours
-   * of a business. Secondary hours are different from a business's main hours.
-   * For example, a restaurant can specify drive through hours or delivery hours
-   * as its secondary hours. This field populates the type subfield, which draws
-   * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-   * PICKUP, or TAKEOUT) based on the types of the place.
-   * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; - */ - @java.lang.Override - public java.util.List - getSecondaryOpeningHoursList() { - return secondaryOpeningHours_; - } - /** - * - * - *
-   * Contains an array of entries for information about regular secondary hours
-   * of a business. Secondary hours are different from a business's main hours.
-   * For example, a restaurant can specify drive through hours or delivery hours
-   * as its secondary hours. This field populates the type subfield, which draws
-   * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-   * PICKUP, or TAKEOUT) based on the types of the place.
-   * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; - */ - @java.lang.Override - public java.util.List - getSecondaryOpeningHoursOrBuilderList() { - return secondaryOpeningHours_; - } - /** - * - * - *
-   * Contains an array of entries for information about regular secondary hours
-   * of a business. Secondary hours are different from a business's main hours.
-   * For example, a restaurant can specify drive through hours or delivery hours
-   * as its secondary hours. This field populates the type subfield, which draws
-   * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-   * PICKUP, or TAKEOUT) based on the types of the place.
-   * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; - */ - @java.lang.Override - public int getSecondaryOpeningHoursCount() { - return secondaryOpeningHours_.size(); - } - /** - * - * - *
-   * Contains an array of entries for information about regular secondary hours
-   * of a business. Secondary hours are different from a business's main hours.
-   * For example, a restaurant can specify drive through hours or delivery hours
-   * as its secondary hours. This field populates the type subfield, which draws
-   * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-   * PICKUP, or TAKEOUT) based on the types of the place.
-   * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHours getSecondaryOpeningHours(int index) { - return secondaryOpeningHours_.get(index); - } - /** - * - * - *
-   * Contains an array of entries for information about regular secondary hours
-   * of a business. Secondary hours are different from a business's main hours.
-   * For example, a restaurant can specify drive through hours or delivery hours
-   * as its secondary hours. This field populates the type subfield, which draws
-   * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-   * PICKUP, or TAKEOUT) based on the types of the place.
-   * 
- * - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; - */ - @java.lang.Override - public com.google.maps.places.v1.Place.OpeningHoursOrBuilder getSecondaryOpeningHoursOrBuilder( - int index) { - return secondaryOpeningHours_.get(index); - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.Place.ParkingOptions) { + return mergeFrom((com.google.maps.places.v1.Place.ParkingOptions) other); + } else { + super.mergeFrom(other); + return this; + } + } - public static final int EDITORIAL_SUMMARY_FIELD_NUMBER = 48; - private com.google.maps.places.v1.Place.EditorialSummary editorialSummary_; - /** - * - * - *
-   * Contains a summary of the place. A summary is comprised of a textual
-   * overview, and also includes the language code for these if applicable.
-   * Summary text must be presented as-is and can not be modified or altered.
-   * 
- * - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; - * - * @return Whether the editorialSummary field is set. - */ - @java.lang.Override - public boolean hasEditorialSummary() { - return editorialSummary_ != null; - } - /** - * - * - *
-   * Contains a summary of the place. A summary is comprised of a textual
-   * overview, and also includes the language code for these if applicable.
-   * Summary text must be presented as-is and can not be modified or altered.
-   * 
- * - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; - * - * @return The editorialSummary. - */ - @java.lang.Override - public com.google.maps.places.v1.Place.EditorialSummary getEditorialSummary() { - return editorialSummary_ == null - ? com.google.maps.places.v1.Place.EditorialSummary.getDefaultInstance() - : editorialSummary_; - } - /** - * - * - *
-   * Contains a summary of the place. A summary is comprised of a textual
-   * overview, and also includes the language code for these if applicable.
-   * Summary text must be presented as-is and can not be modified or altered.
-   * 
- * - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; - */ - @java.lang.Override - public com.google.maps.places.v1.Place.EditorialSummaryOrBuilder getEditorialSummaryOrBuilder() { - return editorialSummary_ == null - ? com.google.maps.places.v1.Place.EditorialSummary.getDefaultInstance() - : editorialSummary_; - } + public Builder mergeFrom(com.google.maps.places.v1.Place.ParkingOptions other) { + if (other == com.google.maps.places.v1.Place.ParkingOptions.getDefaultInstance()) + return this; + if (other.hasFreeParkingLot()) { + setFreeParkingLot(other.getFreeParkingLot()); + } + if (other.hasPaidParkingLot()) { + setPaidParkingLot(other.getPaidParkingLot()); + } + if (other.hasFreeStreetParking()) { + setFreeStreetParking(other.getFreeStreetParking()); + } + if (other.hasPaidStreetParking()) { + setPaidStreetParking(other.getPaidStreetParking()); + } + if (other.hasValetParking()) { + setValetParking(other.getValetParking()); + } + if (other.hasFreeGarageParking()) { + setFreeGarageParking(other.getFreeGarageParking()); + } + if (other.hasPaidGarageParking()) { + setPaidGarageParking(other.getPaidGarageParking()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + 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 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: + { + freeParkingLot_ = input.readBool(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: + { + paidParkingLot_ = input.readBool(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 24: + { + freeStreetParking_ = input.readBool(); + bitField0_ |= 0x00000004; + break; + } // case 24 + case 32: + { + paidStreetParking_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 40: + { + valetParking_ = input.readBool(); + bitField0_ |= 0x00000010; + break; + } // case 40 + case 48: + { + freeGarageParking_ = input.readBool(); + bitField0_ |= 0x00000020; + break; + } // case 48 + case 56: + { + paidGarageParking_ = input.readBool(); + bitField0_ |= 0x00000040; + 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; + } - memoizedIsInitialized = 1; - return true; - } + private int bitField0_; - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, id_); - } - for (int i = 0; i < types_.size(); i++) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 5, types_.getRaw(i)); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nationalPhoneNumber_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 7, nationalPhoneNumber_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(internationalPhoneNumber_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 8, internationalPhoneNumber_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(formattedAddress_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 9, formattedAddress_); - } - for (int i = 0; i < addressComponents_.size(); i++) { - output.writeMessage(10, addressComponents_.get(i)); - } - if (plusCode_ != null) { - output.writeMessage(11, getPlusCode()); - } - if (location_ != null) { - output.writeMessage(12, getLocation()); - } - if (viewport_ != null) { - output.writeMessage(13, getViewport()); - } - if (java.lang.Double.doubleToRawLongBits(rating_) != 0) { - output.writeDouble(14, rating_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(googleMapsUri_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 15, googleMapsUri_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(websiteUri_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 16, websiteUri_); - } - for (int i = 0; i < reviews_.size(); i++) { - output.writeMessage(20, reviews_.get(i)); - } - if (openingHours_ != null) { - output.writeMessage(21, getOpeningHours()); - } - if (utcOffsetMinutes_ != 0) { - output.writeInt32(22, utcOffsetMinutes_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(adrFormatAddress_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 24, adrFormatAddress_); - } - if (businessStatus_ - != com.google.maps.places.v1.Place.BusinessStatus.BUSINESS_STATUS_UNSPECIFIED.getNumber()) { - output.writeEnum(25, businessStatus_); - } - if (priceLevel_ != com.google.maps.places.v1.PriceLevel.PRICE_LEVEL_UNSPECIFIED.getNumber()) { - output.writeEnum(26, priceLevel_); - } - for (int i = 0; i < attributions_.size(); i++) { - output.writeMessage(27, attributions_.get(i)); - } - if (userRatingCount_ != 0) { - output.writeInt32(28, userRatingCount_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(iconMaskBaseUri_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 29, iconMaskBaseUri_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(iconBackgroundColor_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 30, iconBackgroundColor_); - } - if (displayName_ != null) { - output.writeMessage(31, getDisplayName()); - } - if (((bitField0_ & 0x00000001) != 0)) { - output.writeBool(33, takeout_); - } - if (((bitField0_ & 0x00000002) != 0)) { - output.writeBool(34, delivery_); - } - if (((bitField0_ & 0x00000004) != 0)) { - output.writeBool(35, dineIn_); - } - if (((bitField0_ & 0x00000008) != 0)) { - output.writeBool(36, curbsidePickup_); - } - if (((bitField0_ & 0x00000010) != 0)) { - output.writeBool(37, wheelchairAccessibleEntrance_); - } - if (((bitField0_ & 0x00000020) != 0)) { - output.writeBool(38, reservable_); - } - if (((bitField0_ & 0x00000040) != 0)) { - output.writeBool(39, servesBreakfast_); - } - if (((bitField0_ & 0x00000080) != 0)) { - output.writeBool(40, servesLunch_); - } - if (((bitField0_ & 0x00000100) != 0)) { - output.writeBool(41, servesDinner_); - } - if (((bitField0_ & 0x00000200) != 0)) { - output.writeBool(42, servesBeer_); - } - if (((bitField0_ & 0x00000400) != 0)) { - output.writeBool(43, servesWine_); - } - if (((bitField0_ & 0x00000800) != 0)) { - output.writeBool(44, servesBrunch_); - } - if (((bitField0_ & 0x00001000) != 0)) { - output.writeBool(45, servesVegetarianFood_); - } - if (currentOpeningHours_ != null) { - output.writeMessage(46, getCurrentOpeningHours()); - } - for (int i = 0; i < currentSecondaryOpeningHours_.size(); i++) { - output.writeMessage(47, currentSecondaryOpeningHours_.get(i)); - } - if (editorialSummary_ != null) { - output.writeMessage(48, getEditorialSummary()); - } - for (int i = 0; i < secondaryOpeningHours_.size(); i++) { - output.writeMessage(49, secondaryOpeningHours_.get(i)); - } - getUnknownFields().writeTo(output); - } + private boolean freeParkingLot_; + /** + * + * + *
+       * Place offers free parking lots.
+       * 
+ * + * optional bool free_parking_lot = 1; + * + * @return Whether the freeParkingLot field is set. + */ + @java.lang.Override + public boolean hasFreeParkingLot() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * + * + *
+       * Place offers free parking lots.
+       * 
+ * + * optional bool free_parking_lot = 1; + * + * @return The freeParkingLot. + */ + @java.lang.Override + public boolean getFreeParkingLot() { + return freeParkingLot_; + } + /** + * + * + *
+       * Place offers free parking lots.
+       * 
+ * + * optional bool free_parking_lot = 1; + * + * @param value The freeParkingLot to set. + * @return This builder for chaining. + */ + public Builder setFreeParkingLot(boolean value) { - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + freeParkingLot_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+       * Place offers free parking lots.
+       * 
+ * + * optional bool free_parking_lot = 1; + * + * @return This builder for chaining. + */ + public Builder clearFreeParkingLot() { + bitField0_ = (bitField0_ & ~0x00000001); + freeParkingLot_ = false; + onChanged(); + return this; + } - size = 0; - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, id_); - } - { - int dataSize = 0; - for (int i = 0; i < types_.size(); i++) { - dataSize += computeStringSizeNoTag(types_.getRaw(i)); + private boolean paidParkingLot_; + /** + * + * + *
+       * Place offers paid parking lots.
+       * 
+ * + * optional bool paid_parking_lot = 2; + * + * @return Whether the paidParkingLot field is set. + */ + @java.lang.Override + public boolean hasPaidParkingLot() { + return ((bitField0_ & 0x00000002) != 0); } - size += dataSize; - size += 1 * getTypesList().size(); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nationalPhoneNumber_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, nationalPhoneNumber_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(internationalPhoneNumber_)) { - size += - com.google.protobuf.GeneratedMessageV3.computeStringSize(8, internationalPhoneNumber_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(formattedAddress_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, formattedAddress_); - } - for (int i = 0; i < addressComponents_.size(); i++) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize(10, addressComponents_.get(i)); - } - if (plusCode_ != null) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(11, getPlusCode()); - } - if (location_ != null) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, getLocation()); - } - if (viewport_ != null) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(13, getViewport()); - } - if (java.lang.Double.doubleToRawLongBits(rating_) != 0) { - size += com.google.protobuf.CodedOutputStream.computeDoubleSize(14, rating_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(googleMapsUri_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(15, googleMapsUri_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(websiteUri_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(16, websiteUri_); - } - for (int i = 0; i < reviews_.size(); i++) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(20, reviews_.get(i)); - } - if (openingHours_ != null) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(21, getOpeningHours()); - } - if (utcOffsetMinutes_ != 0) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(22, utcOffsetMinutes_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(adrFormatAddress_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(24, adrFormatAddress_); - } - if (businessStatus_ - != com.google.maps.places.v1.Place.BusinessStatus.BUSINESS_STATUS_UNSPECIFIED.getNumber()) { - size += com.google.protobuf.CodedOutputStream.computeEnumSize(25, businessStatus_); - } - if (priceLevel_ != com.google.maps.places.v1.PriceLevel.PRICE_LEVEL_UNSPECIFIED.getNumber()) { - size += com.google.protobuf.CodedOutputStream.computeEnumSize(26, priceLevel_); - } - for (int i = 0; i < attributions_.size(); i++) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(27, attributions_.get(i)); - } - if (userRatingCount_ != 0) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(28, userRatingCount_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(iconMaskBaseUri_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(29, iconMaskBaseUri_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(iconBackgroundColor_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(30, iconBackgroundColor_); - } - if (displayName_ != null) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(31, getDisplayName()); - } - if (((bitField0_ & 0x00000001) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(33, takeout_); - } - if (((bitField0_ & 0x00000002) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(34, delivery_); - } - if (((bitField0_ & 0x00000004) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(35, dineIn_); - } - if (((bitField0_ & 0x00000008) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(36, curbsidePickup_); - } - if (((bitField0_ & 0x00000010) != 0)) { - size += - com.google.protobuf.CodedOutputStream.computeBoolSize(37, wheelchairAccessibleEntrance_); - } - if (((bitField0_ & 0x00000020) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(38, reservable_); - } - if (((bitField0_ & 0x00000040) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(39, servesBreakfast_); - } - if (((bitField0_ & 0x00000080) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(40, servesLunch_); - } - if (((bitField0_ & 0x00000100) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(41, servesDinner_); - } - if (((bitField0_ & 0x00000200) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(42, servesBeer_); - } - if (((bitField0_ & 0x00000400) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(43, servesWine_); - } - if (((bitField0_ & 0x00000800) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(44, servesBrunch_); - } - if (((bitField0_ & 0x00001000) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(45, servesVegetarianFood_); - } - if (currentOpeningHours_ != null) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize(46, getCurrentOpeningHours()); - } - for (int i = 0; i < currentSecondaryOpeningHours_.size(); i++) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 47, currentSecondaryOpeningHours_.get(i)); - } - if (editorialSummary_ != null) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(48, getEditorialSummary()); - } - for (int i = 0; i < secondaryOpeningHours_.size(); i++) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 49, secondaryOpeningHours_.get(i)); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } + /** + * + * + *
+       * Place offers paid parking lots.
+       * 
+ * + * optional bool paid_parking_lot = 2; + * + * @return The paidParkingLot. + */ + @java.lang.Override + public boolean getPaidParkingLot() { + return paidParkingLot_; + } + /** + * + * + *
+       * Place offers paid parking lots.
+       * 
+ * + * optional bool paid_parking_lot = 2; + * + * @param value The paidParkingLot to set. + * @return This builder for chaining. + */ + public Builder setPaidParkingLot(boolean value) { - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof com.google.maps.places.v1.Place)) { - return super.equals(obj); - } - com.google.maps.places.v1.Place other = (com.google.maps.places.v1.Place) obj; + paidParkingLot_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * + * + *
+       * Place offers paid parking lots.
+       * 
+ * + * optional bool paid_parking_lot = 2; + * + * @return This builder for chaining. + */ + public Builder clearPaidParkingLot() { + bitField0_ = (bitField0_ & ~0x00000002); + paidParkingLot_ = false; + onChanged(); + return this; + } - if (!getId().equals(other.getId())) return false; - if (hasDisplayName() != other.hasDisplayName()) return false; - if (hasDisplayName()) { - if (!getDisplayName().equals(other.getDisplayName())) return false; - } - if (!getTypesList().equals(other.getTypesList())) return false; - if (!getNationalPhoneNumber().equals(other.getNationalPhoneNumber())) return false; - if (!getInternationalPhoneNumber().equals(other.getInternationalPhoneNumber())) return false; - if (!getFormattedAddress().equals(other.getFormattedAddress())) return false; - if (!getAddressComponentsList().equals(other.getAddressComponentsList())) return false; - if (hasPlusCode() != other.hasPlusCode()) return false; - if (hasPlusCode()) { - if (!getPlusCode().equals(other.getPlusCode())) return false; - } - if (hasLocation() != other.hasLocation()) return false; - if (hasLocation()) { - if (!getLocation().equals(other.getLocation())) return false; - } - if (hasViewport() != other.hasViewport()) return false; - if (hasViewport()) { - if (!getViewport().equals(other.getViewport())) return false; - } - if (java.lang.Double.doubleToLongBits(getRating()) - != java.lang.Double.doubleToLongBits(other.getRating())) return false; - if (!getGoogleMapsUri().equals(other.getGoogleMapsUri())) return false; - if (!getWebsiteUri().equals(other.getWebsiteUri())) return false; - if (!getReviewsList().equals(other.getReviewsList())) return false; - if (hasOpeningHours() != other.hasOpeningHours()) return false; - if (hasOpeningHours()) { - if (!getOpeningHours().equals(other.getOpeningHours())) return false; - } - if (getUtcOffsetMinutes() != other.getUtcOffsetMinutes()) return false; - if (!getAdrFormatAddress().equals(other.getAdrFormatAddress())) return false; - if (businessStatus_ != other.businessStatus_) return false; - if (priceLevel_ != other.priceLevel_) return false; - if (!getAttributionsList().equals(other.getAttributionsList())) return false; - if (getUserRatingCount() != other.getUserRatingCount()) return false; - if (!getIconMaskBaseUri().equals(other.getIconMaskBaseUri())) return false; - if (!getIconBackgroundColor().equals(other.getIconBackgroundColor())) return false; - if (hasTakeout() != other.hasTakeout()) return false; - if (hasTakeout()) { - if (getTakeout() != other.getTakeout()) return false; - } - if (hasDelivery() != other.hasDelivery()) return false; - if (hasDelivery()) { - if (getDelivery() != other.getDelivery()) return false; - } - if (hasDineIn() != other.hasDineIn()) return false; - if (hasDineIn()) { - if (getDineIn() != other.getDineIn()) return false; - } - if (hasCurbsidePickup() != other.hasCurbsidePickup()) return false; - if (hasCurbsidePickup()) { - if (getCurbsidePickup() != other.getCurbsidePickup()) return false; - } - if (hasWheelchairAccessibleEntrance() != other.hasWheelchairAccessibleEntrance()) return false; - if (hasWheelchairAccessibleEntrance()) { - if (getWheelchairAccessibleEntrance() != other.getWheelchairAccessibleEntrance()) - return false; - } - if (hasReservable() != other.hasReservable()) return false; - if (hasReservable()) { - if (getReservable() != other.getReservable()) return false; - } - if (hasServesBreakfast() != other.hasServesBreakfast()) return false; - if (hasServesBreakfast()) { - if (getServesBreakfast() != other.getServesBreakfast()) return false; - } - if (hasServesLunch() != other.hasServesLunch()) return false; - if (hasServesLunch()) { - if (getServesLunch() != other.getServesLunch()) return false; - } - if (hasServesDinner() != other.hasServesDinner()) return false; - if (hasServesDinner()) { - if (getServesDinner() != other.getServesDinner()) return false; - } - if (hasServesBeer() != other.hasServesBeer()) return false; - if (hasServesBeer()) { - if (getServesBeer() != other.getServesBeer()) return false; - } - if (hasServesWine() != other.hasServesWine()) return false; - if (hasServesWine()) { - if (getServesWine() != other.getServesWine()) return false; - } - if (hasServesBrunch() != other.hasServesBrunch()) return false; - if (hasServesBrunch()) { - if (getServesBrunch() != other.getServesBrunch()) return false; - } - if (hasServesVegetarianFood() != other.hasServesVegetarianFood()) return false; - if (hasServesVegetarianFood()) { - if (getServesVegetarianFood() != other.getServesVegetarianFood()) return false; - } - if (hasCurrentOpeningHours() != other.hasCurrentOpeningHours()) return false; - if (hasCurrentOpeningHours()) { - if (!getCurrentOpeningHours().equals(other.getCurrentOpeningHours())) return false; - } - if (!getCurrentSecondaryOpeningHoursList().equals(other.getCurrentSecondaryOpeningHoursList())) - return false; - if (!getSecondaryOpeningHoursList().equals(other.getSecondaryOpeningHoursList())) return false; - if (hasEditorialSummary() != other.hasEditorialSummary()) return false; - if (hasEditorialSummary()) { - if (!getEditorialSummary().equals(other.getEditorialSummary())) return false; - } - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + private boolean freeStreetParking_; + /** + * + * + *
+       * Place offers free street parking.
+       * 
+ * + * optional bool free_street_parking = 3; + * + * @return Whether the freeStreetParking field is set. + */ + @java.lang.Override + public boolean hasFreeStreetParking() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * + * + *
+       * Place offers free street parking.
+       * 
+ * + * optional bool free_street_parking = 3; + * + * @return The freeStreetParking. + */ + @java.lang.Override + public boolean getFreeStreetParking() { + return freeStreetParking_; + } + /** + * + * + *
+       * Place offers free street parking.
+       * 
+ * + * optional bool free_street_parking = 3; + * + * @param value The freeStreetParking to set. + * @return This builder for chaining. + */ + public Builder setFreeStreetParking(boolean value) { - @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(); - if (hasDisplayName()) { - hash = (37 * hash) + DISPLAY_NAME_FIELD_NUMBER; - hash = (53 * hash) + getDisplayName().hashCode(); - } - if (getTypesCount() > 0) { - hash = (37 * hash) + TYPES_FIELD_NUMBER; - hash = (53 * hash) + getTypesList().hashCode(); - } - hash = (37 * hash) + NATIONAL_PHONE_NUMBER_FIELD_NUMBER; - hash = (53 * hash) + getNationalPhoneNumber().hashCode(); - hash = (37 * hash) + INTERNATIONAL_PHONE_NUMBER_FIELD_NUMBER; - hash = (53 * hash) + getInternationalPhoneNumber().hashCode(); - hash = (37 * hash) + FORMATTED_ADDRESS_FIELD_NUMBER; - hash = (53 * hash) + getFormattedAddress().hashCode(); - if (getAddressComponentsCount() > 0) { - hash = (37 * hash) + ADDRESS_COMPONENTS_FIELD_NUMBER; - hash = (53 * hash) + getAddressComponentsList().hashCode(); - } - if (hasPlusCode()) { - hash = (37 * hash) + PLUS_CODE_FIELD_NUMBER; - hash = (53 * hash) + getPlusCode().hashCode(); - } - if (hasLocation()) { - hash = (37 * hash) + LOCATION_FIELD_NUMBER; - hash = (53 * hash) + getLocation().hashCode(); - } - if (hasViewport()) { - hash = (37 * hash) + VIEWPORT_FIELD_NUMBER; - hash = (53 * hash) + getViewport().hashCode(); - } - hash = (37 * hash) + RATING_FIELD_NUMBER; - hash = - (53 * hash) - + com.google.protobuf.Internal.hashLong(java.lang.Double.doubleToLongBits(getRating())); - hash = (37 * hash) + GOOGLE_MAPS_URI_FIELD_NUMBER; - hash = (53 * hash) + getGoogleMapsUri().hashCode(); - hash = (37 * hash) + WEBSITE_URI_FIELD_NUMBER; - hash = (53 * hash) + getWebsiteUri().hashCode(); - if (getReviewsCount() > 0) { - hash = (37 * hash) + REVIEWS_FIELD_NUMBER; - hash = (53 * hash) + getReviewsList().hashCode(); - } - if (hasOpeningHours()) { - hash = (37 * hash) + OPENING_HOURS_FIELD_NUMBER; - hash = (53 * hash) + getOpeningHours().hashCode(); - } - hash = (37 * hash) + UTC_OFFSET_MINUTES_FIELD_NUMBER; - hash = (53 * hash) + getUtcOffsetMinutes(); - hash = (37 * hash) + ADR_FORMAT_ADDRESS_FIELD_NUMBER; - hash = (53 * hash) + getAdrFormatAddress().hashCode(); - hash = (37 * hash) + BUSINESS_STATUS_FIELD_NUMBER; - hash = (53 * hash) + businessStatus_; - hash = (37 * hash) + PRICE_LEVEL_FIELD_NUMBER; - hash = (53 * hash) + priceLevel_; - if (getAttributionsCount() > 0) { - hash = (37 * hash) + ATTRIBUTIONS_FIELD_NUMBER; - hash = (53 * hash) + getAttributionsList().hashCode(); - } - hash = (37 * hash) + USER_RATING_COUNT_FIELD_NUMBER; - hash = (53 * hash) + getUserRatingCount(); - hash = (37 * hash) + ICON_MASK_BASE_URI_FIELD_NUMBER; - hash = (53 * hash) + getIconMaskBaseUri().hashCode(); - hash = (37 * hash) + ICON_BACKGROUND_COLOR_FIELD_NUMBER; - hash = (53 * hash) + getIconBackgroundColor().hashCode(); - if (hasTakeout()) { - hash = (37 * hash) + TAKEOUT_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getTakeout()); - } - if (hasDelivery()) { - hash = (37 * hash) + DELIVERY_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDelivery()); - } - if (hasDineIn()) { - hash = (37 * hash) + DINE_IN_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDineIn()); - } - if (hasCurbsidePickup()) { - hash = (37 * hash) + CURBSIDE_PICKUP_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getCurbsidePickup()); - } - if (hasWheelchairAccessibleEntrance()) { - hash = (37 * hash) + WHEELCHAIR_ACCESSIBLE_ENTRANCE_FIELD_NUMBER; - hash = - (53 * hash) + com.google.protobuf.Internal.hashBoolean(getWheelchairAccessibleEntrance()); - } - if (hasReservable()) { - hash = (37 * hash) + RESERVABLE_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReservable()); - } - if (hasServesBreakfast()) { - hash = (37 * hash) + SERVES_BREAKFAST_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesBreakfast()); - } - if (hasServesLunch()) { - hash = (37 * hash) + SERVES_LUNCH_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesLunch()); - } - if (hasServesDinner()) { - hash = (37 * hash) + SERVES_DINNER_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesDinner()); - } - if (hasServesBeer()) { - hash = (37 * hash) + SERVES_BEER_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesBeer()); - } - if (hasServesWine()) { - hash = (37 * hash) + SERVES_WINE_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesWine()); - } - if (hasServesBrunch()) { - hash = (37 * hash) + SERVES_BRUNCH_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesBrunch()); - } - if (hasServesVegetarianFood()) { - hash = (37 * hash) + SERVES_VEGETARIAN_FOOD_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesVegetarianFood()); - } - if (hasCurrentOpeningHours()) { - hash = (37 * hash) + CURRENT_OPENING_HOURS_FIELD_NUMBER; - hash = (53 * hash) + getCurrentOpeningHours().hashCode(); - } - if (getCurrentSecondaryOpeningHoursCount() > 0) { - hash = (37 * hash) + CURRENT_SECONDARY_OPENING_HOURS_FIELD_NUMBER; - hash = (53 * hash) + getCurrentSecondaryOpeningHoursList().hashCode(); - } - if (getSecondaryOpeningHoursCount() > 0) { - hash = (37 * hash) + SECONDARY_OPENING_HOURS_FIELD_NUMBER; - hash = (53 * hash) + getSecondaryOpeningHoursList().hashCode(); - } - if (hasEditorialSummary()) { - hash = (37 * hash) + EDITORIAL_SUMMARY_FIELD_NUMBER; - hash = (53 * hash) + getEditorialSummary().hashCode(); - } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static com.google.maps.places.v1.Place parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + freeStreetParking_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+       * Place offers free street parking.
+       * 
+ * + * optional bool free_street_parking = 3; + * + * @return This builder for chaining. + */ + public Builder clearFreeStreetParking() { + bitField0_ = (bitField0_ & ~0x00000004); + freeStreetParking_ = false; + onChanged(); + return this; + } - public static com.google.maps.places.v1.Place parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + private boolean paidStreetParking_; + /** + * + * + *
+       * Place offers paid street parking.
+       * 
+ * + * optional bool paid_street_parking = 4; + * + * @return Whether the paidStreetParking field is set. + */ + @java.lang.Override + public boolean hasPaidStreetParking() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + * + * + *
+       * Place offers paid street parking.
+       * 
+ * + * optional bool paid_street_parking = 4; + * + * @return The paidStreetParking. + */ + @java.lang.Override + public boolean getPaidStreetParking() { + return paidStreetParking_; + } + /** + * + * + *
+       * Place offers paid street parking.
+       * 
+ * + * optional bool paid_street_parking = 4; + * + * @param value The paidStreetParking to set. + * @return This builder for chaining. + */ + public Builder setPaidStreetParking(boolean value) { - public static com.google.maps.places.v1.Place parseFrom(com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + paidStreetParking_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+       * Place offers paid street parking.
+       * 
+ * + * optional bool paid_street_parking = 4; + * + * @return This builder for chaining. + */ + public Builder clearPaidStreetParking() { + bitField0_ = (bitField0_ & ~0x00000008); + paidStreetParking_ = false; + onChanged(); + return this; + } - public static com.google.maps.places.v1.Place parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + private boolean valetParking_; + /** + * + * + *
+       * Place offers valet parking.
+       * 
+ * + * optional bool valet_parking = 5; + * + * @return Whether the valetParking field is set. + */ + @java.lang.Override + public boolean hasValetParking() { + return ((bitField0_ & 0x00000010) != 0); + } + /** + * + * + *
+       * Place offers valet parking.
+       * 
+ * + * optional bool valet_parking = 5; + * + * @return The valetParking. + */ + @java.lang.Override + public boolean getValetParking() { + return valetParking_; + } + /** + * + * + *
+       * Place offers valet parking.
+       * 
+ * + * optional bool valet_parking = 5; + * + * @param value The valetParking to set. + * @return This builder for chaining. + */ + public Builder setValetParking(boolean value) { - public static com.google.maps.places.v1.Place parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + valetParking_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * + * + *
+       * Place offers valet parking.
+       * 
+ * + * optional bool valet_parking = 5; + * + * @return This builder for chaining. + */ + public Builder clearValetParking() { + bitField0_ = (bitField0_ & ~0x00000010); + valetParking_ = false; + onChanged(); + return this; + } - public static com.google.maps.places.v1.Place parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + private boolean freeGarageParking_; + /** + * + * + *
+       * Place offers free garage parking.
+       * 
+ * + * optional bool free_garage_parking = 6; + * + * @return Whether the freeGarageParking field is set. + */ + @java.lang.Override + public boolean hasFreeGarageParking() { + return ((bitField0_ & 0x00000020) != 0); + } + /** + * + * + *
+       * Place offers free garage parking.
+       * 
+ * + * optional bool free_garage_parking = 6; + * + * @return The freeGarageParking. + */ + @java.lang.Override + public boolean getFreeGarageParking() { + return freeGarageParking_; + } + /** + * + * + *
+       * Place offers free garage parking.
+       * 
+ * + * optional bool free_garage_parking = 6; + * + * @param value The freeGarageParking to set. + * @return This builder for chaining. + */ + public Builder setFreeGarageParking(boolean value) { - public static com.google.maps.places.v1.Place parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } + freeGarageParking_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * + * + *
+       * Place offers free garage parking.
+       * 
+ * + * optional bool free_garage_parking = 6; + * + * @return This builder for chaining. + */ + public Builder clearFreeGarageParking() { + bitField0_ = (bitField0_ & ~0x00000020); + freeGarageParking_ = false; + onChanged(); + return this; + } - public static com.google.maps.places.v1.Place parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } + private boolean paidGarageParking_; + /** + * + * + *
+       * Place offers paid garage parking.
+       * 
+ * + * optional bool paid_garage_parking = 7; + * + * @return Whether the paidGarageParking field is set. + */ + @java.lang.Override + public boolean hasPaidGarageParking() { + return ((bitField0_ & 0x00000040) != 0); + } + /** + * + * + *
+       * Place offers paid garage parking.
+       * 
+ * + * optional bool paid_garage_parking = 7; + * + * @return The paidGarageParking. + */ + @java.lang.Override + public boolean getPaidGarageParking() { + return paidGarageParking_; + } + /** + * + * + *
+       * Place offers paid garage parking.
+       * 
+ * + * optional bool paid_garage_parking = 7; + * + * @param value The paidGarageParking to set. + * @return This builder for chaining. + */ + public Builder setPaidGarageParking(boolean value) { - public static com.google.maps.places.v1.Place parseDelimitedFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); - } + paidGarageParking_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * + * + *
+       * Place offers paid garage parking.
+       * 
+ * + * optional bool paid_garage_parking = 7; + * + * @return This builder for chaining. + */ + public Builder clearPaidGarageParking() { + bitField0_ = (bitField0_ & ~0x00000040); + paidGarageParking_ = false; + onChanged(); + return this; + } - public static com.google.maps.places.v1.Place parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } - public static com.google.maps.places.v1.Place parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } - public static com.google.maps.places.v1.Place parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Place.ParkingOptions) + } - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } + // @@protoc_insertion_point(class_scope:google.maps.places.v1.Place.ParkingOptions) + private static final com.google.maps.places.v1.Place.ParkingOptions DEFAULT_INSTANCE; - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.Place.ParkingOptions(); + } - public static Builder newBuilder(com.google.maps.places.v1.Place prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + public static com.google.maps.places.v1.Place.ParkingOptions getDefaultInstance() { + return DEFAULT_INSTANCE; + } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public ParkingOptions 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.maps.places.v1.Place.ParkingOptions getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } } - @java.lang.Override - protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; + public interface SubDestinationOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Place.SubDestination) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+     * The resource name of the sub destination.
+     * 
+ * + * string name = 1 [(.google.api.resource_reference) = { ... } + * + * @return The name. + */ + java.lang.String getName(); + /** + * + * + *
+     * The resource name of the sub destination.
+     * 
+ * + * string name = 1 [(.google.api.resource_reference) = { ... } + * + * @return The bytes for name. + */ + com.google.protobuf.ByteString getNameBytes(); + + /** + * + * + *
+     * The place id of the sub destination.
+     * 
+ * + * string id = 2; + * + * @return The id. + */ + java.lang.String getId(); + /** + * + * + *
+     * The place id of the sub destination.
+     * 
+ * + * string id = 2; + * + * @return The bytes for id. + */ + com.google.protobuf.ByteString getIdBytes(); } /** * * *
-   * All the information representing a Place.
+   * Place resource name and id of sub destinations that relate to the place.
+   * For example, different terminals are different destinations of an airport.
    * 
* - * Protobuf type {@code google.maps.places.v1.Place} + * Protobuf type {@code google.maps.places.v1.Place.SubDestination} */ - public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + public static final class SubDestination extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place) - com.google.maps.places.v1.PlaceOrBuilder { + // @@protoc_insertion_point(message_implements:google.maps.places.v1.Place.SubDestination) + SubDestinationOrBuilder { + private static final long serialVersionUID = 0L; + // Use SubDestination.newBuilder() to construct. + private SubDestination(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private SubDestination() { + name_ = ""; + id_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new SubDestination(); + } + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_descriptor; + .internal_static_google_maps_places_v1_Place_SubDestination_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_fieldAccessorTable + .internal_static_google_maps_places_v1_Place_SubDestination_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.Place.class, com.google.maps.places.v1.Place.Builder.class); + com.google.maps.places.v1.Place.SubDestination.class, + com.google.maps.places.v1.Place.SubDestination.Builder.class); } - // Construct using com.google.maps.places.v1.Place.newBuilder() - private Builder() {} - - private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - } + public static final int NAME_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + /** + * + * + *
+     * The resource name of the sub destination.
+     * 
+ * + * string name = 1 [(.google.api.resource_reference) = { ... } + * + * @return The name. + */ @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - bitField1_ = 0; - id_ = ""; - displayName_ = null; - if (displayNameBuilder_ != null) { - displayNameBuilder_.dispose(); - displayNameBuilder_ = null; - } - types_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000004); - nationalPhoneNumber_ = ""; - internationalPhoneNumber_ = ""; - formattedAddress_ = ""; - if (addressComponentsBuilder_ == null) { - addressComponents_ = java.util.Collections.emptyList(); + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; } else { - addressComponents_ = null; - addressComponentsBuilder_.clear(); + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; } - bitField0_ = (bitField0_ & ~0x00000040); - plusCode_ = null; - if (plusCodeBuilder_ != null) { - plusCodeBuilder_.dispose(); - plusCodeBuilder_ = null; - } - location_ = null; - if (locationBuilder_ != null) { - locationBuilder_.dispose(); - locationBuilder_ = null; - } - viewport_ = null; - if (viewportBuilder_ != null) { - viewportBuilder_.dispose(); - viewportBuilder_ = null; - } - rating_ = 0D; - googleMapsUri_ = ""; - websiteUri_ = ""; - if (reviewsBuilder_ == null) { - reviews_ = java.util.Collections.emptyList(); - } else { - reviews_ = null; - reviewsBuilder_.clear(); - } - bitField0_ = (bitField0_ & ~0x00002000); - openingHours_ = null; - if (openingHoursBuilder_ != null) { - openingHoursBuilder_.dispose(); - openingHoursBuilder_ = null; - } - utcOffsetMinutes_ = 0; - adrFormatAddress_ = ""; - businessStatus_ = 0; - priceLevel_ = 0; - if (attributionsBuilder_ == null) { - attributions_ = java.util.Collections.emptyList(); + } + /** + * + * + *
+     * The resource name of the sub destination.
+     * 
+ * + * string name = 1 [(.google.api.resource_reference) = { ... } + * + * @return The bytes for name. + */ + @java.lang.Override + public com.google.protobuf.ByteString getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + name_ = b; + return b; } else { - attributions_ = null; - attributionsBuilder_.clear(); - } - bitField0_ = (bitField0_ & ~0x00080000); - userRatingCount_ = 0; - iconMaskBaseUri_ = ""; - iconBackgroundColor_ = ""; - takeout_ = false; - delivery_ = false; - dineIn_ = false; - curbsidePickup_ = false; - wheelchairAccessibleEntrance_ = false; - reservable_ = false; - servesBreakfast_ = false; - servesLunch_ = false; - servesDinner_ = false; - servesBeer_ = false; - servesWine_ = false; - servesBrunch_ = false; - servesVegetarianFood_ = false; - currentOpeningHours_ = null; - if (currentOpeningHoursBuilder_ != null) { - currentOpeningHoursBuilder_.dispose(); - currentOpeningHoursBuilder_ = null; + return (com.google.protobuf.ByteString) ref; } - if (currentSecondaryOpeningHoursBuilder_ == null) { - currentSecondaryOpeningHours_ = java.util.Collections.emptyList(); + } + + public static final int ID_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object id_ = ""; + /** + * + * + *
+     * The place id of the sub destination.
+     * 
+ * + * string id = 2; + * + * @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 { - currentSecondaryOpeningHours_ = null; - currentSecondaryOpeningHoursBuilder_.clear(); + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + id_ = s; + return s; } - bitField1_ = (bitField1_ & ~0x00000020); - if (secondaryOpeningHoursBuilder_ == null) { - secondaryOpeningHours_ = java.util.Collections.emptyList(); + } + /** + * + * + *
+     * The place id of the sub destination.
+     * 
+ * + * string id = 2; + * + * @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 { - secondaryOpeningHours_ = null; - secondaryOpeningHoursBuilder_.clear(); - } - bitField1_ = (bitField1_ & ~0x00000040); - editorialSummary_ = null; - if (editorialSummaryBuilder_ != null) { - editorialSummaryBuilder_.dispose(); - editorialSummaryBuilder_ = null; + return (com.google.protobuf.ByteString) ref; } - return this; } - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.maps.places.v1.PlaceProto - .internal_static_google_maps_places_v1_Place_descriptor; - } + private byte memoizedIsInitialized = -1; @java.lang.Override - public com.google.maps.places.v1.Place getDefaultInstanceForType() { - return com.google.maps.places.v1.Place.getDefaultInstance(); + 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 com.google.maps.places.v1.Place build() { - com.google.maps.places.v1.Place result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } - return result; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, id_); + } + getUnknownFields().writeTo(output); } @java.lang.Override - public com.google.maps.places.v1.Place buildPartial() { - com.google.maps.places.v1.Place result = new com.google.maps.places.v1.Place(this); - buildPartialRepeatedFields(result); - if (bitField0_ != 0) { - buildPartial0(result); + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } - if (bitField1_ != 0) { - buildPartial1(result); + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, id_); } - onBuilt(); - return result; + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } - private void buildPartialRepeatedFields(com.google.maps.places.v1.Place result) { - if (((bitField0_ & 0x00000004) != 0)) { - types_ = types_.getUnmodifiableView(); - bitField0_ = (bitField0_ & ~0x00000004); - } - result.types_ = types_; - if (addressComponentsBuilder_ == null) { - if (((bitField0_ & 0x00000040) != 0)) { - addressComponents_ = java.util.Collections.unmodifiableList(addressComponents_); - bitField0_ = (bitField0_ & ~0x00000040); - } - result.addressComponents_ = addressComponents_; - } else { - result.addressComponents_ = addressComponentsBuilder_.build(); - } - if (reviewsBuilder_ == null) { - if (((bitField0_ & 0x00002000) != 0)) { - reviews_ = java.util.Collections.unmodifiableList(reviews_); - bitField0_ = (bitField0_ & ~0x00002000); - } - result.reviews_ = reviews_; - } else { - result.reviews_ = reviewsBuilder_.build(); - } - if (attributionsBuilder_ == null) { - if (((bitField0_ & 0x00080000) != 0)) { - attributions_ = java.util.Collections.unmodifiableList(attributions_); - bitField0_ = (bitField0_ & ~0x00080000); - } - result.attributions_ = attributions_; - } else { - result.attributions_ = attributionsBuilder_.build(); - } - if (currentSecondaryOpeningHoursBuilder_ == null) { - if (((bitField1_ & 0x00000020) != 0)) { - currentSecondaryOpeningHours_ = - java.util.Collections.unmodifiableList(currentSecondaryOpeningHours_); - bitField1_ = (bitField1_ & ~0x00000020); - } - result.currentSecondaryOpeningHours_ = currentSecondaryOpeningHours_; - } else { - result.currentSecondaryOpeningHours_ = currentSecondaryOpeningHoursBuilder_.build(); + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; } - if (secondaryOpeningHoursBuilder_ == null) { - if (((bitField1_ & 0x00000040) != 0)) { - secondaryOpeningHours_ = java.util.Collections.unmodifiableList(secondaryOpeningHours_); - bitField1_ = (bitField1_ & ~0x00000040); - } - result.secondaryOpeningHours_ = secondaryOpeningHours_; - } else { - result.secondaryOpeningHours_ = secondaryOpeningHoursBuilder_.build(); + if (!(obj instanceof com.google.maps.places.v1.Place.SubDestination)) { + return super.equals(obj); } + com.google.maps.places.v1.Place.SubDestination other = + (com.google.maps.places.v1.Place.SubDestination) obj; + + if (!getName().equals(other.getName())) return false; + if (!getId().equals(other.getId())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; } - private void buildPartial0(com.google.maps.places.v1.Place result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.id_ = id_; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.displayName_ = - displayNameBuilder_ == null ? displayName_ : displayNameBuilder_.build(); - } - if (((from_bitField0_ & 0x00000008) != 0)) { - result.nationalPhoneNumber_ = nationalPhoneNumber_; - } - if (((from_bitField0_ & 0x00000010) != 0)) { - result.internationalPhoneNumber_ = internationalPhoneNumber_; - } - if (((from_bitField0_ & 0x00000020) != 0)) { - result.formattedAddress_ = formattedAddress_; - } - if (((from_bitField0_ & 0x00000080) != 0)) { - result.plusCode_ = plusCodeBuilder_ == null ? plusCode_ : plusCodeBuilder_.build(); - } - if (((from_bitField0_ & 0x00000100) != 0)) { - result.location_ = locationBuilder_ == null ? location_ : locationBuilder_.build(); - } - if (((from_bitField0_ & 0x00000200) != 0)) { - result.viewport_ = viewportBuilder_ == null ? viewport_ : viewportBuilder_.build(); - } - if (((from_bitField0_ & 0x00000400) != 0)) { - result.rating_ = rating_; - } - if (((from_bitField0_ & 0x00000800) != 0)) { - result.googleMapsUri_ = googleMapsUri_; - } - if (((from_bitField0_ & 0x00001000) != 0)) { - result.websiteUri_ = websiteUri_; - } - if (((from_bitField0_ & 0x00004000) != 0)) { - result.openingHours_ = - openingHoursBuilder_ == null ? openingHours_ : openingHoursBuilder_.build(); - } - if (((from_bitField0_ & 0x00008000) != 0)) { - result.utcOffsetMinutes_ = utcOffsetMinutes_; - } - if (((from_bitField0_ & 0x00010000) != 0)) { - result.adrFormatAddress_ = adrFormatAddress_; - } - if (((from_bitField0_ & 0x00020000) != 0)) { - result.businessStatus_ = businessStatus_; - } - if (((from_bitField0_ & 0x00040000) != 0)) { - result.priceLevel_ = priceLevel_; - } - if (((from_bitField0_ & 0x00100000) != 0)) { - result.userRatingCount_ = userRatingCount_; + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; } - if (((from_bitField0_ & 0x00200000) != 0)) { - result.iconMaskBaseUri_ = iconMaskBaseUri_; - } - if (((from_bitField0_ & 0x00400000) != 0)) { - result.iconBackgroundColor_ = iconBackgroundColor_; - } - int to_bitField0_ = 0; - if (((from_bitField0_ & 0x00800000) != 0)) { - result.takeout_ = takeout_; - to_bitField0_ |= 0x00000001; - } - if (((from_bitField0_ & 0x01000000) != 0)) { - result.delivery_ = delivery_; - to_bitField0_ |= 0x00000002; - } - if (((from_bitField0_ & 0x02000000) != 0)) { - result.dineIn_ = dineIn_; - to_bitField0_ |= 0x00000004; - } - if (((from_bitField0_ & 0x04000000) != 0)) { - result.curbsidePickup_ = curbsidePickup_; - to_bitField0_ |= 0x00000008; - } - if (((from_bitField0_ & 0x08000000) != 0)) { - result.wheelchairAccessibleEntrance_ = wheelchairAccessibleEntrance_; - to_bitField0_ |= 0x00000010; - } - if (((from_bitField0_ & 0x10000000) != 0)) { - result.reservable_ = reservable_; - to_bitField0_ |= 0x00000020; - } - if (((from_bitField0_ & 0x20000000) != 0)) { - result.servesBreakfast_ = servesBreakfast_; - to_bitField0_ |= 0x00000040; - } - if (((from_bitField0_ & 0x40000000) != 0)) { - result.servesLunch_ = servesLunch_; - to_bitField0_ |= 0x00000080; - } - if (((from_bitField0_ & 0x80000000) != 0)) { - result.servesDinner_ = servesDinner_; - to_bitField0_ |= 0x00000100; - } - result.bitField0_ |= to_bitField0_; + 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 = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - private void buildPartial1(com.google.maps.places.v1.Place result) { - int from_bitField1_ = bitField1_; - int to_bitField0_ = 0; - if (((from_bitField1_ & 0x00000001) != 0)) { - result.servesBeer_ = servesBeer_; - to_bitField0_ |= 0x00000200; - } - if (((from_bitField1_ & 0x00000002) != 0)) { - result.servesWine_ = servesWine_; - to_bitField0_ |= 0x00000400; - } - if (((from_bitField1_ & 0x00000004) != 0)) { - result.servesBrunch_ = servesBrunch_; - to_bitField0_ |= 0x00000800; - } - if (((from_bitField1_ & 0x00000008) != 0)) { - result.servesVegetarianFood_ = servesVegetarianFood_; - to_bitField0_ |= 0x00001000; - } - if (((from_bitField1_ & 0x00000010) != 0)) { - result.currentOpeningHours_ = - currentOpeningHoursBuilder_ == null - ? currentOpeningHours_ - : currentOpeningHoursBuilder_.build(); - } - if (((from_bitField1_ & 0x00000080) != 0)) { - result.editorialSummary_ = - editorialSummaryBuilder_ == null ? editorialSummary_ : editorialSummaryBuilder_.build(); - } - result.bitField0_ |= to_bitField0_; + public static com.google.maps.places.v1.Place.SubDestination parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - @java.lang.Override - public Builder clone() { - return super.clone(); + public static com.google.maps.places.v1.Place.SubDestination parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.setField(field, value); + public static com.google.maps.places.v1.Place.SubDestination parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - @java.lang.Override - public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); + public static com.google.maps.places.v1.Place.SubDestination 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 clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); + public static com.google.maps.places.v1.Place.SubDestination parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Place.SubDestination parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Place.SubDestination parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Place.SubDestination parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.Place.SubDestination parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Place.SubDestination parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.Place.SubDestination parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Place.SubDestination parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); } @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.maps.places.v1.Place.SubDestination prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.addRepeatedField(field, value); + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.maps.places.v1.Place) { - return mergeFrom((com.google.maps.places.v1.Place) other); - } else { - super.mergeFrom(other); + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+     * Place resource name and id of sub destinations that relate to the place.
+     * For example, different terminals are different destinations of an airport.
+     * 
+ * + * Protobuf type {@code google.maps.places.v1.Place.SubDestination} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place.SubDestination) + com.google.maps.places.v1.Place.SubDestinationOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_SubDestination_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_SubDestination_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Place.SubDestination.class, + com.google.maps.places.v1.Place.SubDestination.Builder.class); + } + + // Construct using com.google.maps.places.v1.Place.SubDestination.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + id_ = ""; return this; } - } - public Builder mergeFrom(com.google.maps.places.v1.Place other) { - if (other == com.google.maps.places.v1.Place.getDefaultInstance()) return this; - if (!other.getId().isEmpty()) { - id_ = other.id_; - bitField0_ |= 0x00000001; - onChanged(); + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_SubDestination_descriptor; } - if (other.hasDisplayName()) { - mergeDisplayName(other.getDisplayName()); + + @java.lang.Override + public com.google.maps.places.v1.Place.SubDestination getDefaultInstanceForType() { + return com.google.maps.places.v1.Place.SubDestination.getDefaultInstance(); } - if (!other.types_.isEmpty()) { - if (types_.isEmpty()) { - types_ = other.types_; - bitField0_ = (bitField0_ & ~0x00000004); - } else { - ensureTypesIsMutable(); - types_.addAll(other.types_); + + @java.lang.Override + public com.google.maps.places.v1.Place.SubDestination build() { + com.google.maps.places.v1.Place.SubDestination result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } - onChanged(); + return result; } - if (!other.getNationalPhoneNumber().isEmpty()) { - nationalPhoneNumber_ = other.nationalPhoneNumber_; - bitField0_ |= 0x00000008; - onChanged(); + + @java.lang.Override + public com.google.maps.places.v1.Place.SubDestination buildPartial() { + com.google.maps.places.v1.Place.SubDestination result = + new com.google.maps.places.v1.Place.SubDestination(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; } - if (!other.getInternationalPhoneNumber().isEmpty()) { - internationalPhoneNumber_ = other.internationalPhoneNumber_; - bitField0_ |= 0x00000010; - onChanged(); + + private void buildPartial0(com.google.maps.places.v1.Place.SubDestination result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.id_ = id_; + } } - if (!other.getFormattedAddress().isEmpty()) { - formattedAddress_ = other.formattedAddress_; - bitField0_ |= 0x00000020; - onChanged(); + + @java.lang.Override + public Builder clone() { + return super.clone(); } - if (addressComponentsBuilder_ == null) { - if (!other.addressComponents_.isEmpty()) { - if (addressComponents_.isEmpty()) { - addressComponents_ = other.addressComponents_; - bitField0_ = (bitField0_ & ~0x00000040); - } else { - ensureAddressComponentsIsMutable(); - addressComponents_.addAll(other.addressComponents_); - } - onChanged(); - } - } else { - if (!other.addressComponents_.isEmpty()) { - if (addressComponentsBuilder_.isEmpty()) { - addressComponentsBuilder_.dispose(); - addressComponentsBuilder_ = null; - addressComponents_ = other.addressComponents_; - bitField0_ = (bitField0_ & ~0x00000040); - addressComponentsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders - ? getAddressComponentsFieldBuilder() - : null; - } else { - addressComponentsBuilder_.addAllMessages(other.addressComponents_); - } - } - } - if (other.hasPlusCode()) { - mergePlusCode(other.getPlusCode()); + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); } - if (other.hasLocation()) { - mergeLocation(other.getLocation()); + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); } - if (other.hasViewport()) { - mergeViewport(other.getViewport()); + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); } - if (other.getRating() != 0D) { - setRating(other.getRating()); + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); } - if (!other.getGoogleMapsUri().isEmpty()) { - googleMapsUri_ = other.googleMapsUri_; - bitField0_ |= 0x00000800; - onChanged(); + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); } - if (!other.getWebsiteUri().isEmpty()) { - websiteUri_ = other.websiteUri_; - bitField0_ |= 0x00001000; - onChanged(); + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.Place.SubDestination) { + return mergeFrom((com.google.maps.places.v1.Place.SubDestination) other); + } else { + super.mergeFrom(other); + return this; + } } - if (reviewsBuilder_ == null) { - if (!other.reviews_.isEmpty()) { - if (reviews_.isEmpty()) { - reviews_ = other.reviews_; - bitField0_ = (bitField0_ & ~0x00002000); - } else { - ensureReviewsIsMutable(); - reviews_.addAll(other.reviews_); - } + + public Builder mergeFrom(com.google.maps.places.v1.Place.SubDestination other) { + if (other == com.google.maps.places.v1.Place.SubDestination.getDefaultInstance()) + return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; onChanged(); } - } else { - if (!other.reviews_.isEmpty()) { - if (reviewsBuilder_.isEmpty()) { - reviewsBuilder_.dispose(); - reviewsBuilder_ = null; - reviews_ = other.reviews_; - bitField0_ = (bitField0_ & ~0x00002000); - reviewsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders - ? getReviewsFieldBuilder() - : null; - } else { - reviewsBuilder_.addAllMessages(other.reviews_); - } + if (!other.getId().isEmpty()) { + id_ = other.id_; + bitField0_ |= 0x00000002; + onChanged(); } - } - if (other.hasOpeningHours()) { - mergeOpeningHours(other.getOpeningHours()); - } - if (other.getUtcOffsetMinutes() != 0) { - setUtcOffsetMinutes(other.getUtcOffsetMinutes()); - } - if (!other.getAdrFormatAddress().isEmpty()) { - adrFormatAddress_ = other.adrFormatAddress_; - bitField0_ |= 0x00010000; + this.mergeUnknownFields(other.getUnknownFields()); onChanged(); + return this; } - if (other.businessStatus_ != 0) { - setBusinessStatusValue(other.getBusinessStatusValue()); - } - if (other.priceLevel_ != 0) { - setPriceLevelValue(other.getPriceLevelValue()); + + @java.lang.Override + public final boolean isInitialized() { + return true; } - if (attributionsBuilder_ == null) { - if (!other.attributions_.isEmpty()) { - if (attributions_.isEmpty()) { - attributions_ = other.attributions_; - bitField0_ = (bitField0_ & ~0x00080000); - } else { - ensureAttributionsIsMutable(); - attributions_.addAll(other.attributions_); - } - onChanged(); + + @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(); } - } else { - if (!other.attributions_.isEmpty()) { - if (attributionsBuilder_.isEmpty()) { - attributionsBuilder_.dispose(); - attributionsBuilder_ = null; - attributions_ = other.attributions_; - bitField0_ = (bitField0_ & ~0x00080000); - attributionsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders - ? getAttributionsFieldBuilder() - : null; - } else { - attributionsBuilder_.addAllMessages(other.attributions_); - } + 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 + 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_ = ""; + /** + * + * + *
+       * The resource name of the sub destination.
+       * 
+ * + * string name = 1 [(.google.api.resource_reference) = { ... } + * + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; } } - if (other.getUserRatingCount() != 0) { - setUserRatingCount(other.getUserRatingCount()); + /** + * + * + *
+       * The resource name of the sub destination.
+       * 
+ * + * string name = 1 [(.google.api.resource_reference) = { ... } + * + * @return The bytes for name. + */ + public com.google.protobuf.ByteString getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - if (!other.getIconMaskBaseUri().isEmpty()) { - iconMaskBaseUri_ = other.iconMaskBaseUri_; - bitField0_ |= 0x00200000; + /** + * + * + *
+       * The resource name of the sub destination.
+       * 
+ * + * string name = 1 [(.google.api.resource_reference) = { ... } + * + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + name_ = value; + bitField0_ |= 0x00000001; onChanged(); + return this; } - if (!other.getIconBackgroundColor().isEmpty()) { - iconBackgroundColor_ = other.iconBackgroundColor_; - bitField0_ |= 0x00400000; + /** + * + * + *
+       * The resource name of the sub destination.
+       * 
+ * + * string name = 1 [(.google.api.resource_reference) = { ... } + * + * @return This builder for chaining. + */ + public Builder clearName() { + name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); + return this; } - if (other.hasTakeout()) { - setTakeout(other.getTakeout()); + /** + * + * + *
+       * The resource name of the sub destination.
+       * 
+ * + * string name = 1 [(.google.api.resource_reference) = { ... } + * + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + name_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; } - if (other.hasDelivery()) { - setDelivery(other.getDelivery()); - } - if (other.hasDineIn()) { - setDineIn(other.getDineIn()); - } - if (other.hasCurbsidePickup()) { - setCurbsidePickup(other.getCurbsidePickup()); - } - if (other.hasWheelchairAccessibleEntrance()) { - setWheelchairAccessibleEntrance(other.getWheelchairAccessibleEntrance()); - } - if (other.hasReservable()) { - setReservable(other.getReservable()); - } - if (other.hasServesBreakfast()) { - setServesBreakfast(other.getServesBreakfast()); - } - if (other.hasServesLunch()) { - setServesLunch(other.getServesLunch()); - } - if (other.hasServesDinner()) { - setServesDinner(other.getServesDinner()); - } - if (other.hasServesBeer()) { - setServesBeer(other.getServesBeer()); - } - if (other.hasServesWine()) { - setServesWine(other.getServesWine()); + + private java.lang.Object id_ = ""; + /** + * + * + *
+       * The place id of the sub destination.
+       * 
+ * + * string id = 2; + * + * @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; + } } - if (other.hasServesBrunch()) { - setServesBrunch(other.getServesBrunch()); + /** + * + * + *
+       * The place id of the sub destination.
+       * 
+ * + * string id = 2; + * + * @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; + } } - if (other.hasServesVegetarianFood()) { - setServesVegetarianFood(other.getServesVegetarianFood()); + /** + * + * + *
+       * The place id of the sub destination.
+       * 
+ * + * string id = 2; + * + * @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; } - if (other.hasCurrentOpeningHours()) { - mergeCurrentOpeningHours(other.getCurrentOpeningHours()); + /** + * + * + *
+       * The place id of the sub destination.
+       * 
+ * + * string id = 2; + * + * @return This builder for chaining. + */ + public Builder clearId() { + id_ = getDefaultInstance().getId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; } - if (currentSecondaryOpeningHoursBuilder_ == null) { - if (!other.currentSecondaryOpeningHours_.isEmpty()) { - if (currentSecondaryOpeningHours_.isEmpty()) { - currentSecondaryOpeningHours_ = other.currentSecondaryOpeningHours_; - bitField1_ = (bitField1_ & ~0x00000020); - } else { - ensureCurrentSecondaryOpeningHoursIsMutable(); - currentSecondaryOpeningHours_.addAll(other.currentSecondaryOpeningHours_); - } - onChanged(); - } - } else { - if (!other.currentSecondaryOpeningHours_.isEmpty()) { - if (currentSecondaryOpeningHoursBuilder_.isEmpty()) { - currentSecondaryOpeningHoursBuilder_.dispose(); - currentSecondaryOpeningHoursBuilder_ = null; - currentSecondaryOpeningHours_ = other.currentSecondaryOpeningHours_; - bitField1_ = (bitField1_ & ~0x00000020); - currentSecondaryOpeningHoursBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders - ? getCurrentSecondaryOpeningHoursFieldBuilder() - : null; - } else { - currentSecondaryOpeningHoursBuilder_.addAllMessages( - other.currentSecondaryOpeningHours_); - } + /** + * + * + *
+       * The place id of the sub destination.
+       * 
+ * + * string id = 2; + * + * @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; } - if (secondaryOpeningHoursBuilder_ == null) { - if (!other.secondaryOpeningHours_.isEmpty()) { - if (secondaryOpeningHours_.isEmpty()) { - secondaryOpeningHours_ = other.secondaryOpeningHours_; - bitField1_ = (bitField1_ & ~0x00000040); - } else { - ensureSecondaryOpeningHoursIsMutable(); - secondaryOpeningHours_.addAll(other.secondaryOpeningHours_); - } - onChanged(); - } - } else { - if (!other.secondaryOpeningHours_.isEmpty()) { - if (secondaryOpeningHoursBuilder_.isEmpty()) { - secondaryOpeningHoursBuilder_.dispose(); - secondaryOpeningHoursBuilder_ = null; - secondaryOpeningHours_ = other.secondaryOpeningHours_; - bitField1_ = (bitField1_ & ~0x00000040); - secondaryOpeningHoursBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders - ? getSecondaryOpeningHoursFieldBuilder() - : null; - } else { - secondaryOpeningHoursBuilder_.addAllMessages(other.secondaryOpeningHours_); - } - } + + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); } - if (other.hasEditorialSummary()) { - mergeEditorialSummary(other.getEditorialSummary()); + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Place.SubDestination) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.Place.SubDestination) + private static final com.google.maps.places.v1.Place.SubDestination DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.Place.SubDestination(); + } + + public static com.google.maps.places.v1.Place.SubDestination getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public SubDestination 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 18: - { - id_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 18 - case 42: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureTypesIsMutable(); - types_.add(s); - break; - } // case 42 - case 58: - { - nationalPhoneNumber_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000008; - break; - } // case 58 - case 66: - { - internationalPhoneNumber_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000010; - break; - } // case 66 - case 74: - { - formattedAddress_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000020; - break; - } // case 74 - case 82: - { - com.google.maps.places.v1.Place.AddressComponent m = - input.readMessage( - com.google.maps.places.v1.Place.AddressComponent.parser(), - extensionRegistry); - if (addressComponentsBuilder_ == null) { - ensureAddressComponentsIsMutable(); - addressComponents_.add(m); - } else { - addressComponentsBuilder_.addMessage(m); - } - break; - } // case 82 - case 90: - { - input.readMessage(getPlusCodeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000080; - break; - } // case 90 - case 98: + public com.google.maps.places.v1.Place.SubDestination getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface AccessibilityOptionsOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Place.AccessibilityOptions) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+     * Places has wheelchair accessible entrance.
+     * 
+ * + * optional bool wheelchair_accessible_entrance = 2; + * + * @return Whether the wheelchairAccessibleEntrance field is set. + */ + boolean hasWheelchairAccessibleEntrance(); + /** + * + * + *
+     * Places has wheelchair accessible entrance.
+     * 
+ * + * optional bool wheelchair_accessible_entrance = 2; + * + * @return The wheelchairAccessibleEntrance. + */ + boolean getWheelchairAccessibleEntrance(); + } + /** + * + * + *
+   * Information about the accessibility options a place offers.
+   * 
+ * + * Protobuf type {@code google.maps.places.v1.Place.AccessibilityOptions} + */ + public static final class AccessibilityOptions extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.Place.AccessibilityOptions) + AccessibilityOptionsOrBuilder { + private static final long serialVersionUID = 0L; + // Use AccessibilityOptions.newBuilder() to construct. + private AccessibilityOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private AccessibilityOptions() {} + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new AccessibilityOptions(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_AccessibilityOptions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_AccessibilityOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Place.AccessibilityOptions.class, + com.google.maps.places.v1.Place.AccessibilityOptions.Builder.class); + } + + private int bitField0_; + public static final int WHEELCHAIR_ACCESSIBLE_ENTRANCE_FIELD_NUMBER = 2; + private boolean wheelchairAccessibleEntrance_ = false; + /** + * + * + *
+     * Places has wheelchair accessible entrance.
+     * 
+ * + * optional bool wheelchair_accessible_entrance = 2; + * + * @return Whether the wheelchairAccessibleEntrance field is set. + */ + @java.lang.Override + public boolean hasWheelchairAccessibleEntrance() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * + * + *
+     * Places has wheelchair accessible entrance.
+     * 
+ * + * optional bool wheelchair_accessible_entrance = 2; + * + * @return The wheelchairAccessibleEntrance. + */ + @java.lang.Override + public boolean getWheelchairAccessibleEntrance() { + return wheelchairAccessibleEntrance_; + } + + 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.writeBool(2, wheelchairAccessibleEntrance_); + } + 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.computeBoolSize(2, wheelchairAccessibleEntrance_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.maps.places.v1.Place.AccessibilityOptions)) { + return super.equals(obj); + } + com.google.maps.places.v1.Place.AccessibilityOptions other = + (com.google.maps.places.v1.Place.AccessibilityOptions) obj; + + if (hasWheelchairAccessibleEntrance() != other.hasWheelchairAccessibleEntrance()) + return false; + if (hasWheelchairAccessibleEntrance()) { + if (getWheelchairAccessibleEntrance() != other.getWheelchairAccessibleEntrance()) + 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 (hasWheelchairAccessibleEntrance()) { + hash = (37 * hash) + WHEELCHAIR_ACCESSIBLE_ENTRANCE_FIELD_NUMBER; + hash = + (53 * hash) + + com.google.protobuf.Internal.hashBoolean(getWheelchairAccessibleEntrance()); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.Place.AccessibilityOptions parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Place.AccessibilityOptions parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Place.AccessibilityOptions parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Place.AccessibilityOptions parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Place.AccessibilityOptions parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Place.AccessibilityOptions parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Place.AccessibilityOptions parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Place.AccessibilityOptions parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.Place.AccessibilityOptions parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Place.AccessibilityOptions parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.Place.AccessibilityOptions parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Place.AccessibilityOptions parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.maps.places.v1.Place.AccessibilityOptions 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+     * Information about the accessibility options a place offers.
+     * 
+ * + * Protobuf type {@code google.maps.places.v1.Place.AccessibilityOptions} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place.AccessibilityOptions) + com.google.maps.places.v1.Place.AccessibilityOptionsOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_AccessibilityOptions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_AccessibilityOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Place.AccessibilityOptions.class, + com.google.maps.places.v1.Place.AccessibilityOptions.Builder.class); + } + + // Construct using com.google.maps.places.v1.Place.AccessibilityOptions.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + wheelchairAccessibleEntrance_ = false; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_AccessibilityOptions_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.Place.AccessibilityOptions getDefaultInstanceForType() { + return com.google.maps.places.v1.Place.AccessibilityOptions.getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.Place.AccessibilityOptions build() { + com.google.maps.places.v1.Place.AccessibilityOptions result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.Place.AccessibilityOptions buildPartial() { + com.google.maps.places.v1.Place.AccessibilityOptions result = + new com.google.maps.places.v1.Place.AccessibilityOptions(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.maps.places.v1.Place.AccessibilityOptions result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.wheelchairAccessibleEntrance_ = wheelchairAccessibleEntrance_; + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.Place.AccessibilityOptions) { + return mergeFrom((com.google.maps.places.v1.Place.AccessibilityOptions) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.maps.places.v1.Place.AccessibilityOptions other) { + if (other == com.google.maps.places.v1.Place.AccessibilityOptions.getDefaultInstance()) + return this; + if (other.hasWheelchairAccessibleEntrance()) { + setWheelchairAccessibleEntrance(other.getWheelchairAccessibleEntrance()); + } + 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 16: + { + wheelchairAccessibleEntrance_ = input.readBool(); + bitField0_ |= 0x00000001; + 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 wheelchairAccessibleEntrance_; + /** + * + * + *
+       * Places has wheelchair accessible entrance.
+       * 
+ * + * optional bool wheelchair_accessible_entrance = 2; + * + * @return Whether the wheelchairAccessibleEntrance field is set. + */ + @java.lang.Override + public boolean hasWheelchairAccessibleEntrance() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * + * + *
+       * Places has wheelchair accessible entrance.
+       * 
+ * + * optional bool wheelchair_accessible_entrance = 2; + * + * @return The wheelchairAccessibleEntrance. + */ + @java.lang.Override + public boolean getWheelchairAccessibleEntrance() { + return wheelchairAccessibleEntrance_; + } + /** + * + * + *
+       * Places has wheelchair accessible entrance.
+       * 
+ * + * optional bool wheelchair_accessible_entrance = 2; + * + * @param value The wheelchairAccessibleEntrance to set. + * @return This builder for chaining. + */ + public Builder setWheelchairAccessibleEntrance(boolean value) { + + wheelchairAccessibleEntrance_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+       * Places has wheelchair accessible entrance.
+       * 
+ * + * optional bool wheelchair_accessible_entrance = 2; + * + * @return This builder for chaining. + */ + public Builder clearWheelchairAccessibleEntrance() { + bitField0_ = (bitField0_ & ~0x00000001); + wheelchairAccessibleEntrance_ = false; + onChanged(); + return this; + } + + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Place.AccessibilityOptions) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.Place.AccessibilityOptions) + private static final com.google.maps.places.v1.Place.AccessibilityOptions DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.Place.AccessibilityOptions(); + } + + public static com.google.maps.places.v1.Place.AccessibilityOptions getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public AccessibilityOptions 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.maps.places.v1.Place.AccessibilityOptions getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + private int bitField0_; + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + /** + * + * + *
+   * Output only. An ID representing this place which may be used to look up
+   * this place again (a.k.a. the API "resource" name: places/<place_id>).
+   * 
+ * + * string name = 1 [(.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. An ID representing this place which may be used to look up
+   * this place again (a.k.a. the API "resource" name: places/<place_id>).
+   * 
+ * + * string name = 1 [(.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 final int ID_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object id_ = ""; + /** + * + * + *
+   * Output only. The unique identifier of a place.
+   * 
+ * + * string id = 2 [(.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. The unique identifier of a place.
+   * 
+ * + * string id = 2 [(.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 DISPLAY_NAME_FIELD_NUMBER = 31; + private com.google.type.LocalizedText displayName_; + /** + * + * + *
+   * Output only. The localized name of the place, suitable as a short
+   * human-readable description. For example, "Google Sydney", "Starbucks",
+   * "Pyrmont", etc.
+   * 
+ * + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the displayName field is set. + */ + @java.lang.Override + public boolean hasDisplayName() { + return displayName_ != null; + } + /** + * + * + *
+   * Output only. The localized name of the place, suitable as a short
+   * human-readable description. For example, "Google Sydney", "Starbucks",
+   * "Pyrmont", etc.
+   * 
+ * + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The displayName. + */ + @java.lang.Override + public com.google.type.LocalizedText getDisplayName() { + return displayName_ == null ? com.google.type.LocalizedText.getDefaultInstance() : displayName_; + } + /** + * + * + *
+   * Output only. The localized name of the place, suitable as a short
+   * human-readable description. For example, "Google Sydney", "Starbucks",
+   * "Pyrmont", etc.
+   * 
+ * + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.type.LocalizedTextOrBuilder getDisplayNameOrBuilder() { + return displayName_ == null ? com.google.type.LocalizedText.getDefaultInstance() : displayName_; + } + + public static final int TYPES_FIELD_NUMBER = 5; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList types_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * + * + *
+   * Output only. A set of type tags for this result. For example, "political"
+   * and "locality".
+   * 
+ * + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return A list containing the types. + */ + public com.google.protobuf.ProtocolStringList getTypesList() { + return types_; + } + /** + * + * + *
+   * Output only. A set of type tags for this result. For example, "political"
+   * and "locality".
+   * 
+ * + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The count of types. + */ + public int getTypesCount() { + return types_.size(); + } + /** + * + * + *
+   * Output only. A set of type tags for this result. For example, "political"
+   * and "locality".
+   * 
+ * + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param index The index of the element to return. + * @return The types at the given index. + */ + public java.lang.String getTypes(int index) { + return types_.get(index); + } + /** + * + * + *
+   * Output only. A set of type tags for this result. For example, "political"
+   * and "locality".
+   * 
+ * + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param index The index of the value to return. + * @return The bytes of the types at the given index. + */ + public com.google.protobuf.ByteString getTypesBytes(int index) { + return types_.getByteString(index); + } + + public static final int NATIONAL_PHONE_NUMBER_FIELD_NUMBER = 7; + + @SuppressWarnings("serial") + private volatile java.lang.Object nationalPhoneNumber_ = ""; + /** + * + * + *
+   * Output only. A human-readable phone number for the place, in national
+   * format.
+   * 
+ * + * string national_phone_number = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The nationalPhoneNumber. + */ + @java.lang.Override + public java.lang.String getNationalPhoneNumber() { + java.lang.Object ref = nationalPhoneNumber_; + 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(); + nationalPhoneNumber_ = s; + return s; + } + } + /** + * + * + *
+   * Output only. A human-readable phone number for the place, in national
+   * format.
+   * 
+ * + * string national_phone_number = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for nationalPhoneNumber. + */ + @java.lang.Override + public com.google.protobuf.ByteString getNationalPhoneNumberBytes() { + java.lang.Object ref = nationalPhoneNumber_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + nationalPhoneNumber_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int INTERNATIONAL_PHONE_NUMBER_FIELD_NUMBER = 8; + + @SuppressWarnings("serial") + private volatile java.lang.Object internationalPhoneNumber_ = ""; + /** + * + * + *
+   * Output only. A human-readable phone number for the place, in international
+   * format.
+   * 
+ * + * string international_phone_number = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The internationalPhoneNumber. + */ + @java.lang.Override + public java.lang.String getInternationalPhoneNumber() { + java.lang.Object ref = internationalPhoneNumber_; + 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(); + internationalPhoneNumber_ = s; + return s; + } + } + /** + * + * + *
+   * Output only. A human-readable phone number for the place, in international
+   * format.
+   * 
+ * + * string international_phone_number = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for internationalPhoneNumber. + */ + @java.lang.Override + public com.google.protobuf.ByteString getInternationalPhoneNumberBytes() { + java.lang.Object ref = internationalPhoneNumber_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + internationalPhoneNumber_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int FORMATTED_ADDRESS_FIELD_NUMBER = 9; + + @SuppressWarnings("serial") + private volatile java.lang.Object formattedAddress_ = ""; + /** + * + * + *
+   * Output only. A full, human-readable address for this place.
+   * 
+ * + * string formatted_address = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The formattedAddress. + */ + @java.lang.Override + public java.lang.String getFormattedAddress() { + java.lang.Object ref = formattedAddress_; + 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(); + formattedAddress_ = s; + return s; + } + } + /** + * + * + *
+   * Output only. A full, human-readable address for this place.
+   * 
+ * + * string formatted_address = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for formattedAddress. + */ + @java.lang.Override + public com.google.protobuf.ByteString getFormattedAddressBytes() { + java.lang.Object ref = formattedAddress_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + formattedAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ADDRESS_COMPONENTS_FIELD_NUMBER = 10; + + @SuppressWarnings("serial") + private java.util.List addressComponents_; + /** + * + * + *
+   * Output only. Repeated components for each locality level.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getAddressComponentsList() { + return addressComponents_; + } + /** + * + * + *
+   * Output only. Repeated components for each locality level.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getAddressComponentsOrBuilderList() { + return addressComponents_; + } + /** + * + * + *
+   * Output only. Repeated components for each locality level.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getAddressComponentsCount() { + return addressComponents_.size(); + } + /** + * + * + *
+   * Output only. Repeated components for each locality level.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.AddressComponent getAddressComponents(int index) { + return addressComponents_.get(index); + } + /** + * + * + *
+   * Output only. Repeated components for each locality level.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOrBuilder( + int index) { + return addressComponents_.get(index); + } + + public static final int PLUS_CODE_FIELD_NUMBER = 11; + private com.google.maps.places.v1.Place.PlusCode plusCode_; + /** + * + * + *
+   * Output only. Plus code of the place location lat/long.
+   * 
+ * + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the plusCode field is set. + */ + @java.lang.Override + public boolean hasPlusCode() { + return plusCode_ != null; + } + /** + * + * + *
+   * Output only. Plus code of the place location lat/long.
+   * 
+ * + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The plusCode. + */ + @java.lang.Override + public com.google.maps.places.v1.Place.PlusCode getPlusCode() { + return plusCode_ == null + ? com.google.maps.places.v1.Place.PlusCode.getDefaultInstance() + : plusCode_; + } + /** + * + * + *
+   * Output only. Plus code of the place location lat/long.
+   * 
+ * + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.PlusCodeOrBuilder getPlusCodeOrBuilder() { + return plusCode_ == null + ? com.google.maps.places.v1.Place.PlusCode.getDefaultInstance() + : plusCode_; + } + + public static final int LOCATION_FIELD_NUMBER = 12; + private com.google.type.LatLng location_; + /** + * + * + *
+   * Output only. The position of this place.
+   * 
+ * + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the location field is set. + */ + @java.lang.Override + public boolean hasLocation() { + return location_ != null; + } + /** + * + * + *
+   * Output only. The position of this place.
+   * 
+ * + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The location. + */ + @java.lang.Override + public com.google.type.LatLng getLocation() { + return location_ == null ? com.google.type.LatLng.getDefaultInstance() : location_; + } + /** + * + * + *
+   * Output only. The position of this place.
+   * 
+ * + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + @java.lang.Override + public com.google.type.LatLngOrBuilder getLocationOrBuilder() { + return location_ == null ? com.google.type.LatLng.getDefaultInstance() : location_; + } + + public static final int VIEWPORT_FIELD_NUMBER = 13; + private com.google.geo.type.Viewport viewport_; + /** + * + * + *
+   * Output only. A viewport suitable for displaying the place on an
+   * average-sized map.
+   * 
+ * + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the viewport field is set. + */ + @java.lang.Override + public boolean hasViewport() { + return viewport_ != null; + } + /** + * + * + *
+   * Output only. A viewport suitable for displaying the place on an
+   * average-sized map.
+   * 
+ * + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The viewport. + */ + @java.lang.Override + public com.google.geo.type.Viewport getViewport() { + return viewport_ == null ? com.google.geo.type.Viewport.getDefaultInstance() : viewport_; + } + /** + * + * + *
+   * Output only. A viewport suitable for displaying the place on an
+   * average-sized map.
+   * 
+ * + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.geo.type.ViewportOrBuilder getViewportOrBuilder() { + return viewport_ == null ? com.google.geo.type.Viewport.getDefaultInstance() : viewport_; + } + + public static final int RATING_FIELD_NUMBER = 14; + private double rating_ = 0D; + /** + * + * + *
+   * Output only. A rating between 1.0 and 5.0, based on user reviews of this
+   * place.
+   * 
+ * + * double rating = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The rating. + */ + @java.lang.Override + public double getRating() { + return rating_; + } + + public static final int GOOGLE_MAPS_URI_FIELD_NUMBER = 15; + + @SuppressWarnings("serial") + private volatile java.lang.Object googleMapsUri_ = ""; + /** + * + * + *
+   * Output only. A URL providing more information about this place.
+   * 
+ * + * string google_maps_uri = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The googleMapsUri. + */ + @java.lang.Override + public java.lang.String getGoogleMapsUri() { + java.lang.Object ref = googleMapsUri_; + 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(); + googleMapsUri_ = s; + return s; + } + } + /** + * + * + *
+   * Output only. A URL providing more information about this place.
+   * 
+ * + * string google_maps_uri = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for googleMapsUri. + */ + @java.lang.Override + public com.google.protobuf.ByteString getGoogleMapsUriBytes() { + java.lang.Object ref = googleMapsUri_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + googleMapsUri_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int WEBSITE_URI_FIELD_NUMBER = 16; + + @SuppressWarnings("serial") + private volatile java.lang.Object websiteUri_ = ""; + /** + * + * + *
+   * Output only. The authoritative website for this place, e.g. a business'
+   * homepage. Note that for places that are part of a chain (e.g. an IKEA
+   * store), this will usually be the website for the individual store, not the
+   * overall chain.
+   * 
+ * + * string website_uri = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The websiteUri. + */ + @java.lang.Override + public java.lang.String getWebsiteUri() { + java.lang.Object ref = websiteUri_; + 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(); + websiteUri_ = s; + return s; + } + } + /** + * + * + *
+   * Output only. The authoritative website for this place, e.g. a business'
+   * homepage. Note that for places that are part of a chain (e.g. an IKEA
+   * store), this will usually be the website for the individual store, not the
+   * overall chain.
+   * 
+ * + * string website_uri = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for websiteUri. + */ + @java.lang.Override + public com.google.protobuf.ByteString getWebsiteUriBytes() { + java.lang.Object ref = websiteUri_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + websiteUri_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int REVIEWS_FIELD_NUMBER = 53; + + @SuppressWarnings("serial") + private java.util.List reviews_; + /** + * + * + *
+   * Output only. List of reviews about this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getReviewsList() { + return reviews_; + } + /** + * + * + *
+   * Output only. List of reviews about this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getReviewsOrBuilderList() { + return reviews_; + } + /** + * + * + *
+   * Output only. List of reviews about this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getReviewsCount() { + return reviews_.size(); + } + /** + * + * + *
+   * Output only. List of reviews about this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Review getReviews(int index) { + return reviews_.get(index); + } + /** + * + * + *
+   * Output only. List of reviews about this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.ReviewOrBuilder getReviewsOrBuilder(int index) { + return reviews_.get(index); + } + + public static final int REGULAR_OPENING_HOURS_FIELD_NUMBER = 21; + private com.google.maps.places.v1.Place.OpeningHours regularOpeningHours_; + /** + * + * + *
+   * Output only. The regular hours of operation.
+   * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the regularOpeningHours field is set. + */ + @java.lang.Override + public boolean hasRegularOpeningHours() { + return regularOpeningHours_ != null; + } + /** + * + * + *
+   * Output only. The regular hours of operation.
+   * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The regularOpeningHours. + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours getRegularOpeningHours() { + return regularOpeningHours_ == null + ? com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance() + : regularOpeningHours_; + } + /** + * + * + *
+   * Output only. The regular hours of operation.
+   * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHoursOrBuilder getRegularOpeningHoursOrBuilder() { + return regularOpeningHours_ == null + ? com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance() + : regularOpeningHours_; + } + + public static final int UTC_OFFSET_MINUTES_FIELD_NUMBER = 22; + private int utcOffsetMinutes_ = 0; + /** + * + * + *
+   * Output only. Number of minutes this place's timezone is currently offset
+   * from UTC. This is expressed in minutes to support timezones that are offset
+   * by fractions of an hour, e.g. X hours and 15 minutes.
+   * 
+ * + * optional int32 utc_offset_minutes = 22 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the utcOffsetMinutes field is set. + */ + @java.lang.Override + public boolean hasUtcOffsetMinutes() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * + * + *
+   * Output only. Number of minutes this place's timezone is currently offset
+   * from UTC. This is expressed in minutes to support timezones that are offset
+   * by fractions of an hour, e.g. X hours and 15 minutes.
+   * 
+ * + * optional int32 utc_offset_minutes = 22 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The utcOffsetMinutes. + */ + @java.lang.Override + public int getUtcOffsetMinutes() { + return utcOffsetMinutes_; + } + + public static final int PHOTOS_FIELD_NUMBER = 54; + + @SuppressWarnings("serial") + private java.util.List photos_; + /** + * + * + *
+   * Output only. Information (including references) about photos of this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getPhotosList() { + return photos_; + } + /** + * + * + *
+   * Output only. Information (including references) about photos of this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getPhotosOrBuilderList() { + return photos_; + } + /** + * + * + *
+   * Output only. Information (including references) about photos of this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getPhotosCount() { + return photos_.size(); + } + /** + * + * + *
+   * Output only. Information (including references) about photos of this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Photo getPhotos(int index) { + return photos_.get(index); + } + /** + * + * + *
+   * Output only. Information (including references) about photos of this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.PhotoOrBuilder getPhotosOrBuilder(int index) { + return photos_.get(index); + } + + public static final int ADR_FORMAT_ADDRESS_FIELD_NUMBER = 24; + + @SuppressWarnings("serial") + private volatile java.lang.Object adrFormatAddress_ = ""; + /** + * + * + *
+   * Output only. The place's address in adr microformat:
+   * http://microformats.org/wiki/adr.
+   * 
+ * + * string adr_format_address = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The adrFormatAddress. + */ + @java.lang.Override + public java.lang.String getAdrFormatAddress() { + java.lang.Object ref = adrFormatAddress_; + 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(); + adrFormatAddress_ = s; + return s; + } + } + /** + * + * + *
+   * Output only. The place's address in adr microformat:
+   * http://microformats.org/wiki/adr.
+   * 
+ * + * string adr_format_address = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for adrFormatAddress. + */ + @java.lang.Override + public com.google.protobuf.ByteString getAdrFormatAddressBytes() { + java.lang.Object ref = adrFormatAddress_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + adrFormatAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int BUSINESS_STATUS_FIELD_NUMBER = 25; + private int businessStatus_ = 0; + /** + * + * + *
+   * Output only. The business status for the place.
+   * 
+ * + * + * .google.maps.places.v1.Place.BusinessStatus business_status = 25 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The enum numeric value on the wire for businessStatus. + */ + @java.lang.Override + public int getBusinessStatusValue() { + return businessStatus_; + } + /** + * + * + *
+   * Output only. The business status for the place.
+   * 
+ * + * + * .google.maps.places.v1.Place.BusinessStatus business_status = 25 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The businessStatus. + */ + @java.lang.Override + public com.google.maps.places.v1.Place.BusinessStatus getBusinessStatus() { + com.google.maps.places.v1.Place.BusinessStatus result = + com.google.maps.places.v1.Place.BusinessStatus.forNumber(businessStatus_); + return result == null ? com.google.maps.places.v1.Place.BusinessStatus.UNRECOGNIZED : result; + } + + public static final int PRICE_LEVEL_FIELD_NUMBER = 26; + private int priceLevel_ = 0; + /** + * + * + *
+   * Output only. Price level of the place.
+   * 
+ * + * + * .google.maps.places.v1.PriceLevel price_level = 26 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The enum numeric value on the wire for priceLevel. + */ + @java.lang.Override + public int getPriceLevelValue() { + return priceLevel_; + } + /** + * + * + *
+   * Output only. Price level of the place.
+   * 
+ * + * + * .google.maps.places.v1.PriceLevel price_level = 26 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The priceLevel. + */ + @java.lang.Override + public com.google.maps.places.v1.PriceLevel getPriceLevel() { + com.google.maps.places.v1.PriceLevel result = + com.google.maps.places.v1.PriceLevel.forNumber(priceLevel_); + return result == null ? com.google.maps.places.v1.PriceLevel.UNRECOGNIZED : result; + } + + public static final int ATTRIBUTIONS_FIELD_NUMBER = 27; + + @SuppressWarnings("serial") + private java.util.List attributions_; + /** + * + * + *
+   * Output only. A set of data provider that must be shown with this result.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getAttributionsList() { + return attributions_; + } + /** + * + * + *
+   * Output only. A set of data provider that must be shown with this result.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getAttributionsOrBuilderList() { + return attributions_; + } + /** + * + * + *
+   * Output only. A set of data provider that must be shown with this result.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getAttributionsCount() { + return attributions_.size(); + } + /** + * + * + *
+   * Output only. A set of data provider that must be shown with this result.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.Attribution getAttributions(int index) { + return attributions_.get(index); + } + /** + * + * + *
+   * Output only. A set of data provider that must be shown with this result.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.AttributionOrBuilder getAttributionsOrBuilder(int index) { + return attributions_.get(index); + } + + public static final int USER_RATING_COUNT_FIELD_NUMBER = 28; + private int userRatingCount_ = 0; + /** + * + * + *
+   * Output only. The total number of reviews (with or without text) for this
+   * place.
+   * 
+ * + * optional int32 user_rating_count = 28 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the userRatingCount field is set. + */ + @java.lang.Override + public boolean hasUserRatingCount() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * + * + *
+   * Output only. The total number of reviews (with or without text) for this
+   * place.
+   * 
+ * + * optional int32 user_rating_count = 28 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The userRatingCount. + */ + @java.lang.Override + public int getUserRatingCount() { + return userRatingCount_; + } + + public static final int ICON_MASK_BASE_URI_FIELD_NUMBER = 29; + + @SuppressWarnings("serial") + private volatile java.lang.Object iconMaskBaseUri_ = ""; + /** + * + * + *
+   * Output only. A truncated URL to an v2 icon mask. User can access different
+   * icon type by appending type suffix to the end (eg, ".svg" or ".png").
+   * 
+ * + * string icon_mask_base_uri = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The iconMaskBaseUri. + */ + @java.lang.Override + public java.lang.String getIconMaskBaseUri() { + java.lang.Object ref = iconMaskBaseUri_; + 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(); + iconMaskBaseUri_ = s; + return s; + } + } + /** + * + * + *
+   * Output only. A truncated URL to an v2 icon mask. User can access different
+   * icon type by appending type suffix to the end (eg, ".svg" or ".png").
+   * 
+ * + * string icon_mask_base_uri = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for iconMaskBaseUri. + */ + @java.lang.Override + public com.google.protobuf.ByteString getIconMaskBaseUriBytes() { + java.lang.Object ref = iconMaskBaseUri_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + iconMaskBaseUri_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ICON_BACKGROUND_COLOR_FIELD_NUMBER = 30; + + @SuppressWarnings("serial") + private volatile java.lang.Object iconBackgroundColor_ = ""; + /** + * + * + *
+   * Output only. Background color for icon_mask in hex format, e.g. #909CE1.
+   * 
+ * + * string icon_background_color = 30 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The iconBackgroundColor. + */ + @java.lang.Override + public java.lang.String getIconBackgroundColor() { + java.lang.Object ref = iconBackgroundColor_; + 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(); + iconBackgroundColor_ = s; + return s; + } + } + /** + * + * + *
+   * Output only. Background color for icon_mask in hex format, e.g. #909CE1.
+   * 
+ * + * string icon_background_color = 30 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for iconBackgroundColor. + */ + @java.lang.Override + public com.google.protobuf.ByteString getIconBackgroundColorBytes() { + java.lang.Object ref = iconBackgroundColor_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + iconBackgroundColor_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int TAKEOUT_FIELD_NUMBER = 33; + private boolean takeout_ = false; + /** + * + * + *
+   * Output only. Specifies if the business supports takeout.
+   * 
+ * + * optional bool takeout = 33 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the takeout field is set. + */ + @java.lang.Override + public boolean hasTakeout() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * + * + *
+   * Output only. Specifies if the business supports takeout.
+   * 
+ * + * optional bool takeout = 33 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The takeout. + */ + @java.lang.Override + public boolean getTakeout() { + return takeout_; + } + + public static final int DELIVERY_FIELD_NUMBER = 34; + private boolean delivery_ = false; + /** + * + * + *
+   * Output only. Specifies if the business supports delivery.
+   * 
+ * + * optional bool delivery = 34 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the delivery field is set. + */ + @java.lang.Override + public boolean hasDelivery() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + * + * + *
+   * Output only. Specifies if the business supports delivery.
+   * 
+ * + * optional bool delivery = 34 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The delivery. + */ + @java.lang.Override + public boolean getDelivery() { + return delivery_; + } + + public static final int DINE_IN_FIELD_NUMBER = 35; + private boolean dineIn_ = false; + /** + * + * + *
+   * Output only. Specifies if the business supports indoor or outdoor seating
+   * options.
+   * 
+ * + * optional bool dine_in = 35 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the dineIn field is set. + */ + @java.lang.Override + public boolean hasDineIn() { + return ((bitField0_ & 0x00000010) != 0); + } + /** + * + * + *
+   * Output only. Specifies if the business supports indoor or outdoor seating
+   * options.
+   * 
+ * + * optional bool dine_in = 35 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The dineIn. + */ + @java.lang.Override + public boolean getDineIn() { + return dineIn_; + } + + public static final int CURBSIDE_PICKUP_FIELD_NUMBER = 36; + private boolean curbsidePickup_ = false; + /** + * + * + *
+   * Output only. Specifies if the business supports curbside pickup.
+   * 
+ * + * optional bool curbside_pickup = 36 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the curbsidePickup field is set. + */ + @java.lang.Override + public boolean hasCurbsidePickup() { + return ((bitField0_ & 0x00000020) != 0); + } + /** + * + * + *
+   * Output only. Specifies if the business supports curbside pickup.
+   * 
+ * + * optional bool curbside_pickup = 36 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The curbsidePickup. + */ + @java.lang.Override + public boolean getCurbsidePickup() { + return curbsidePickup_; + } + + public static final int RESERVABLE_FIELD_NUMBER = 38; + private boolean reservable_ = false; + /** + * + * + *
+   * Output only. Specifies if the place supports reservations.
+   * 
+ * + * optional bool reservable = 38 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the reservable field is set. + */ + @java.lang.Override + public boolean hasReservable() { + return ((bitField0_ & 0x00000040) != 0); + } + /** + * + * + *
+   * Output only. Specifies if the place supports reservations.
+   * 
+ * + * optional bool reservable = 38 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The reservable. + */ + @java.lang.Override + public boolean getReservable() { + return reservable_; + } + + public static final int SERVES_BREAKFAST_FIELD_NUMBER = 39; + private boolean servesBreakfast_ = false; + /** + * + * + *
+   * Output only. Specifies if the place serves breakfast.
+   * 
+ * + * optional bool serves_breakfast = 39 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the servesBreakfast field is set. + */ + @java.lang.Override + public boolean hasServesBreakfast() { + return ((bitField0_ & 0x00000080) != 0); + } + /** + * + * + *
+   * Output only. Specifies if the place serves breakfast.
+   * 
+ * + * optional bool serves_breakfast = 39 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesBreakfast. + */ + @java.lang.Override + public boolean getServesBreakfast() { + return servesBreakfast_; + } + + public static final int SERVES_LUNCH_FIELD_NUMBER = 40; + private boolean servesLunch_ = false; + /** + * + * + *
+   * Output only. Specifies if the place serves lunch.
+   * 
+ * + * optional bool serves_lunch = 40 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the servesLunch field is set. + */ + @java.lang.Override + public boolean hasServesLunch() { + return ((bitField0_ & 0x00000100) != 0); + } + /** + * + * + *
+   * Output only. Specifies if the place serves lunch.
+   * 
+ * + * optional bool serves_lunch = 40 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesLunch. + */ + @java.lang.Override + public boolean getServesLunch() { + return servesLunch_; + } + + public static final int SERVES_DINNER_FIELD_NUMBER = 41; + private boolean servesDinner_ = false; + /** + * + * + *
+   * Output only. Specifies if the place serves dinner.
+   * 
+ * + * optional bool serves_dinner = 41 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the servesDinner field is set. + */ + @java.lang.Override + public boolean hasServesDinner() { + return ((bitField0_ & 0x00000200) != 0); + } + /** + * + * + *
+   * Output only. Specifies if the place serves dinner.
+   * 
+ * + * optional bool serves_dinner = 41 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesDinner. + */ + @java.lang.Override + public boolean getServesDinner() { + return servesDinner_; + } + + public static final int SERVES_BEER_FIELD_NUMBER = 42; + private boolean servesBeer_ = false; + /** + * + * + *
+   * Output only. Specifies if the place serves beer.
+   * 
+ * + * optional bool serves_beer = 42 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the servesBeer field is set. + */ + @java.lang.Override + public boolean hasServesBeer() { + return ((bitField0_ & 0x00000400) != 0); + } + /** + * + * + *
+   * Output only. Specifies if the place serves beer.
+   * 
+ * + * optional bool serves_beer = 42 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesBeer. + */ + @java.lang.Override + public boolean getServesBeer() { + return servesBeer_; + } + + public static final int SERVES_WINE_FIELD_NUMBER = 43; + private boolean servesWine_ = false; + /** + * + * + *
+   * Output only. Specifies if the place serves wine.
+   * 
+ * + * optional bool serves_wine = 43 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the servesWine field is set. + */ + @java.lang.Override + public boolean hasServesWine() { + return ((bitField0_ & 0x00000800) != 0); + } + /** + * + * + *
+   * Output only. Specifies if the place serves wine.
+   * 
+ * + * optional bool serves_wine = 43 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesWine. + */ + @java.lang.Override + public boolean getServesWine() { + return servesWine_; + } + + public static final int SERVES_BRUNCH_FIELD_NUMBER = 44; + private boolean servesBrunch_ = false; + /** + * + * + *
+   * Output only. Specifies if the place serves brunch.
+   * 
+ * + * optional bool serves_brunch = 44 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the servesBrunch field is set. + */ + @java.lang.Override + public boolean hasServesBrunch() { + return ((bitField0_ & 0x00001000) != 0); + } + /** + * + * + *
+   * Output only. Specifies if the place serves brunch.
+   * 
+ * + * optional bool serves_brunch = 44 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesBrunch. + */ + @java.lang.Override + public boolean getServesBrunch() { + return servesBrunch_; + } + + public static final int SERVES_VEGETARIAN_FOOD_FIELD_NUMBER = 45; + private boolean servesVegetarianFood_ = false; + /** + * + * + *
+   * Output only. Specifies if the place serves vegetarian food.
+   * 
+ * + * optional bool serves_vegetarian_food = 45 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the servesVegetarianFood field is set. + */ + @java.lang.Override + public boolean hasServesVegetarianFood() { + return ((bitField0_ & 0x00002000) != 0); + } + /** + * + * + *
+   * Output only. Specifies if the place serves vegetarian food.
+   * 
+ * + * optional bool serves_vegetarian_food = 45 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The servesVegetarianFood. + */ + @java.lang.Override + public boolean getServesVegetarianFood() { + return servesVegetarianFood_; + } + + public static final int CURRENT_OPENING_HOURS_FIELD_NUMBER = 46; + private com.google.maps.places.v1.Place.OpeningHours currentOpeningHours_; + /** + * + * + *
+   * Output only. The hours of operation for the next seven days (including
+   * today). The time period starts at midnight on the date of the request and
+   * ends at 11:59 pm six days later. This field includes the special_days
+   * subfield of all hours, set for dates that have exceptional hours.
+   * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the currentOpeningHours field is set. + */ + @java.lang.Override + public boolean hasCurrentOpeningHours() { + return currentOpeningHours_ != null; + } + /** + * + * + *
+   * Output only. The hours of operation for the next seven days (including
+   * today). The time period starts at midnight on the date of the request and
+   * ends at 11:59 pm six days later. This field includes the special_days
+   * subfield of all hours, set for dates that have exceptional hours.
+   * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The currentOpeningHours. + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours getCurrentOpeningHours() { + return currentOpeningHours_ == null + ? com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance() + : currentOpeningHours_; + } + /** + * + * + *
+   * Output only. The hours of operation for the next seven days (including
+   * today). The time period starts at midnight on the date of the request and
+   * ends at 11:59 pm six days later. This field includes the special_days
+   * subfield of all hours, set for dates that have exceptional hours.
+   * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHoursOrBuilder getCurrentOpeningHoursOrBuilder() { + return currentOpeningHours_ == null + ? com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance() + : currentOpeningHours_; + } + + public static final int CURRENT_SECONDARY_OPENING_HOURS_FIELD_NUMBER = 47; + + @SuppressWarnings("serial") + private java.util.List + currentSecondaryOpeningHours_; + /** + * + * + *
+   * Output only. Contains an array of entries for the next seven days including
+   * information about secondary hours of a business. Secondary hours are
+   * different from a business's main hours. For example, a restaurant can
+   * specify drive through hours or delivery hours as its secondary hours. This
+   * field populates the type subfield, which draws from a predefined list of
+   * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+   * the types of the place. This field includes the special_days subfield of
+   * all hours, set for dates that have exceptional hours.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getCurrentSecondaryOpeningHoursList() { + return currentSecondaryOpeningHours_; + } + /** + * + * + *
+   * Output only. Contains an array of entries for the next seven days including
+   * information about secondary hours of a business. Secondary hours are
+   * different from a business's main hours. For example, a restaurant can
+   * specify drive through hours or delivery hours as its secondary hours. This
+   * field populates the type subfield, which draws from a predefined list of
+   * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+   * the types of the place. This field includes the special_days subfield of
+   * all hours, set for dates that have exceptional hours.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getCurrentSecondaryOpeningHoursOrBuilderList() { + return currentSecondaryOpeningHours_; + } + /** + * + * + *
+   * Output only. Contains an array of entries for the next seven days including
+   * information about secondary hours of a business. Secondary hours are
+   * different from a business's main hours. For example, a restaurant can
+   * specify drive through hours or delivery hours as its secondary hours. This
+   * field populates the type subfield, which draws from a predefined list of
+   * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+   * the types of the place. This field includes the special_days subfield of
+   * all hours, set for dates that have exceptional hours.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getCurrentSecondaryOpeningHoursCount() { + return currentSecondaryOpeningHours_.size(); + } + /** + * + * + *
+   * Output only. Contains an array of entries for the next seven days including
+   * information about secondary hours of a business. Secondary hours are
+   * different from a business's main hours. For example, a restaurant can
+   * specify drive through hours or delivery hours as its secondary hours. This
+   * field populates the type subfield, which draws from a predefined list of
+   * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+   * the types of the place. This field includes the special_days subfield of
+   * all hours, set for dates that have exceptional hours.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours getCurrentSecondaryOpeningHours(int index) { + return currentSecondaryOpeningHours_.get(index); + } + /** + * + * + *
+   * Output only. Contains an array of entries for the next seven days including
+   * information about secondary hours of a business. Secondary hours are
+   * different from a business's main hours. For example, a restaurant can
+   * specify drive through hours or delivery hours as its secondary hours. This
+   * field populates the type subfield, which draws from a predefined list of
+   * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+   * the types of the place. This field includes the special_days subfield of
+   * all hours, set for dates that have exceptional hours.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHoursOrBuilder + getCurrentSecondaryOpeningHoursOrBuilder(int index) { + return currentSecondaryOpeningHours_.get(index); + } + + public static final int REGULAR_SECONDARY_OPENING_HOURS_FIELD_NUMBER = 49; + + @SuppressWarnings("serial") + private java.util.List + regularSecondaryOpeningHours_; + /** + * + * + *
+   * Output only. Contains an array of entries for information about regular
+   * secondary hours of a business. Secondary hours are different from a
+   * business's main hours. For example, a restaurant can specify drive through
+   * hours or delivery hours as its secondary hours. This field populates the
+   * type subfield, which draws from a predefined list of opening hours types
+   * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+   * place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getRegularSecondaryOpeningHoursList() { + return regularSecondaryOpeningHours_; + } + /** + * + * + *
+   * Output only. Contains an array of entries for information about regular
+   * secondary hours of a business. Secondary hours are different from a
+   * business's main hours. For example, a restaurant can specify drive through
+   * hours or delivery hours as its secondary hours. This field populates the
+   * type subfield, which draws from a predefined list of opening hours types
+   * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+   * place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getRegularSecondaryOpeningHoursOrBuilderList() { + return regularSecondaryOpeningHours_; + } + /** + * + * + *
+   * Output only. Contains an array of entries for information about regular
+   * secondary hours of a business. Secondary hours are different from a
+   * business's main hours. For example, a restaurant can specify drive through
+   * hours or delivery hours as its secondary hours. This field populates the
+   * type subfield, which draws from a predefined list of opening hours types
+   * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+   * place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getRegularSecondaryOpeningHoursCount() { + return regularSecondaryOpeningHours_.size(); + } + /** + * + * + *
+   * Output only. Contains an array of entries for information about regular
+   * secondary hours of a business. Secondary hours are different from a
+   * business's main hours. For example, a restaurant can specify drive through
+   * hours or delivery hours as its secondary hours. This field populates the
+   * type subfield, which draws from a predefined list of opening hours types
+   * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+   * place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHours getRegularSecondaryOpeningHours(int index) { + return regularSecondaryOpeningHours_.get(index); + } + /** + * + * + *
+   * Output only. Contains an array of entries for information about regular
+   * secondary hours of a business. Secondary hours are different from a
+   * business's main hours. For example, a restaurant can specify drive through
+   * hours or delivery hours as its secondary hours. This field populates the
+   * type subfield, which draws from a predefined list of opening hours types
+   * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+   * place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.OpeningHoursOrBuilder + getRegularSecondaryOpeningHoursOrBuilder(int index) { + return regularSecondaryOpeningHours_.get(index); + } + + public static final int EDITORIAL_SUMMARY_FIELD_NUMBER = 52; + private com.google.type.LocalizedText editorialSummary_; + /** + * + * + *
+   * Output only. Contains a summary of the place. A summary is comprised of a
+   * textual overview, and also includes the language code for these if
+   * applicable. Summary text must be presented as-is and can not be modified or
+   * altered.
+   * 
+ * + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the editorialSummary field is set. + */ + @java.lang.Override + public boolean hasEditorialSummary() { + return editorialSummary_ != null; + } + /** + * + * + *
+   * Output only. Contains a summary of the place. A summary is comprised of a
+   * textual overview, and also includes the language code for these if
+   * applicable. Summary text must be presented as-is and can not be modified or
+   * altered.
+   * 
+ * + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The editorialSummary. + */ + @java.lang.Override + public com.google.type.LocalizedText getEditorialSummary() { + return editorialSummary_ == null + ? com.google.type.LocalizedText.getDefaultInstance() + : editorialSummary_; + } + /** + * + * + *
+   * Output only. Contains a summary of the place. A summary is comprised of a
+   * textual overview, and also includes the language code for these if
+   * applicable. Summary text must be presented as-is and can not be modified or
+   * altered.
+   * 
+ * + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.type.LocalizedTextOrBuilder getEditorialSummaryOrBuilder() { + return editorialSummary_ == null + ? com.google.type.LocalizedText.getDefaultInstance() + : editorialSummary_; + } + + public static final int OUTDOOR_SEATING_FIELD_NUMBER = 55; + private boolean outdoorSeating_ = false; + /** + * + * + *
+   * Output only. Place provides outdoor seating.
+   * 
+ * + * optional bool outdoor_seating = 55 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the outdoorSeating field is set. + */ + @java.lang.Override + public boolean hasOutdoorSeating() { + return ((bitField0_ & 0x00004000) != 0); + } + /** + * + * + *
+   * Output only. Place provides outdoor seating.
+   * 
+ * + * optional bool outdoor_seating = 55 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The outdoorSeating. + */ + @java.lang.Override + public boolean getOutdoorSeating() { + return outdoorSeating_; + } + + public static final int LIVE_MUSIC_FIELD_NUMBER = 56; + private boolean liveMusic_ = false; + /** + * + * + *
+   * Output only. Place provides live music.
+   * 
+ * + * optional bool live_music = 56 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the liveMusic field is set. + */ + @java.lang.Override + public boolean hasLiveMusic() { + return ((bitField0_ & 0x00008000) != 0); + } + /** + * + * + *
+   * Output only. Place provides live music.
+   * 
+ * + * optional bool live_music = 56 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The liveMusic. + */ + @java.lang.Override + public boolean getLiveMusic() { + return liveMusic_; + } + + public static final int MENU_FOR_CHILDREN_FIELD_NUMBER = 57; + private boolean menuForChildren_ = false; + /** + * + * + *
+   * Output only. Place has a children's menu.
+   * 
+ * + * optional bool menu_for_children = 57 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the menuForChildren field is set. + */ + @java.lang.Override + public boolean hasMenuForChildren() { + return ((bitField0_ & 0x00010000) != 0); + } + /** + * + * + *
+   * Output only. Place has a children's menu.
+   * 
+ * + * optional bool menu_for_children = 57 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The menuForChildren. + */ + @java.lang.Override + public boolean getMenuForChildren() { + return menuForChildren_; + } + + public static final int SERVES_COCKTAILS_FIELD_NUMBER = 58; + private boolean servesCocktails_ = false; + /** + * + * + *
+   * Output only. Place serves cocktails.
+   * 
+ * + * optional bool serves_cocktails = 58 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the servesCocktails field is set. + */ + @java.lang.Override + public boolean hasServesCocktails() { + return ((bitField0_ & 0x00020000) != 0); + } + /** + * + * + *
+   * Output only. Place serves cocktails.
+   * 
+ * + * optional bool serves_cocktails = 58 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesCocktails. + */ + @java.lang.Override + public boolean getServesCocktails() { + return servesCocktails_; + } + + public static final int SERVES_DESSERT_FIELD_NUMBER = 59; + private boolean servesDessert_ = false; + /** + * + * + *
+   * Output only. Place serves dessert.
+   * 
+ * + * optional bool serves_dessert = 59 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the servesDessert field is set. + */ + @java.lang.Override + public boolean hasServesDessert() { + return ((bitField0_ & 0x00040000) != 0); + } + /** + * + * + *
+   * Output only. Place serves dessert.
+   * 
+ * + * optional bool serves_dessert = 59 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesDessert. + */ + @java.lang.Override + public boolean getServesDessert() { + return servesDessert_; + } + + public static final int SERVES_COFFEE_FIELD_NUMBER = 60; + private boolean servesCoffee_ = false; + /** + * + * + *
+   * Output only. Place serves coffee.
+   * 
+ * + * optional bool serves_coffee = 60 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the servesCoffee field is set. + */ + @java.lang.Override + public boolean hasServesCoffee() { + return ((bitField0_ & 0x00080000) != 0); + } + /** + * + * + *
+   * Output only. Place serves coffee.
+   * 
+ * + * optional bool serves_coffee = 60 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesCoffee. + */ + @java.lang.Override + public boolean getServesCoffee() { + return servesCoffee_; + } + + public static final int GOOD_FOR_CHILDREN_FIELD_NUMBER = 62; + private boolean goodForChildren_ = false; + /** + * + * + *
+   * Output only. Place is good for children.
+   * 
+ * + * optional bool good_for_children = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the goodForChildren field is set. + */ + @java.lang.Override + public boolean hasGoodForChildren() { + return ((bitField0_ & 0x00100000) != 0); + } + /** + * + * + *
+   * Output only. Place is good for children.
+   * 
+ * + * optional bool good_for_children = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The goodForChildren. + */ + @java.lang.Override + public boolean getGoodForChildren() { + return goodForChildren_; + } + + public static final int ALLOWS_DOGS_FIELD_NUMBER = 63; + private boolean allowsDogs_ = false; + /** + * + * + *
+   * Output only. Place allows dogs.
+   * 
+ * + * optional bool allows_dogs = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the allowsDogs field is set. + */ + @java.lang.Override + public boolean hasAllowsDogs() { + return ((bitField0_ & 0x00200000) != 0); + } + /** + * + * + *
+   * Output only. Place allows dogs.
+   * 
+ * + * optional bool allows_dogs = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The allowsDogs. + */ + @java.lang.Override + public boolean getAllowsDogs() { + return allowsDogs_; + } + + public static final int RESTROOM_FIELD_NUMBER = 64; + private boolean restroom_ = false; + /** + * + * + *
+   * Output only. Place has restroom.
+   * 
+ * + * optional bool restroom = 64 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the restroom field is set. + */ + @java.lang.Override + public boolean hasRestroom() { + return ((bitField0_ & 0x00400000) != 0); + } + /** + * + * + *
+   * Output only. Place has restroom.
+   * 
+ * + * optional bool restroom = 64 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The restroom. + */ + @java.lang.Override + public boolean getRestroom() { + return restroom_; + } + + public static final int GOOD_FOR_GROUPS_FIELD_NUMBER = 65; + private boolean goodForGroups_ = false; + /** + * + * + *
+   * Output only. Place accommodates groups.
+   * 
+ * + * optional bool good_for_groups = 65 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the goodForGroups field is set. + */ + @java.lang.Override + public boolean hasGoodForGroups() { + return ((bitField0_ & 0x00800000) != 0); + } + /** + * + * + *
+   * Output only. Place accommodates groups.
+   * 
+ * + * optional bool good_for_groups = 65 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The goodForGroups. + */ + @java.lang.Override + public boolean getGoodForGroups() { + return goodForGroups_; + } + + public static final int GOOD_FOR_WATCHING_SPORTS_FIELD_NUMBER = 66; + private boolean goodForWatchingSports_ = false; + /** + * + * + *
+   * Output only. Place is suitable for watching sports.
+   * 
+ * + * optional bool good_for_watching_sports = 66 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the goodForWatchingSports field is set. + */ + @java.lang.Override + public boolean hasGoodForWatchingSports() { + return ((bitField0_ & 0x01000000) != 0); + } + /** + * + * + *
+   * Output only. Place is suitable for watching sports.
+   * 
+ * + * optional bool good_for_watching_sports = 66 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The goodForWatchingSports. + */ + @java.lang.Override + public boolean getGoodForWatchingSports() { + return goodForWatchingSports_; + } + + public static final int PAYMENT_OPTIONS_FIELD_NUMBER = 67; + private com.google.maps.places.v1.Place.PaymentOptions paymentOptions_; + /** + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the paymentOptions field is set. + */ + @java.lang.Override + public boolean hasPaymentOptions() { + return paymentOptions_ != null; + } + /** + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The paymentOptions. + */ + @java.lang.Override + public com.google.maps.places.v1.Place.PaymentOptions getPaymentOptions() { + return paymentOptions_ == null + ? com.google.maps.places.v1.Place.PaymentOptions.getDefaultInstance() + : paymentOptions_; + } + /** + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.PaymentOptionsOrBuilder getPaymentOptionsOrBuilder() { + return paymentOptions_ == null + ? com.google.maps.places.v1.Place.PaymentOptions.getDefaultInstance() + : paymentOptions_; + } + + public static final int PARKING_OPTIONS_FIELD_NUMBER = 70; + private com.google.maps.places.v1.Place.ParkingOptions parkingOptions_; + /** + * + * + *
+   * Output only. Options of parking provided by the place.
+   * 
+ * + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the parkingOptions field is set. + */ + @java.lang.Override + public boolean hasParkingOptions() { + return parkingOptions_ != null; + } + /** + * + * + *
+   * Output only. Options of parking provided by the place.
+   * 
+ * + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The parkingOptions. + */ + @java.lang.Override + public com.google.maps.places.v1.Place.ParkingOptions getParkingOptions() { + return parkingOptions_ == null + ? com.google.maps.places.v1.Place.ParkingOptions.getDefaultInstance() + : parkingOptions_; + } + /** + * + * + *
+   * Output only. Options of parking provided by the place.
+   * 
+ * + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.ParkingOptionsOrBuilder getParkingOptionsOrBuilder() { + return parkingOptions_ == null + ? com.google.maps.places.v1.Place.ParkingOptions.getDefaultInstance() + : parkingOptions_; + } + + public static final int SUB_DESTINATIONS_FIELD_NUMBER = 71; + + @SuppressWarnings("serial") + private java.util.List subDestinations_; + /** + * + * + *
+   * Output only. A list of sub destinations related to the place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List getSubDestinationsList() { + return subDestinations_; + } + /** + * + * + *
+   * Output only. A list of sub destinations related to the place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public java.util.List + getSubDestinationsOrBuilderList() { + return subDestinations_; + } + /** + * + * + *
+   * Output only. A list of sub destinations related to the place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public int getSubDestinationsCount() { + return subDestinations_.size(); + } + /** + * + * + *
+   * Output only. A list of sub destinations related to the place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.SubDestination getSubDestinations(int index) { + return subDestinations_.get(index); + } + /** + * + * + *
+   * Output only. A list of sub destinations related to the place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.SubDestinationOrBuilder getSubDestinationsOrBuilder( + int index) { + return subDestinations_.get(index); + } + + public static final int ACCESSIBILITY_OPTIONS_FIELD_NUMBER = 72; + private com.google.maps.places.v1.Place.AccessibilityOptions accessibilityOptions_; + /** + * + * + *
+   * Output only. Information about the accessibility options a place offers.
+   * 
+ * + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the accessibilityOptions field is set. + */ + @java.lang.Override + public boolean hasAccessibilityOptions() { + return ((bitField0_ & 0x02000000) != 0); + } + /** + * + * + *
+   * Output only. Information about the accessibility options a place offers.
+   * 
+ * + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The accessibilityOptions. + */ + @java.lang.Override + public com.google.maps.places.v1.Place.AccessibilityOptions getAccessibilityOptions() { + return accessibilityOptions_ == null + ? com.google.maps.places.v1.Place.AccessibilityOptions.getDefaultInstance() + : accessibilityOptions_; + } + /** + * + * + *
+   * Output only. Information about the accessibility options a place offers.
+   * 
+ * + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.Place.AccessibilityOptionsOrBuilder + getAccessibilityOptionsOrBuilder() { + return accessibilityOptions_ == null + ? com.google.maps.places.v1.Place.AccessibilityOptions.getDefaultInstance() + : accessibilityOptions_; + } + + public static final int FUEL_OPTIONS_FIELD_NUMBER = 78; + private com.google.maps.places.v1.FuelOptions fuelOptions_; + /** + * + * + *
+   * Output only. The most recent information about fuel options in a gas
+   * station. This information is updated regularly.
+   * 
+ * + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the fuelOptions field is set. + */ + @java.lang.Override + public boolean hasFuelOptions() { + return fuelOptions_ != null; + } + /** + * + * + *
+   * Output only. The most recent information about fuel options in a gas
+   * station. This information is updated regularly.
+   * 
+ * + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The fuelOptions. + */ + @java.lang.Override + public com.google.maps.places.v1.FuelOptions getFuelOptions() { + return fuelOptions_ == null + ? com.google.maps.places.v1.FuelOptions.getDefaultInstance() + : fuelOptions_; + } + /** + * + * + *
+   * Output only. The most recent information about fuel options in a gas
+   * station. This information is updated regularly.
+   * 
+ * + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.FuelOptionsOrBuilder getFuelOptionsOrBuilder() { + return fuelOptions_ == null + ? com.google.maps.places.v1.FuelOptions.getDefaultInstance() + : fuelOptions_; + } + + public static final int EV_CHARGE_OPTIONS_FIELD_NUMBER = 79; + private com.google.maps.places.v1.EVChargeOptions evChargeOptions_; + /** + * + * + *
+   * Output only. Information of ev charging options.
+   * 
+ * + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the evChargeOptions field is set. + */ + @java.lang.Override + public boolean hasEvChargeOptions() { + return evChargeOptions_ != null; + } + /** + * + * + *
+   * Output only. Information of ev charging options.
+   * 
+ * + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The evChargeOptions. + */ + @java.lang.Override + public com.google.maps.places.v1.EVChargeOptions getEvChargeOptions() { + return evChargeOptions_ == null + ? com.google.maps.places.v1.EVChargeOptions.getDefaultInstance() + : evChargeOptions_; + } + /** + * + * + *
+   * Output only. Information of ev charging options.
+   * 
+ * + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.EVChargeOptionsOrBuilder getEvChargeOptionsOrBuilder() { + return evChargeOptions_ == null + ? com.google.maps.places.v1.EVChargeOptions.getDefaultInstance() + : evChargeOptions_; + } + + 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.GeneratedMessageV3.isStringEmpty(name_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, id_); + } + for (int i = 0; i < types_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 5, types_.getRaw(i)); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nationalPhoneNumber_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 7, nationalPhoneNumber_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(internationalPhoneNumber_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 8, internationalPhoneNumber_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(formattedAddress_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 9, formattedAddress_); + } + for (int i = 0; i < addressComponents_.size(); i++) { + output.writeMessage(10, addressComponents_.get(i)); + } + if (plusCode_ != null) { + output.writeMessage(11, getPlusCode()); + } + if (location_ != null) { + output.writeMessage(12, getLocation()); + } + if (viewport_ != null) { + output.writeMessage(13, getViewport()); + } + if (java.lang.Double.doubleToRawLongBits(rating_) != 0) { + output.writeDouble(14, rating_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(googleMapsUri_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 15, googleMapsUri_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(websiteUri_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 16, websiteUri_); + } + if (regularOpeningHours_ != null) { + output.writeMessage(21, getRegularOpeningHours()); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeInt32(22, utcOffsetMinutes_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(adrFormatAddress_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 24, adrFormatAddress_); + } + if (businessStatus_ + != com.google.maps.places.v1.Place.BusinessStatus.BUSINESS_STATUS_UNSPECIFIED.getNumber()) { + output.writeEnum(25, businessStatus_); + } + if (priceLevel_ != com.google.maps.places.v1.PriceLevel.PRICE_LEVEL_UNSPECIFIED.getNumber()) { + output.writeEnum(26, priceLevel_); + } + for (int i = 0; i < attributions_.size(); i++) { + output.writeMessage(27, attributions_.get(i)); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeInt32(28, userRatingCount_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(iconMaskBaseUri_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 29, iconMaskBaseUri_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(iconBackgroundColor_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 30, iconBackgroundColor_); + } + if (displayName_ != null) { + output.writeMessage(31, getDisplayName()); + } + if (((bitField0_ & 0x00000004) != 0)) { + output.writeBool(33, takeout_); + } + if (((bitField0_ & 0x00000008) != 0)) { + output.writeBool(34, delivery_); + } + if (((bitField0_ & 0x00000010) != 0)) { + output.writeBool(35, dineIn_); + } + if (((bitField0_ & 0x00000020) != 0)) { + output.writeBool(36, curbsidePickup_); + } + if (((bitField0_ & 0x00000040) != 0)) { + output.writeBool(38, reservable_); + } + if (((bitField0_ & 0x00000080) != 0)) { + output.writeBool(39, servesBreakfast_); + } + if (((bitField0_ & 0x00000100) != 0)) { + output.writeBool(40, servesLunch_); + } + if (((bitField0_ & 0x00000200) != 0)) { + output.writeBool(41, servesDinner_); + } + if (((bitField0_ & 0x00000400) != 0)) { + output.writeBool(42, servesBeer_); + } + if (((bitField0_ & 0x00000800) != 0)) { + output.writeBool(43, servesWine_); + } + if (((bitField0_ & 0x00001000) != 0)) { + output.writeBool(44, servesBrunch_); + } + if (((bitField0_ & 0x00002000) != 0)) { + output.writeBool(45, servesVegetarianFood_); + } + if (currentOpeningHours_ != null) { + output.writeMessage(46, getCurrentOpeningHours()); + } + for (int i = 0; i < currentSecondaryOpeningHours_.size(); i++) { + output.writeMessage(47, currentSecondaryOpeningHours_.get(i)); + } + for (int i = 0; i < regularSecondaryOpeningHours_.size(); i++) { + output.writeMessage(49, regularSecondaryOpeningHours_.get(i)); + } + if (editorialSummary_ != null) { + output.writeMessage(52, getEditorialSummary()); + } + for (int i = 0; i < reviews_.size(); i++) { + output.writeMessage(53, reviews_.get(i)); + } + for (int i = 0; i < photos_.size(); i++) { + output.writeMessage(54, photos_.get(i)); + } + if (((bitField0_ & 0x00004000) != 0)) { + output.writeBool(55, outdoorSeating_); + } + if (((bitField0_ & 0x00008000) != 0)) { + output.writeBool(56, liveMusic_); + } + if (((bitField0_ & 0x00010000) != 0)) { + output.writeBool(57, menuForChildren_); + } + if (((bitField0_ & 0x00020000) != 0)) { + output.writeBool(58, servesCocktails_); + } + if (((bitField0_ & 0x00040000) != 0)) { + output.writeBool(59, servesDessert_); + } + if (((bitField0_ & 0x00080000) != 0)) { + output.writeBool(60, servesCoffee_); + } + if (((bitField0_ & 0x00100000) != 0)) { + output.writeBool(62, goodForChildren_); + } + if (((bitField0_ & 0x00200000) != 0)) { + output.writeBool(63, allowsDogs_); + } + if (((bitField0_ & 0x00400000) != 0)) { + output.writeBool(64, restroom_); + } + if (((bitField0_ & 0x00800000) != 0)) { + output.writeBool(65, goodForGroups_); + } + if (((bitField0_ & 0x01000000) != 0)) { + output.writeBool(66, goodForWatchingSports_); + } + if (paymentOptions_ != null) { + output.writeMessage(67, getPaymentOptions()); + } + if (parkingOptions_ != null) { + output.writeMessage(70, getParkingOptions()); + } + for (int i = 0; i < subDestinations_.size(); i++) { + output.writeMessage(71, subDestinations_.get(i)); + } + if (((bitField0_ & 0x02000000) != 0)) { + output.writeMessage(72, getAccessibilityOptions()); + } + if (fuelOptions_ != null) { + output.writeMessage(78, getFuelOptions()); + } + if (evChargeOptions_ != null) { + output.writeMessage(79, getEvChargeOptions()); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, id_); + } + { + int dataSize = 0; + for (int i = 0; i < types_.size(); i++) { + dataSize += computeStringSizeNoTag(types_.getRaw(i)); + } + size += dataSize; + size += 1 * getTypesList().size(); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nationalPhoneNumber_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, nationalPhoneNumber_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(internationalPhoneNumber_)) { + size += + com.google.protobuf.GeneratedMessageV3.computeStringSize(8, internationalPhoneNumber_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(formattedAddress_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, formattedAddress_); + } + for (int i = 0; i < addressComponents_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(10, addressComponents_.get(i)); + } + if (plusCode_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(11, getPlusCode()); + } + if (location_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, getLocation()); + } + if (viewport_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(13, getViewport()); + } + if (java.lang.Double.doubleToRawLongBits(rating_) != 0) { + size += com.google.protobuf.CodedOutputStream.computeDoubleSize(14, rating_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(googleMapsUri_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(15, googleMapsUri_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(websiteUri_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(16, websiteUri_); + } + if (regularOpeningHours_ != null) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(21, getRegularOpeningHours()); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(22, utcOffsetMinutes_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(adrFormatAddress_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(24, adrFormatAddress_); + } + if (businessStatus_ + != com.google.maps.places.v1.Place.BusinessStatus.BUSINESS_STATUS_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(25, businessStatus_); + } + if (priceLevel_ != com.google.maps.places.v1.PriceLevel.PRICE_LEVEL_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(26, priceLevel_); + } + for (int i = 0; i < attributions_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(27, attributions_.get(i)); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(28, userRatingCount_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(iconMaskBaseUri_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(29, iconMaskBaseUri_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(iconBackgroundColor_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(30, iconBackgroundColor_); + } + if (displayName_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(31, getDisplayName()); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(33, takeout_); + } + if (((bitField0_ & 0x00000008) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(34, delivery_); + } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(35, dineIn_); + } + if (((bitField0_ & 0x00000020) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(36, curbsidePickup_); + } + if (((bitField0_ & 0x00000040) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(38, reservable_); + } + if (((bitField0_ & 0x00000080) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(39, servesBreakfast_); + } + if (((bitField0_ & 0x00000100) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(40, servesLunch_); + } + if (((bitField0_ & 0x00000200) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(41, servesDinner_); + } + if (((bitField0_ & 0x00000400) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(42, servesBeer_); + } + if (((bitField0_ & 0x00000800) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(43, servesWine_); + } + if (((bitField0_ & 0x00001000) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(44, servesBrunch_); + } + if (((bitField0_ & 0x00002000) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(45, servesVegetarianFood_); + } + if (currentOpeningHours_ != null) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(46, getCurrentOpeningHours()); + } + for (int i = 0; i < currentSecondaryOpeningHours_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 47, currentSecondaryOpeningHours_.get(i)); + } + for (int i = 0; i < regularSecondaryOpeningHours_.size(); i++) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 49, regularSecondaryOpeningHours_.get(i)); + } + if (editorialSummary_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(52, getEditorialSummary()); + } + for (int i = 0; i < reviews_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(53, reviews_.get(i)); + } + for (int i = 0; i < photos_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(54, photos_.get(i)); + } + if (((bitField0_ & 0x00004000) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(55, outdoorSeating_); + } + if (((bitField0_ & 0x00008000) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(56, liveMusic_); + } + if (((bitField0_ & 0x00010000) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(57, menuForChildren_); + } + if (((bitField0_ & 0x00020000) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(58, servesCocktails_); + } + if (((bitField0_ & 0x00040000) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(59, servesDessert_); + } + if (((bitField0_ & 0x00080000) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(60, servesCoffee_); + } + if (((bitField0_ & 0x00100000) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(62, goodForChildren_); + } + if (((bitField0_ & 0x00200000) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(63, allowsDogs_); + } + if (((bitField0_ & 0x00400000) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(64, restroom_); + } + if (((bitField0_ & 0x00800000) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(65, goodForGroups_); + } + if (((bitField0_ & 0x01000000) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(66, goodForWatchingSports_); + } + if (paymentOptions_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(67, getPaymentOptions()); + } + if (parkingOptions_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(70, getParkingOptions()); + } + for (int i = 0; i < subDestinations_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(71, subDestinations_.get(i)); + } + if (((bitField0_ & 0x02000000) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(72, getAccessibilityOptions()); + } + if (fuelOptions_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(78, getFuelOptions()); + } + if (evChargeOptions_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(79, getEvChargeOptions()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.maps.places.v1.Place)) { + return super.equals(obj); + } + com.google.maps.places.v1.Place other = (com.google.maps.places.v1.Place) obj; + + if (!getName().equals(other.getName())) return false; + if (!getId().equals(other.getId())) return false; + if (hasDisplayName() != other.hasDisplayName()) return false; + if (hasDisplayName()) { + if (!getDisplayName().equals(other.getDisplayName())) return false; + } + if (!getTypesList().equals(other.getTypesList())) return false; + if (!getNationalPhoneNumber().equals(other.getNationalPhoneNumber())) return false; + if (!getInternationalPhoneNumber().equals(other.getInternationalPhoneNumber())) return false; + if (!getFormattedAddress().equals(other.getFormattedAddress())) return false; + if (!getAddressComponentsList().equals(other.getAddressComponentsList())) return false; + if (hasPlusCode() != other.hasPlusCode()) return false; + if (hasPlusCode()) { + if (!getPlusCode().equals(other.getPlusCode())) return false; + } + if (hasLocation() != other.hasLocation()) return false; + if (hasLocation()) { + if (!getLocation().equals(other.getLocation())) return false; + } + if (hasViewport() != other.hasViewport()) return false; + if (hasViewport()) { + if (!getViewport().equals(other.getViewport())) return false; + } + if (java.lang.Double.doubleToLongBits(getRating()) + != java.lang.Double.doubleToLongBits(other.getRating())) return false; + if (!getGoogleMapsUri().equals(other.getGoogleMapsUri())) return false; + if (!getWebsiteUri().equals(other.getWebsiteUri())) return false; + if (!getReviewsList().equals(other.getReviewsList())) return false; + if (hasRegularOpeningHours() != other.hasRegularOpeningHours()) return false; + if (hasRegularOpeningHours()) { + if (!getRegularOpeningHours().equals(other.getRegularOpeningHours())) return false; + } + if (hasUtcOffsetMinutes() != other.hasUtcOffsetMinutes()) return false; + if (hasUtcOffsetMinutes()) { + if (getUtcOffsetMinutes() != other.getUtcOffsetMinutes()) return false; + } + if (!getPhotosList().equals(other.getPhotosList())) return false; + if (!getAdrFormatAddress().equals(other.getAdrFormatAddress())) return false; + if (businessStatus_ != other.businessStatus_) return false; + if (priceLevel_ != other.priceLevel_) return false; + if (!getAttributionsList().equals(other.getAttributionsList())) return false; + if (hasUserRatingCount() != other.hasUserRatingCount()) return false; + if (hasUserRatingCount()) { + if (getUserRatingCount() != other.getUserRatingCount()) return false; + } + if (!getIconMaskBaseUri().equals(other.getIconMaskBaseUri())) return false; + if (!getIconBackgroundColor().equals(other.getIconBackgroundColor())) return false; + if (hasTakeout() != other.hasTakeout()) return false; + if (hasTakeout()) { + if (getTakeout() != other.getTakeout()) return false; + } + if (hasDelivery() != other.hasDelivery()) return false; + if (hasDelivery()) { + if (getDelivery() != other.getDelivery()) return false; + } + if (hasDineIn() != other.hasDineIn()) return false; + if (hasDineIn()) { + if (getDineIn() != other.getDineIn()) return false; + } + if (hasCurbsidePickup() != other.hasCurbsidePickup()) return false; + if (hasCurbsidePickup()) { + if (getCurbsidePickup() != other.getCurbsidePickup()) return false; + } + if (hasReservable() != other.hasReservable()) return false; + if (hasReservable()) { + if (getReservable() != other.getReservable()) return false; + } + if (hasServesBreakfast() != other.hasServesBreakfast()) return false; + if (hasServesBreakfast()) { + if (getServesBreakfast() != other.getServesBreakfast()) return false; + } + if (hasServesLunch() != other.hasServesLunch()) return false; + if (hasServesLunch()) { + if (getServesLunch() != other.getServesLunch()) return false; + } + if (hasServesDinner() != other.hasServesDinner()) return false; + if (hasServesDinner()) { + if (getServesDinner() != other.getServesDinner()) return false; + } + if (hasServesBeer() != other.hasServesBeer()) return false; + if (hasServesBeer()) { + if (getServesBeer() != other.getServesBeer()) return false; + } + if (hasServesWine() != other.hasServesWine()) return false; + if (hasServesWine()) { + if (getServesWine() != other.getServesWine()) return false; + } + if (hasServesBrunch() != other.hasServesBrunch()) return false; + if (hasServesBrunch()) { + if (getServesBrunch() != other.getServesBrunch()) return false; + } + if (hasServesVegetarianFood() != other.hasServesVegetarianFood()) return false; + if (hasServesVegetarianFood()) { + if (getServesVegetarianFood() != other.getServesVegetarianFood()) return false; + } + if (hasCurrentOpeningHours() != other.hasCurrentOpeningHours()) return false; + if (hasCurrentOpeningHours()) { + if (!getCurrentOpeningHours().equals(other.getCurrentOpeningHours())) return false; + } + if (!getCurrentSecondaryOpeningHoursList().equals(other.getCurrentSecondaryOpeningHoursList())) + return false; + if (!getRegularSecondaryOpeningHoursList().equals(other.getRegularSecondaryOpeningHoursList())) + return false; + if (hasEditorialSummary() != other.hasEditorialSummary()) return false; + if (hasEditorialSummary()) { + if (!getEditorialSummary().equals(other.getEditorialSummary())) return false; + } + if (hasOutdoorSeating() != other.hasOutdoorSeating()) return false; + if (hasOutdoorSeating()) { + if (getOutdoorSeating() != other.getOutdoorSeating()) return false; + } + if (hasLiveMusic() != other.hasLiveMusic()) return false; + if (hasLiveMusic()) { + if (getLiveMusic() != other.getLiveMusic()) return false; + } + if (hasMenuForChildren() != other.hasMenuForChildren()) return false; + if (hasMenuForChildren()) { + if (getMenuForChildren() != other.getMenuForChildren()) return false; + } + if (hasServesCocktails() != other.hasServesCocktails()) return false; + if (hasServesCocktails()) { + if (getServesCocktails() != other.getServesCocktails()) return false; + } + if (hasServesDessert() != other.hasServesDessert()) return false; + if (hasServesDessert()) { + if (getServesDessert() != other.getServesDessert()) return false; + } + if (hasServesCoffee() != other.hasServesCoffee()) return false; + if (hasServesCoffee()) { + if (getServesCoffee() != other.getServesCoffee()) return false; + } + if (hasGoodForChildren() != other.hasGoodForChildren()) return false; + if (hasGoodForChildren()) { + if (getGoodForChildren() != other.getGoodForChildren()) return false; + } + if (hasAllowsDogs() != other.hasAllowsDogs()) return false; + if (hasAllowsDogs()) { + if (getAllowsDogs() != other.getAllowsDogs()) return false; + } + if (hasRestroom() != other.hasRestroom()) return false; + if (hasRestroom()) { + if (getRestroom() != other.getRestroom()) return false; + } + if (hasGoodForGroups() != other.hasGoodForGroups()) return false; + if (hasGoodForGroups()) { + if (getGoodForGroups() != other.getGoodForGroups()) return false; + } + if (hasGoodForWatchingSports() != other.hasGoodForWatchingSports()) return false; + if (hasGoodForWatchingSports()) { + if (getGoodForWatchingSports() != other.getGoodForWatchingSports()) return false; + } + if (hasPaymentOptions() != other.hasPaymentOptions()) return false; + if (hasPaymentOptions()) { + if (!getPaymentOptions().equals(other.getPaymentOptions())) return false; + } + if (hasParkingOptions() != other.hasParkingOptions()) return false; + if (hasParkingOptions()) { + if (!getParkingOptions().equals(other.getParkingOptions())) return false; + } + if (!getSubDestinationsList().equals(other.getSubDestinationsList())) return false; + if (hasAccessibilityOptions() != other.hasAccessibilityOptions()) return false; + if (hasAccessibilityOptions()) { + if (!getAccessibilityOptions().equals(other.getAccessibilityOptions())) return false; + } + if (hasFuelOptions() != other.hasFuelOptions()) return false; + if (hasFuelOptions()) { + if (!getFuelOptions().equals(other.getFuelOptions())) return false; + } + if (hasEvChargeOptions() != other.hasEvChargeOptions()) return false; + if (hasEvChargeOptions()) { + if (!getEvChargeOptions().equals(other.getEvChargeOptions())) 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) + ID_FIELD_NUMBER; + hash = (53 * hash) + getId().hashCode(); + if (hasDisplayName()) { + hash = (37 * hash) + DISPLAY_NAME_FIELD_NUMBER; + hash = (53 * hash) + getDisplayName().hashCode(); + } + if (getTypesCount() > 0) { + hash = (37 * hash) + TYPES_FIELD_NUMBER; + hash = (53 * hash) + getTypesList().hashCode(); + } + hash = (37 * hash) + NATIONAL_PHONE_NUMBER_FIELD_NUMBER; + hash = (53 * hash) + getNationalPhoneNumber().hashCode(); + hash = (37 * hash) + INTERNATIONAL_PHONE_NUMBER_FIELD_NUMBER; + hash = (53 * hash) + getInternationalPhoneNumber().hashCode(); + hash = (37 * hash) + FORMATTED_ADDRESS_FIELD_NUMBER; + hash = (53 * hash) + getFormattedAddress().hashCode(); + if (getAddressComponentsCount() > 0) { + hash = (37 * hash) + ADDRESS_COMPONENTS_FIELD_NUMBER; + hash = (53 * hash) + getAddressComponentsList().hashCode(); + } + if (hasPlusCode()) { + hash = (37 * hash) + PLUS_CODE_FIELD_NUMBER; + hash = (53 * hash) + getPlusCode().hashCode(); + } + if (hasLocation()) { + hash = (37 * hash) + LOCATION_FIELD_NUMBER; + hash = (53 * hash) + getLocation().hashCode(); + } + if (hasViewport()) { + hash = (37 * hash) + VIEWPORT_FIELD_NUMBER; + hash = (53 * hash) + getViewport().hashCode(); + } + hash = (37 * hash) + RATING_FIELD_NUMBER; + hash = + (53 * hash) + + com.google.protobuf.Internal.hashLong(java.lang.Double.doubleToLongBits(getRating())); + hash = (37 * hash) + GOOGLE_MAPS_URI_FIELD_NUMBER; + hash = (53 * hash) + getGoogleMapsUri().hashCode(); + hash = (37 * hash) + WEBSITE_URI_FIELD_NUMBER; + hash = (53 * hash) + getWebsiteUri().hashCode(); + if (getReviewsCount() > 0) { + hash = (37 * hash) + REVIEWS_FIELD_NUMBER; + hash = (53 * hash) + getReviewsList().hashCode(); + } + if (hasRegularOpeningHours()) { + hash = (37 * hash) + REGULAR_OPENING_HOURS_FIELD_NUMBER; + hash = (53 * hash) + getRegularOpeningHours().hashCode(); + } + if (hasUtcOffsetMinutes()) { + hash = (37 * hash) + UTC_OFFSET_MINUTES_FIELD_NUMBER; + hash = (53 * hash) + getUtcOffsetMinutes(); + } + if (getPhotosCount() > 0) { + hash = (37 * hash) + PHOTOS_FIELD_NUMBER; + hash = (53 * hash) + getPhotosList().hashCode(); + } + hash = (37 * hash) + ADR_FORMAT_ADDRESS_FIELD_NUMBER; + hash = (53 * hash) + getAdrFormatAddress().hashCode(); + hash = (37 * hash) + BUSINESS_STATUS_FIELD_NUMBER; + hash = (53 * hash) + businessStatus_; + hash = (37 * hash) + PRICE_LEVEL_FIELD_NUMBER; + hash = (53 * hash) + priceLevel_; + if (getAttributionsCount() > 0) { + hash = (37 * hash) + ATTRIBUTIONS_FIELD_NUMBER; + hash = (53 * hash) + getAttributionsList().hashCode(); + } + if (hasUserRatingCount()) { + hash = (37 * hash) + USER_RATING_COUNT_FIELD_NUMBER; + hash = (53 * hash) + getUserRatingCount(); + } + hash = (37 * hash) + ICON_MASK_BASE_URI_FIELD_NUMBER; + hash = (53 * hash) + getIconMaskBaseUri().hashCode(); + hash = (37 * hash) + ICON_BACKGROUND_COLOR_FIELD_NUMBER; + hash = (53 * hash) + getIconBackgroundColor().hashCode(); + if (hasTakeout()) { + hash = (37 * hash) + TAKEOUT_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getTakeout()); + } + if (hasDelivery()) { + hash = (37 * hash) + DELIVERY_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDelivery()); + } + if (hasDineIn()) { + hash = (37 * hash) + DINE_IN_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDineIn()); + } + if (hasCurbsidePickup()) { + hash = (37 * hash) + CURBSIDE_PICKUP_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getCurbsidePickup()); + } + if (hasReservable()) { + hash = (37 * hash) + RESERVABLE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReservable()); + } + if (hasServesBreakfast()) { + hash = (37 * hash) + SERVES_BREAKFAST_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesBreakfast()); + } + if (hasServesLunch()) { + hash = (37 * hash) + SERVES_LUNCH_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesLunch()); + } + if (hasServesDinner()) { + hash = (37 * hash) + SERVES_DINNER_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesDinner()); + } + if (hasServesBeer()) { + hash = (37 * hash) + SERVES_BEER_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesBeer()); + } + if (hasServesWine()) { + hash = (37 * hash) + SERVES_WINE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesWine()); + } + if (hasServesBrunch()) { + hash = (37 * hash) + SERVES_BRUNCH_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesBrunch()); + } + if (hasServesVegetarianFood()) { + hash = (37 * hash) + SERVES_VEGETARIAN_FOOD_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesVegetarianFood()); + } + if (hasCurrentOpeningHours()) { + hash = (37 * hash) + CURRENT_OPENING_HOURS_FIELD_NUMBER; + hash = (53 * hash) + getCurrentOpeningHours().hashCode(); + } + if (getCurrentSecondaryOpeningHoursCount() > 0) { + hash = (37 * hash) + CURRENT_SECONDARY_OPENING_HOURS_FIELD_NUMBER; + hash = (53 * hash) + getCurrentSecondaryOpeningHoursList().hashCode(); + } + if (getRegularSecondaryOpeningHoursCount() > 0) { + hash = (37 * hash) + REGULAR_SECONDARY_OPENING_HOURS_FIELD_NUMBER; + hash = (53 * hash) + getRegularSecondaryOpeningHoursList().hashCode(); + } + if (hasEditorialSummary()) { + hash = (37 * hash) + EDITORIAL_SUMMARY_FIELD_NUMBER; + hash = (53 * hash) + getEditorialSummary().hashCode(); + } + if (hasOutdoorSeating()) { + hash = (37 * hash) + OUTDOOR_SEATING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getOutdoorSeating()); + } + if (hasLiveMusic()) { + hash = (37 * hash) + LIVE_MUSIC_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getLiveMusic()); + } + if (hasMenuForChildren()) { + hash = (37 * hash) + MENU_FOR_CHILDREN_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getMenuForChildren()); + } + if (hasServesCocktails()) { + hash = (37 * hash) + SERVES_COCKTAILS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesCocktails()); + } + if (hasServesDessert()) { + hash = (37 * hash) + SERVES_DESSERT_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesDessert()); + } + if (hasServesCoffee()) { + hash = (37 * hash) + SERVES_COFFEE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getServesCoffee()); + } + if (hasGoodForChildren()) { + hash = (37 * hash) + GOOD_FOR_CHILDREN_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getGoodForChildren()); + } + if (hasAllowsDogs()) { + hash = (37 * hash) + ALLOWS_DOGS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getAllowsDogs()); + } + if (hasRestroom()) { + hash = (37 * hash) + RESTROOM_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getRestroom()); + } + if (hasGoodForGroups()) { + hash = (37 * hash) + GOOD_FOR_GROUPS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getGoodForGroups()); + } + if (hasGoodForWatchingSports()) { + hash = (37 * hash) + GOOD_FOR_WATCHING_SPORTS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getGoodForWatchingSports()); + } + if (hasPaymentOptions()) { + hash = (37 * hash) + PAYMENT_OPTIONS_FIELD_NUMBER; + hash = (53 * hash) + getPaymentOptions().hashCode(); + } + if (hasParkingOptions()) { + hash = (37 * hash) + PARKING_OPTIONS_FIELD_NUMBER; + hash = (53 * hash) + getParkingOptions().hashCode(); + } + if (getSubDestinationsCount() > 0) { + hash = (37 * hash) + SUB_DESTINATIONS_FIELD_NUMBER; + hash = (53 * hash) + getSubDestinationsList().hashCode(); + } + if (hasAccessibilityOptions()) { + hash = (37 * hash) + ACCESSIBILITY_OPTIONS_FIELD_NUMBER; + hash = (53 * hash) + getAccessibilityOptions().hashCode(); + } + if (hasFuelOptions()) { + hash = (37 * hash) + FUEL_OPTIONS_FIELD_NUMBER; + hash = (53 * hash) + getFuelOptions().hashCode(); + } + if (hasEvChargeOptions()) { + hash = (37 * hash) + EV_CHARGE_OPTIONS_FIELD_NUMBER; + hash = (53 * hash) + getEvChargeOptions().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.Place parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Place parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Place parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Place parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Place parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Place parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Place parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Place parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.Place parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Place parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.Place parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Place parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.maps.places.v1.Place 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+   * All the information representing a Place.
+   * 
+ * + * Protobuf type {@code google.maps.places.v1.Place} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Place) + com.google.maps.places.v1.PlaceOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Place.class, com.google.maps.places.v1.Place.Builder.class); + } + + // Construct using com.google.maps.places.v1.Place.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) { + getDisplayNameFieldBuilder(); + getAddressComponentsFieldBuilder(); + getPlusCodeFieldBuilder(); + getLocationFieldBuilder(); + getViewportFieldBuilder(); + getReviewsFieldBuilder(); + getRegularOpeningHoursFieldBuilder(); + getPhotosFieldBuilder(); + getAttributionsFieldBuilder(); + getCurrentOpeningHoursFieldBuilder(); + getCurrentSecondaryOpeningHoursFieldBuilder(); + getRegularSecondaryOpeningHoursFieldBuilder(); + getEditorialSummaryFieldBuilder(); + getPaymentOptionsFieldBuilder(); + getParkingOptionsFieldBuilder(); + getSubDestinationsFieldBuilder(); + getAccessibilityOptionsFieldBuilder(); + getFuelOptionsFieldBuilder(); + getEvChargeOptionsFieldBuilder(); + } + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + bitField1_ = 0; + name_ = ""; + id_ = ""; + displayName_ = null; + if (displayNameBuilder_ != null) { + displayNameBuilder_.dispose(); + displayNameBuilder_ = null; + } + types_ = com.google.protobuf.LazyStringArrayList.emptyList(); + nationalPhoneNumber_ = ""; + internationalPhoneNumber_ = ""; + formattedAddress_ = ""; + if (addressComponentsBuilder_ == null) { + addressComponents_ = java.util.Collections.emptyList(); + } else { + addressComponents_ = null; + addressComponentsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000080); + plusCode_ = null; + if (plusCodeBuilder_ != null) { + plusCodeBuilder_.dispose(); + plusCodeBuilder_ = null; + } + location_ = null; + if (locationBuilder_ != null) { + locationBuilder_.dispose(); + locationBuilder_ = null; + } + viewport_ = null; + if (viewportBuilder_ != null) { + viewportBuilder_.dispose(); + viewportBuilder_ = null; + } + rating_ = 0D; + googleMapsUri_ = ""; + websiteUri_ = ""; + if (reviewsBuilder_ == null) { + reviews_ = java.util.Collections.emptyList(); + } else { + reviews_ = null; + reviewsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00004000); + regularOpeningHours_ = null; + if (regularOpeningHoursBuilder_ != null) { + regularOpeningHoursBuilder_.dispose(); + regularOpeningHoursBuilder_ = null; + } + utcOffsetMinutes_ = 0; + if (photosBuilder_ == null) { + photos_ = java.util.Collections.emptyList(); + } else { + photos_ = null; + photosBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00020000); + adrFormatAddress_ = ""; + businessStatus_ = 0; + priceLevel_ = 0; + if (attributionsBuilder_ == null) { + attributions_ = java.util.Collections.emptyList(); + } else { + attributions_ = null; + attributionsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00200000); + userRatingCount_ = 0; + iconMaskBaseUri_ = ""; + iconBackgroundColor_ = ""; + takeout_ = false; + delivery_ = false; + dineIn_ = false; + curbsidePickup_ = false; + reservable_ = false; + servesBreakfast_ = false; + servesLunch_ = false; + servesDinner_ = false; + servesBeer_ = false; + servesWine_ = false; + servesBrunch_ = false; + servesVegetarianFood_ = false; + currentOpeningHours_ = null; + if (currentOpeningHoursBuilder_ != null) { + currentOpeningHoursBuilder_.dispose(); + currentOpeningHoursBuilder_ = null; + } + if (currentSecondaryOpeningHoursBuilder_ == null) { + currentSecondaryOpeningHours_ = java.util.Collections.emptyList(); + } else { + currentSecondaryOpeningHours_ = null; + currentSecondaryOpeningHoursBuilder_.clear(); + } + bitField1_ = (bitField1_ & ~0x00000040); + if (regularSecondaryOpeningHoursBuilder_ == null) { + regularSecondaryOpeningHours_ = java.util.Collections.emptyList(); + } else { + regularSecondaryOpeningHours_ = null; + regularSecondaryOpeningHoursBuilder_.clear(); + } + bitField1_ = (bitField1_ & ~0x00000080); + editorialSummary_ = null; + if (editorialSummaryBuilder_ != null) { + editorialSummaryBuilder_.dispose(); + editorialSummaryBuilder_ = null; + } + outdoorSeating_ = false; + liveMusic_ = false; + menuForChildren_ = false; + servesCocktails_ = false; + servesDessert_ = false; + servesCoffee_ = false; + goodForChildren_ = false; + allowsDogs_ = false; + restroom_ = false; + goodForGroups_ = false; + goodForWatchingSports_ = false; + paymentOptions_ = null; + if (paymentOptionsBuilder_ != null) { + paymentOptionsBuilder_.dispose(); + paymentOptionsBuilder_ = null; + } + parkingOptions_ = null; + if (parkingOptionsBuilder_ != null) { + parkingOptionsBuilder_.dispose(); + parkingOptionsBuilder_ = null; + } + if (subDestinationsBuilder_ == null) { + subDestinations_ = java.util.Collections.emptyList(); + } else { + subDestinations_ = null; + subDestinationsBuilder_.clear(); + } + bitField1_ = (bitField1_ & ~0x00400000); + accessibilityOptions_ = null; + if (accessibilityOptionsBuilder_ != null) { + accessibilityOptionsBuilder_.dispose(); + accessibilityOptionsBuilder_ = null; + } + fuelOptions_ = null; + if (fuelOptionsBuilder_ != null) { + fuelOptionsBuilder_.dispose(); + fuelOptionsBuilder_ = null; + } + evChargeOptions_ = null; + if (evChargeOptionsBuilder_ != null) { + evChargeOptionsBuilder_.dispose(); + evChargeOptionsBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.PlaceProto + .internal_static_google_maps_places_v1_Place_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.Place getDefaultInstanceForType() { + return com.google.maps.places.v1.Place.getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.Place build() { + com.google.maps.places.v1.Place result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.Place buildPartial() { + com.google.maps.places.v1.Place result = new com.google.maps.places.v1.Place(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + if (bitField1_ != 0) { + buildPartial1(result); + } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(com.google.maps.places.v1.Place result) { + if (addressComponentsBuilder_ == null) { + if (((bitField0_ & 0x00000080) != 0)) { + addressComponents_ = java.util.Collections.unmodifiableList(addressComponents_); + bitField0_ = (bitField0_ & ~0x00000080); + } + result.addressComponents_ = addressComponents_; + } else { + result.addressComponents_ = addressComponentsBuilder_.build(); + } + if (reviewsBuilder_ == null) { + if (((bitField0_ & 0x00004000) != 0)) { + reviews_ = java.util.Collections.unmodifiableList(reviews_); + bitField0_ = (bitField0_ & ~0x00004000); + } + result.reviews_ = reviews_; + } else { + result.reviews_ = reviewsBuilder_.build(); + } + if (photosBuilder_ == null) { + if (((bitField0_ & 0x00020000) != 0)) { + photos_ = java.util.Collections.unmodifiableList(photos_); + bitField0_ = (bitField0_ & ~0x00020000); + } + result.photos_ = photos_; + } else { + result.photos_ = photosBuilder_.build(); + } + if (attributionsBuilder_ == null) { + if (((bitField0_ & 0x00200000) != 0)) { + attributions_ = java.util.Collections.unmodifiableList(attributions_); + bitField0_ = (bitField0_ & ~0x00200000); + } + result.attributions_ = attributions_; + } else { + result.attributions_ = attributionsBuilder_.build(); + } + if (currentSecondaryOpeningHoursBuilder_ == null) { + if (((bitField1_ & 0x00000040) != 0)) { + currentSecondaryOpeningHours_ = + java.util.Collections.unmodifiableList(currentSecondaryOpeningHours_); + bitField1_ = (bitField1_ & ~0x00000040); + } + result.currentSecondaryOpeningHours_ = currentSecondaryOpeningHours_; + } else { + result.currentSecondaryOpeningHours_ = currentSecondaryOpeningHoursBuilder_.build(); + } + if (regularSecondaryOpeningHoursBuilder_ == null) { + if (((bitField1_ & 0x00000080) != 0)) { + regularSecondaryOpeningHours_ = + java.util.Collections.unmodifiableList(regularSecondaryOpeningHours_); + bitField1_ = (bitField1_ & ~0x00000080); + } + result.regularSecondaryOpeningHours_ = regularSecondaryOpeningHours_; + } else { + result.regularSecondaryOpeningHours_ = regularSecondaryOpeningHoursBuilder_.build(); + } + if (subDestinationsBuilder_ == null) { + if (((bitField1_ & 0x00400000) != 0)) { + subDestinations_ = java.util.Collections.unmodifiableList(subDestinations_); + bitField1_ = (bitField1_ & ~0x00400000); + } + result.subDestinations_ = subDestinations_; + } else { + result.subDestinations_ = subDestinationsBuilder_.build(); + } + } + + private void buildPartial0(com.google.maps.places.v1.Place 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.displayName_ = + displayNameBuilder_ == null ? displayName_ : displayNameBuilder_.build(); + } + if (((from_bitField0_ & 0x00000008) != 0)) { + types_.makeImmutable(); + result.types_ = types_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.nationalPhoneNumber_ = nationalPhoneNumber_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.internationalPhoneNumber_ = internationalPhoneNumber_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.formattedAddress_ = formattedAddress_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.plusCode_ = plusCodeBuilder_ == null ? plusCode_ : plusCodeBuilder_.build(); + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.location_ = locationBuilder_ == null ? location_ : locationBuilder_.build(); + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.viewport_ = viewportBuilder_ == null ? viewport_ : viewportBuilder_.build(); + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.rating_ = rating_; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.googleMapsUri_ = googleMapsUri_; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.websiteUri_ = websiteUri_; + } + if (((from_bitField0_ & 0x00008000) != 0)) { + result.regularOpeningHours_ = + regularOpeningHoursBuilder_ == null + ? regularOpeningHours_ + : regularOpeningHoursBuilder_.build(); + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00010000) != 0)) { + result.utcOffsetMinutes_ = utcOffsetMinutes_; + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00040000) != 0)) { + result.adrFormatAddress_ = adrFormatAddress_; + } + if (((from_bitField0_ & 0x00080000) != 0)) { + result.businessStatus_ = businessStatus_; + } + if (((from_bitField0_ & 0x00100000) != 0)) { + result.priceLevel_ = priceLevel_; + } + if (((from_bitField0_ & 0x00400000) != 0)) { + result.userRatingCount_ = userRatingCount_; + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00800000) != 0)) { + result.iconMaskBaseUri_ = iconMaskBaseUri_; + } + if (((from_bitField0_ & 0x01000000) != 0)) { + result.iconBackgroundColor_ = iconBackgroundColor_; + } + if (((from_bitField0_ & 0x02000000) != 0)) { + result.takeout_ = takeout_; + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x04000000) != 0)) { + result.delivery_ = delivery_; + to_bitField0_ |= 0x00000008; + } + if (((from_bitField0_ & 0x08000000) != 0)) { + result.dineIn_ = dineIn_; + to_bitField0_ |= 0x00000010; + } + if (((from_bitField0_ & 0x10000000) != 0)) { + result.curbsidePickup_ = curbsidePickup_; + to_bitField0_ |= 0x00000020; + } + if (((from_bitField0_ & 0x20000000) != 0)) { + result.reservable_ = reservable_; + to_bitField0_ |= 0x00000040; + } + if (((from_bitField0_ & 0x40000000) != 0)) { + result.servesBreakfast_ = servesBreakfast_; + to_bitField0_ |= 0x00000080; + } + if (((from_bitField0_ & 0x80000000) != 0)) { + result.servesLunch_ = servesLunch_; + to_bitField0_ |= 0x00000100; + } + result.bitField0_ |= to_bitField0_; + } + + private void buildPartial1(com.google.maps.places.v1.Place result) { + int from_bitField1_ = bitField1_; + int to_bitField0_ = 0; + if (((from_bitField1_ & 0x00000001) != 0)) { + result.servesDinner_ = servesDinner_; + to_bitField0_ |= 0x00000200; + } + if (((from_bitField1_ & 0x00000002) != 0)) { + result.servesBeer_ = servesBeer_; + to_bitField0_ |= 0x00000400; + } + if (((from_bitField1_ & 0x00000004) != 0)) { + result.servesWine_ = servesWine_; + to_bitField0_ |= 0x00000800; + } + if (((from_bitField1_ & 0x00000008) != 0)) { + result.servesBrunch_ = servesBrunch_; + to_bitField0_ |= 0x00001000; + } + if (((from_bitField1_ & 0x00000010) != 0)) { + result.servesVegetarianFood_ = servesVegetarianFood_; + to_bitField0_ |= 0x00002000; + } + if (((from_bitField1_ & 0x00000020) != 0)) { + result.currentOpeningHours_ = + currentOpeningHoursBuilder_ == null + ? currentOpeningHours_ + : currentOpeningHoursBuilder_.build(); + } + if (((from_bitField1_ & 0x00000100) != 0)) { + result.editorialSummary_ = + editorialSummaryBuilder_ == null ? editorialSummary_ : editorialSummaryBuilder_.build(); + } + if (((from_bitField1_ & 0x00000200) != 0)) { + result.outdoorSeating_ = outdoorSeating_; + to_bitField0_ |= 0x00004000; + } + if (((from_bitField1_ & 0x00000400) != 0)) { + result.liveMusic_ = liveMusic_; + to_bitField0_ |= 0x00008000; + } + if (((from_bitField1_ & 0x00000800) != 0)) { + result.menuForChildren_ = menuForChildren_; + to_bitField0_ |= 0x00010000; + } + if (((from_bitField1_ & 0x00001000) != 0)) { + result.servesCocktails_ = servesCocktails_; + to_bitField0_ |= 0x00020000; + } + if (((from_bitField1_ & 0x00002000) != 0)) { + result.servesDessert_ = servesDessert_; + to_bitField0_ |= 0x00040000; + } + if (((from_bitField1_ & 0x00004000) != 0)) { + result.servesCoffee_ = servesCoffee_; + to_bitField0_ |= 0x00080000; + } + if (((from_bitField1_ & 0x00008000) != 0)) { + result.goodForChildren_ = goodForChildren_; + to_bitField0_ |= 0x00100000; + } + if (((from_bitField1_ & 0x00010000) != 0)) { + result.allowsDogs_ = allowsDogs_; + to_bitField0_ |= 0x00200000; + } + if (((from_bitField1_ & 0x00020000) != 0)) { + result.restroom_ = restroom_; + to_bitField0_ |= 0x00400000; + } + if (((from_bitField1_ & 0x00040000) != 0)) { + result.goodForGroups_ = goodForGroups_; + to_bitField0_ |= 0x00800000; + } + if (((from_bitField1_ & 0x00080000) != 0)) { + result.goodForWatchingSports_ = goodForWatchingSports_; + to_bitField0_ |= 0x01000000; + } + if (((from_bitField1_ & 0x00100000) != 0)) { + result.paymentOptions_ = + paymentOptionsBuilder_ == null ? paymentOptions_ : paymentOptionsBuilder_.build(); + } + if (((from_bitField1_ & 0x00200000) != 0)) { + result.parkingOptions_ = + parkingOptionsBuilder_ == null ? parkingOptions_ : parkingOptionsBuilder_.build(); + } + if (((from_bitField1_ & 0x00800000) != 0)) { + result.accessibilityOptions_ = + accessibilityOptionsBuilder_ == null + ? accessibilityOptions_ + : accessibilityOptionsBuilder_.build(); + to_bitField0_ |= 0x02000000; + } + if (((from_bitField1_ & 0x01000000) != 0)) { + result.fuelOptions_ = + fuelOptionsBuilder_ == null ? fuelOptions_ : fuelOptionsBuilder_.build(); + } + if (((from_bitField1_ & 0x02000000) != 0)) { + result.evChargeOptions_ = + evChargeOptionsBuilder_ == null ? evChargeOptions_ : evChargeOptionsBuilder_.build(); + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.Place) { + return mergeFrom((com.google.maps.places.v1.Place) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.maps.places.v1.Place other) { + if (other == com.google.maps.places.v1.Place.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.hasDisplayName()) { + mergeDisplayName(other.getDisplayName()); + } + if (!other.types_.isEmpty()) { + if (types_.isEmpty()) { + types_ = other.types_; + bitField0_ |= 0x00000008; + } else { + ensureTypesIsMutable(); + types_.addAll(other.types_); + } + onChanged(); + } + if (!other.getNationalPhoneNumber().isEmpty()) { + nationalPhoneNumber_ = other.nationalPhoneNumber_; + bitField0_ |= 0x00000010; + onChanged(); + } + if (!other.getInternationalPhoneNumber().isEmpty()) { + internationalPhoneNumber_ = other.internationalPhoneNumber_; + bitField0_ |= 0x00000020; + onChanged(); + } + if (!other.getFormattedAddress().isEmpty()) { + formattedAddress_ = other.formattedAddress_; + bitField0_ |= 0x00000040; + onChanged(); + } + if (addressComponentsBuilder_ == null) { + if (!other.addressComponents_.isEmpty()) { + if (addressComponents_.isEmpty()) { + addressComponents_ = other.addressComponents_; + bitField0_ = (bitField0_ & ~0x00000080); + } else { + ensureAddressComponentsIsMutable(); + addressComponents_.addAll(other.addressComponents_); + } + onChanged(); + } + } else { + if (!other.addressComponents_.isEmpty()) { + if (addressComponentsBuilder_.isEmpty()) { + addressComponentsBuilder_.dispose(); + addressComponentsBuilder_ = null; + addressComponents_ = other.addressComponents_; + bitField0_ = (bitField0_ & ~0x00000080); + addressComponentsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders + ? getAddressComponentsFieldBuilder() + : null; + } else { + addressComponentsBuilder_.addAllMessages(other.addressComponents_); + } + } + } + if (other.hasPlusCode()) { + mergePlusCode(other.getPlusCode()); + } + if (other.hasLocation()) { + mergeLocation(other.getLocation()); + } + if (other.hasViewport()) { + mergeViewport(other.getViewport()); + } + if (other.getRating() != 0D) { + setRating(other.getRating()); + } + if (!other.getGoogleMapsUri().isEmpty()) { + googleMapsUri_ = other.googleMapsUri_; + bitField0_ |= 0x00001000; + onChanged(); + } + if (!other.getWebsiteUri().isEmpty()) { + websiteUri_ = other.websiteUri_; + bitField0_ |= 0x00002000; + onChanged(); + } + if (reviewsBuilder_ == null) { + if (!other.reviews_.isEmpty()) { + if (reviews_.isEmpty()) { + reviews_ = other.reviews_; + bitField0_ = (bitField0_ & ~0x00004000); + } else { + ensureReviewsIsMutable(); + reviews_.addAll(other.reviews_); + } + onChanged(); + } + } else { + if (!other.reviews_.isEmpty()) { + if (reviewsBuilder_.isEmpty()) { + reviewsBuilder_.dispose(); + reviewsBuilder_ = null; + reviews_ = other.reviews_; + bitField0_ = (bitField0_ & ~0x00004000); + reviewsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders + ? getReviewsFieldBuilder() + : null; + } else { + reviewsBuilder_.addAllMessages(other.reviews_); + } + } + } + if (other.hasRegularOpeningHours()) { + mergeRegularOpeningHours(other.getRegularOpeningHours()); + } + if (other.hasUtcOffsetMinutes()) { + setUtcOffsetMinutes(other.getUtcOffsetMinutes()); + } + if (photosBuilder_ == null) { + if (!other.photos_.isEmpty()) { + if (photos_.isEmpty()) { + photos_ = other.photos_; + bitField0_ = (bitField0_ & ~0x00020000); + } else { + ensurePhotosIsMutable(); + photos_.addAll(other.photos_); + } + onChanged(); + } + } else { + if (!other.photos_.isEmpty()) { + if (photosBuilder_.isEmpty()) { + photosBuilder_.dispose(); + photosBuilder_ = null; + photos_ = other.photos_; + bitField0_ = (bitField0_ & ~0x00020000); + photosBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders + ? getPhotosFieldBuilder() + : null; + } else { + photosBuilder_.addAllMessages(other.photos_); + } + } + } + if (!other.getAdrFormatAddress().isEmpty()) { + adrFormatAddress_ = other.adrFormatAddress_; + bitField0_ |= 0x00040000; + onChanged(); + } + if (other.businessStatus_ != 0) { + setBusinessStatusValue(other.getBusinessStatusValue()); + } + if (other.priceLevel_ != 0) { + setPriceLevelValue(other.getPriceLevelValue()); + } + if (attributionsBuilder_ == null) { + if (!other.attributions_.isEmpty()) { + if (attributions_.isEmpty()) { + attributions_ = other.attributions_; + bitField0_ = (bitField0_ & ~0x00200000); + } else { + ensureAttributionsIsMutable(); + attributions_.addAll(other.attributions_); + } + onChanged(); + } + } else { + if (!other.attributions_.isEmpty()) { + if (attributionsBuilder_.isEmpty()) { + attributionsBuilder_.dispose(); + attributionsBuilder_ = null; + attributions_ = other.attributions_; + bitField0_ = (bitField0_ & ~0x00200000); + attributionsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders + ? getAttributionsFieldBuilder() + : null; + } else { + attributionsBuilder_.addAllMessages(other.attributions_); + } + } + } + if (other.hasUserRatingCount()) { + setUserRatingCount(other.getUserRatingCount()); + } + if (!other.getIconMaskBaseUri().isEmpty()) { + iconMaskBaseUri_ = other.iconMaskBaseUri_; + bitField0_ |= 0x00800000; + onChanged(); + } + if (!other.getIconBackgroundColor().isEmpty()) { + iconBackgroundColor_ = other.iconBackgroundColor_; + bitField0_ |= 0x01000000; + onChanged(); + } + if (other.hasTakeout()) { + setTakeout(other.getTakeout()); + } + if (other.hasDelivery()) { + setDelivery(other.getDelivery()); + } + if (other.hasDineIn()) { + setDineIn(other.getDineIn()); + } + if (other.hasCurbsidePickup()) { + setCurbsidePickup(other.getCurbsidePickup()); + } + if (other.hasReservable()) { + setReservable(other.getReservable()); + } + if (other.hasServesBreakfast()) { + setServesBreakfast(other.getServesBreakfast()); + } + if (other.hasServesLunch()) { + setServesLunch(other.getServesLunch()); + } + if (other.hasServesDinner()) { + setServesDinner(other.getServesDinner()); + } + if (other.hasServesBeer()) { + setServesBeer(other.getServesBeer()); + } + if (other.hasServesWine()) { + setServesWine(other.getServesWine()); + } + if (other.hasServesBrunch()) { + setServesBrunch(other.getServesBrunch()); + } + if (other.hasServesVegetarianFood()) { + setServesVegetarianFood(other.getServesVegetarianFood()); + } + if (other.hasCurrentOpeningHours()) { + mergeCurrentOpeningHours(other.getCurrentOpeningHours()); + } + if (currentSecondaryOpeningHoursBuilder_ == null) { + if (!other.currentSecondaryOpeningHours_.isEmpty()) { + if (currentSecondaryOpeningHours_.isEmpty()) { + currentSecondaryOpeningHours_ = other.currentSecondaryOpeningHours_; + bitField1_ = (bitField1_ & ~0x00000040); + } else { + ensureCurrentSecondaryOpeningHoursIsMutable(); + currentSecondaryOpeningHours_.addAll(other.currentSecondaryOpeningHours_); + } + onChanged(); + } + } else { + if (!other.currentSecondaryOpeningHours_.isEmpty()) { + if (currentSecondaryOpeningHoursBuilder_.isEmpty()) { + currentSecondaryOpeningHoursBuilder_.dispose(); + currentSecondaryOpeningHoursBuilder_ = null; + currentSecondaryOpeningHours_ = other.currentSecondaryOpeningHours_; + bitField1_ = (bitField1_ & ~0x00000040); + currentSecondaryOpeningHoursBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders + ? getCurrentSecondaryOpeningHoursFieldBuilder() + : null; + } else { + currentSecondaryOpeningHoursBuilder_.addAllMessages( + other.currentSecondaryOpeningHours_); + } + } + } + if (regularSecondaryOpeningHoursBuilder_ == null) { + if (!other.regularSecondaryOpeningHours_.isEmpty()) { + if (regularSecondaryOpeningHours_.isEmpty()) { + regularSecondaryOpeningHours_ = other.regularSecondaryOpeningHours_; + bitField1_ = (bitField1_ & ~0x00000080); + } else { + ensureRegularSecondaryOpeningHoursIsMutable(); + regularSecondaryOpeningHours_.addAll(other.regularSecondaryOpeningHours_); + } + onChanged(); + } + } else { + if (!other.regularSecondaryOpeningHours_.isEmpty()) { + if (regularSecondaryOpeningHoursBuilder_.isEmpty()) { + regularSecondaryOpeningHoursBuilder_.dispose(); + regularSecondaryOpeningHoursBuilder_ = null; + regularSecondaryOpeningHours_ = other.regularSecondaryOpeningHours_; + bitField1_ = (bitField1_ & ~0x00000080); + regularSecondaryOpeningHoursBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders + ? getRegularSecondaryOpeningHoursFieldBuilder() + : null; + } else { + regularSecondaryOpeningHoursBuilder_.addAllMessages( + other.regularSecondaryOpeningHours_); + } + } + } + if (other.hasEditorialSummary()) { + mergeEditorialSummary(other.getEditorialSummary()); + } + if (other.hasOutdoorSeating()) { + setOutdoorSeating(other.getOutdoorSeating()); + } + if (other.hasLiveMusic()) { + setLiveMusic(other.getLiveMusic()); + } + if (other.hasMenuForChildren()) { + setMenuForChildren(other.getMenuForChildren()); + } + if (other.hasServesCocktails()) { + setServesCocktails(other.getServesCocktails()); + } + if (other.hasServesDessert()) { + setServesDessert(other.getServesDessert()); + } + if (other.hasServesCoffee()) { + setServesCoffee(other.getServesCoffee()); + } + if (other.hasGoodForChildren()) { + setGoodForChildren(other.getGoodForChildren()); + } + if (other.hasAllowsDogs()) { + setAllowsDogs(other.getAllowsDogs()); + } + if (other.hasRestroom()) { + setRestroom(other.getRestroom()); + } + if (other.hasGoodForGroups()) { + setGoodForGroups(other.getGoodForGroups()); + } + if (other.hasGoodForWatchingSports()) { + setGoodForWatchingSports(other.getGoodForWatchingSports()); + } + if (other.hasPaymentOptions()) { + mergePaymentOptions(other.getPaymentOptions()); + } + if (other.hasParkingOptions()) { + mergeParkingOptions(other.getParkingOptions()); + } + if (subDestinationsBuilder_ == null) { + if (!other.subDestinations_.isEmpty()) { + if (subDestinations_.isEmpty()) { + subDestinations_ = other.subDestinations_; + bitField1_ = (bitField1_ & ~0x00400000); + } else { + ensureSubDestinationsIsMutable(); + subDestinations_.addAll(other.subDestinations_); + } + onChanged(); + } + } else { + if (!other.subDestinations_.isEmpty()) { + if (subDestinationsBuilder_.isEmpty()) { + subDestinationsBuilder_.dispose(); + subDestinationsBuilder_ = null; + subDestinations_ = other.subDestinations_; + bitField1_ = (bitField1_ & ~0x00400000); + subDestinationsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders + ? getSubDestinationsFieldBuilder() + : null; + } else { + subDestinationsBuilder_.addAllMessages(other.subDestinations_); + } + } + } + if (other.hasAccessibilityOptions()) { + mergeAccessibilityOptions(other.getAccessibilityOptions()); + } + if (other.hasFuelOptions()) { + mergeFuelOptions(other.getFuelOptions()); + } + if (other.hasEvChargeOptions()) { + mergeEvChargeOptions(other.getEvChargeOptions()); + } + 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(getLocationFieldBuilder().getBuilder(), extensionRegistry); + name_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + id_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 42: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureTypesIsMutable(); + types_.add(s); + break; + } // case 42 + case 58: + { + nationalPhoneNumber_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000010; + break; + } // case 58 + case 66: + { + internationalPhoneNumber_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000020; + break; + } // case 66 + case 74: + { + formattedAddress_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000040; + break; + } // case 74 + case 82: + { + com.google.maps.places.v1.Place.AddressComponent m = + input.readMessage( + com.google.maps.places.v1.Place.AddressComponent.parser(), + extensionRegistry); + if (addressComponentsBuilder_ == null) { + ensureAddressComponentsIsMutable(); + addressComponents_.add(m); + } else { + addressComponentsBuilder_.addMessage(m); + } + break; + } // case 82 + case 90: + { + input.readMessage(getPlusCodeFieldBuilder().getBuilder(), extensionRegistry); bitField0_ |= 0x00000100; break; + } // case 90 + case 98: + { + input.readMessage(getLocationFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000200; + break; } // case 98 case 106: { input.readMessage(getViewportFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000200; + bitField0_ |= 0x00000400; break; } // case 106 case 113: { rating_ = input.readDouble(); - bitField0_ |= 0x00000400; + bitField0_ |= 0x00000800; break; } // case 113 case 122: { googleMapsUri_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000800; + bitField0_ |= 0x00001000; break; } // case 122 case 130: { websiteUri_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00001000; + bitField0_ |= 0x00002000; break; } // case 130 - case 162: - { - com.google.maps.places.v1.Place.Review m = - input.readMessage( - com.google.maps.places.v1.Place.Review.parser(), extensionRegistry); - if (reviewsBuilder_ == null) { - ensureReviewsIsMutable(); - reviews_.add(m); - } else { - reviewsBuilder_.addMessage(m); - } - break; - } // case 162 case 170: { - input.readMessage(getOpeningHoursFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00004000; + input.readMessage( + getRegularOpeningHoursFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00008000; break; } // case 170 case 176: { utcOffsetMinutes_ = input.readInt32(); - bitField0_ |= 0x00008000; + bitField0_ |= 0x00010000; break; } // case 176 case 194: { adrFormatAddress_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00010000; + bitField0_ |= 0x00040000; break; } // case 194 case 200: { businessStatus_ = input.readEnum(); - bitField0_ |= 0x00020000; + bitField0_ |= 0x00080000; break; } // case 200 case 208: { priceLevel_ = input.readEnum(); - bitField0_ |= 0x00040000; + bitField0_ |= 0x00100000; break; } // case 208 case 218: @@ -16309,110 +18491,104 @@ public Builder mergeFrom( case 224: { userRatingCount_ = input.readInt32(); - bitField0_ |= 0x00100000; + bitField0_ |= 0x00400000; break; } // case 224 case 234: { iconMaskBaseUri_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00200000; + bitField0_ |= 0x00800000; break; } // case 234 case 242: { iconBackgroundColor_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00400000; + bitField0_ |= 0x01000000; break; } // case 242 case 250: { input.readMessage(getDisplayNameFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000002; + bitField0_ |= 0x00000004; break; } // case 250 case 264: { takeout_ = input.readBool(); - bitField0_ |= 0x00800000; + bitField0_ |= 0x02000000; break; } // case 264 case 272: { delivery_ = input.readBool(); - bitField0_ |= 0x01000000; + bitField0_ |= 0x04000000; break; } // case 272 case 280: { dineIn_ = input.readBool(); - bitField0_ |= 0x02000000; + bitField0_ |= 0x08000000; break; } // case 280 case 288: { curbsidePickup_ = input.readBool(); - bitField0_ |= 0x04000000; + bitField0_ |= 0x10000000; break; } // case 288 - case 296: - { - wheelchairAccessibleEntrance_ = input.readBool(); - bitField0_ |= 0x08000000; - break; - } // case 296 case 304: { reservable_ = input.readBool(); - bitField0_ |= 0x10000000; + bitField0_ |= 0x20000000; break; } // case 304 case 312: { servesBreakfast_ = input.readBool(); - bitField0_ |= 0x20000000; + bitField0_ |= 0x40000000; break; } // case 312 case 320: { servesLunch_ = input.readBool(); - bitField0_ |= 0x40000000; + bitField0_ |= 0x80000000; break; } // case 320 case 328: { servesDinner_ = input.readBool(); - bitField0_ |= 0x80000000; + bitField1_ |= 0x00000001; break; } // case 328 case 336: { servesBeer_ = input.readBool(); - bitField1_ |= 0x00000001; + bitField1_ |= 0x00000002; break; } // case 336 case 344: { servesWine_ = input.readBool(); - bitField1_ |= 0x00000002; + bitField1_ |= 0x00000004; break; } // case 344 case 352: { servesBrunch_ = input.readBool(); - bitField1_ |= 0x00000004; + bitField1_ |= 0x00000008; break; } // case 352 case 360: { servesVegetarianFood_ = input.readBool(); - bitField1_ |= 0x00000008; + bitField1_ |= 0x00000010; break; } // case 360 case 370: { input.readMessage( getCurrentOpeningHoursFieldBuilder().getBuilder(), extensionRegistry); - bitField1_ |= 0x00000010; + bitField1_ |= 0x00000020; break; } // case 370 case 378: @@ -16428,26 +18604,160 @@ public Builder mergeFrom( } break; } // case 378 - case 386: - { - input.readMessage( - getEditorialSummaryFieldBuilder().getBuilder(), extensionRegistry); - bitField1_ |= 0x00000080; - break; - } // case 386 case 394: { com.google.maps.places.v1.Place.OpeningHours m = input.readMessage( com.google.maps.places.v1.Place.OpeningHours.parser(), extensionRegistry); - if (secondaryOpeningHoursBuilder_ == null) { - ensureSecondaryOpeningHoursIsMutable(); - secondaryOpeningHours_.add(m); + if (regularSecondaryOpeningHoursBuilder_ == null) { + ensureRegularSecondaryOpeningHoursIsMutable(); + regularSecondaryOpeningHours_.add(m); } else { - secondaryOpeningHoursBuilder_.addMessage(m); + regularSecondaryOpeningHoursBuilder_.addMessage(m); } break; } // case 394 + case 418: + { + input.readMessage( + getEditorialSummaryFieldBuilder().getBuilder(), extensionRegistry); + bitField1_ |= 0x00000100; + break; + } // case 418 + case 426: + { + com.google.maps.places.v1.Review m = + input.readMessage(com.google.maps.places.v1.Review.parser(), extensionRegistry); + if (reviewsBuilder_ == null) { + ensureReviewsIsMutable(); + reviews_.add(m); + } else { + reviewsBuilder_.addMessage(m); + } + break; + } // case 426 + case 434: + { + com.google.maps.places.v1.Photo m = + input.readMessage(com.google.maps.places.v1.Photo.parser(), extensionRegistry); + if (photosBuilder_ == null) { + ensurePhotosIsMutable(); + photos_.add(m); + } else { + photosBuilder_.addMessage(m); + } + break; + } // case 434 + case 440: + { + outdoorSeating_ = input.readBool(); + bitField1_ |= 0x00000200; + break; + } // case 440 + case 448: + { + liveMusic_ = input.readBool(); + bitField1_ |= 0x00000400; + break; + } // case 448 + case 456: + { + menuForChildren_ = input.readBool(); + bitField1_ |= 0x00000800; + break; + } // case 456 + case 464: + { + servesCocktails_ = input.readBool(); + bitField1_ |= 0x00001000; + break; + } // case 464 + case 472: + { + servesDessert_ = input.readBool(); + bitField1_ |= 0x00002000; + break; + } // case 472 + case 480: + { + servesCoffee_ = input.readBool(); + bitField1_ |= 0x00004000; + break; + } // case 480 + case 496: + { + goodForChildren_ = input.readBool(); + bitField1_ |= 0x00008000; + break; + } // case 496 + case 504: + { + allowsDogs_ = input.readBool(); + bitField1_ |= 0x00010000; + break; + } // case 504 + case 512: + { + restroom_ = input.readBool(); + bitField1_ |= 0x00020000; + break; + } // case 512 + case 520: + { + goodForGroups_ = input.readBool(); + bitField1_ |= 0x00040000; + break; + } // case 520 + case 528: + { + goodForWatchingSports_ = input.readBool(); + bitField1_ |= 0x00080000; + break; + } // case 528 + case 538: + { + input.readMessage(getPaymentOptionsFieldBuilder().getBuilder(), extensionRegistry); + bitField1_ |= 0x00100000; + break; + } // case 538 + case 562: + { + input.readMessage(getParkingOptionsFieldBuilder().getBuilder(), extensionRegistry); + bitField1_ |= 0x00200000; + break; + } // case 562 + case 570: + { + com.google.maps.places.v1.Place.SubDestination m = + input.readMessage( + com.google.maps.places.v1.Place.SubDestination.parser(), extensionRegistry); + if (subDestinationsBuilder_ == null) { + ensureSubDestinationsIsMutable(); + subDestinations_.add(m); + } else { + subDestinationsBuilder_.addMessage(m); + } + break; + } // case 570 + case 578: + { + input.readMessage( + getAccessibilityOptionsFieldBuilder().getBuilder(), extensionRegistry); + bitField1_ |= 0x00800000; + break; + } // case 578 + case 626: + { + input.readMessage(getFuelOptionsFieldBuilder().getBuilder(), extensionRegistry); + bitField1_ |= 0x01000000; + break; + } // case 626 + case 634: + { + input.readMessage(getEvChargeOptionsFieldBuilder().getBuilder(), extensionRegistry); + bitField1_ |= 0x02000000; + break; + } // case 634 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -16461,76 +18771,2735 @@ public Builder mergeFrom( throw e.unwrapIOException(); } finally { onChanged(); - } // finally + } // finally + return this; + } + + private int bitField0_; + private int bitField1_; + + private java.lang.Object name_ = ""; + /** + * + * + *
+     * Output only. An ID representing this place which may be used to look up
+     * this place again (a.k.a. the API "resource" name: places/<place_id>).
+     * 
+ * + * string name = 1 [(.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; + } + } + /** + * + * + *
+     * Output only. An ID representing this place which may be used to look up
+     * this place again (a.k.a. the API "resource" name: places/<place_id>).
+     * 
+ * + * string name = 1 [(.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; + } + } + /** + * + * + *
+     * Output only. An ID representing this place which may be used to look up
+     * this place again (a.k.a. the API "resource" name: places/<place_id>).
+     * 
+ * + * string name = 1 [(.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; + } + /** + * + * + *
+     * Output only. An ID representing this place which may be used to look up
+     * this place again (a.k.a. the API "resource" name: places/<place_id>).
+     * 
+ * + * string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearName() { + name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. An ID representing this place which may be used to look up
+     * this place again (a.k.a. the API "resource" name: places/<place_id>).
+     * 
+ * + * string name = 1 [(.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_ = ""; + /** + * + * + *
+     * Output only. The unique identifier of a place.
+     * 
+ * + * string id = 2 [(.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. The unique identifier of a place.
+     * 
+ * + * string id = 2 [(.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. The unique identifier of a place.
+     * 
+ * + * string id = 2 [(.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; + } + /** + * + * + *
+     * Output only. The unique identifier of a place.
+     * 
+ * + * string id = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearId() { + id_ = getDefaultInstance().getId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The unique identifier of a place.
+     * 
+ * + * string id = 2 [(.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 com.google.type.LocalizedText displayName_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LocalizedText, + com.google.type.LocalizedText.Builder, + com.google.type.LocalizedTextOrBuilder> + displayNameBuilder_; + /** + * + * + *
+     * Output only. The localized name of the place, suitable as a short
+     * human-readable description. For example, "Google Sydney", "Starbucks",
+     * "Pyrmont", etc.
+     * 
+ * + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the displayName field is set. + */ + public boolean hasDisplayName() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * + * + *
+     * Output only. The localized name of the place, suitable as a short
+     * human-readable description. For example, "Google Sydney", "Starbucks",
+     * "Pyrmont", etc.
+     * 
+ * + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The displayName. + */ + public com.google.type.LocalizedText getDisplayName() { + if (displayNameBuilder_ == null) { + return displayName_ == null + ? com.google.type.LocalizedText.getDefaultInstance() + : displayName_; + } else { + return displayNameBuilder_.getMessage(); + } + } + /** + * + * + *
+     * Output only. The localized name of the place, suitable as a short
+     * human-readable description. For example, "Google Sydney", "Starbucks",
+     * "Pyrmont", etc.
+     * 
+ * + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setDisplayName(com.google.type.LocalizedText value) { + if (displayNameBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + displayName_ = value; + } else { + displayNameBuilder_.setMessage(value); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The localized name of the place, suitable as a short
+     * human-readable description. For example, "Google Sydney", "Starbucks",
+     * "Pyrmont", etc.
+     * 
+ * + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setDisplayName(com.google.type.LocalizedText.Builder builderForValue) { + if (displayNameBuilder_ == null) { + displayName_ = builderForValue.build(); + } else { + displayNameBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The localized name of the place, suitable as a short
+     * human-readable description. For example, "Google Sydney", "Starbucks",
+     * "Pyrmont", etc.
+     * 
+ * + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeDisplayName(com.google.type.LocalizedText value) { + if (displayNameBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0) + && displayName_ != null + && displayName_ != com.google.type.LocalizedText.getDefaultInstance()) { + getDisplayNameBuilder().mergeFrom(value); + } else { + displayName_ = value; + } + } else { + displayNameBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The localized name of the place, suitable as a short
+     * human-readable description. For example, "Google Sydney", "Starbucks",
+     * "Pyrmont", etc.
+     * 
+ * + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearDisplayName() { + bitField0_ = (bitField0_ & ~0x00000004); + displayName_ = null; + if (displayNameBuilder_ != null) { + displayNameBuilder_.dispose(); + displayNameBuilder_ = null; + } + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The localized name of the place, suitable as a short
+     * human-readable description. For example, "Google Sydney", "Starbucks",
+     * "Pyrmont", etc.
+     * 
+ * + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.type.LocalizedText.Builder getDisplayNameBuilder() { + bitField0_ |= 0x00000004; + onChanged(); + return getDisplayNameFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * Output only. The localized name of the place, suitable as a short
+     * human-readable description. For example, "Google Sydney", "Starbucks",
+     * "Pyrmont", etc.
+     * 
+ * + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.type.LocalizedTextOrBuilder getDisplayNameOrBuilder() { + if (displayNameBuilder_ != null) { + return displayNameBuilder_.getMessageOrBuilder(); + } else { + return displayName_ == null + ? com.google.type.LocalizedText.getDefaultInstance() + : displayName_; + } + } + /** + * + * + *
+     * Output only. The localized name of the place, suitable as a short
+     * human-readable description. For example, "Google Sydney", "Starbucks",
+     * "Pyrmont", etc.
+     * 
+ * + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LocalizedText, + com.google.type.LocalizedText.Builder, + com.google.type.LocalizedTextOrBuilder> + getDisplayNameFieldBuilder() { + if (displayNameBuilder_ == null) { + displayNameBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LocalizedText, + com.google.type.LocalizedText.Builder, + com.google.type.LocalizedTextOrBuilder>( + getDisplayName(), getParentForChildren(), isClean()); + displayName_ = null; + } + return displayNameBuilder_; + } + + private com.google.protobuf.LazyStringArrayList types_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureTypesIsMutable() { + if (!types_.isModifiable()) { + types_ = new com.google.protobuf.LazyStringArrayList(types_); + } + bitField0_ |= 0x00000008; + } + /** + * + * + *
+     * Output only. A set of type tags for this result. For example, "political"
+     * and "locality".
+     * 
+ * + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return A list containing the types. + */ + public com.google.protobuf.ProtocolStringList getTypesList() { + types_.makeImmutable(); + return types_; + } + /** + * + * + *
+     * Output only. A set of type tags for this result. For example, "political"
+     * and "locality".
+     * 
+ * + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The count of types. + */ + public int getTypesCount() { + return types_.size(); + } + /** + * + * + *
+     * Output only. A set of type tags for this result. For example, "political"
+     * and "locality".
+     * 
+ * + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param index The index of the element to return. + * @return The types at the given index. + */ + public java.lang.String getTypes(int index) { + return types_.get(index); + } + /** + * + * + *
+     * Output only. A set of type tags for this result. For example, "political"
+     * and "locality".
+     * 
+ * + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param index The index of the value to return. + * @return The bytes of the types at the given index. + */ + public com.google.protobuf.ByteString getTypesBytes(int index) { + return types_.getByteString(index); + } + /** + * + * + *
+     * Output only. A set of type tags for this result. For example, "political"
+     * and "locality".
+     * 
+ * + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param index The index to set the value at. + * @param value The types to set. + * @return This builder for chaining. + */ + public Builder setTypes(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureTypesIsMutable(); + types_.set(index, value); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A set of type tags for this result. For example, "political"
+     * and "locality".
+     * 
+ * + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The types to add. + * @return This builder for chaining. + */ + public Builder addTypes(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureTypesIsMutable(); + types_.add(value); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A set of type tags for this result. For example, "political"
+     * and "locality".
+     * 
+ * + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param values The types to add. + * @return This builder for chaining. + */ + public Builder addAllTypes(java.lang.Iterable values) { + ensureTypesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, types_); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A set of type tags for this result. For example, "political"
+     * and "locality".
+     * 
+ * + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearTypes() { + types_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + ; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A set of type tags for this result. For example, "political"
+     * and "locality".
+     * 
+ * + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes of the types to add. + * @return This builder for chaining. + */ + public Builder addTypesBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureTypesIsMutable(); + types_.add(value); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + private java.lang.Object nationalPhoneNumber_ = ""; + /** + * + * + *
+     * Output only. A human-readable phone number for the place, in national
+     * format.
+     * 
+ * + * string national_phone_number = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The nationalPhoneNumber. + */ + public java.lang.String getNationalPhoneNumber() { + java.lang.Object ref = nationalPhoneNumber_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + nationalPhoneNumber_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Output only. A human-readable phone number for the place, in national
+     * format.
+     * 
+ * + * string national_phone_number = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for nationalPhoneNumber. + */ + public com.google.protobuf.ByteString getNationalPhoneNumberBytes() { + java.lang.Object ref = nationalPhoneNumber_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + nationalPhoneNumber_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Output only. A human-readable phone number for the place, in national
+     * format.
+     * 
+ * + * string national_phone_number = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The nationalPhoneNumber to set. + * @return This builder for chaining. + */ + public Builder setNationalPhoneNumber(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + nationalPhoneNumber_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A human-readable phone number for the place, in national
+     * format.
+     * 
+ * + * string national_phone_number = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearNationalPhoneNumber() { + nationalPhoneNumber_ = getDefaultInstance().getNationalPhoneNumber(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A human-readable phone number for the place, in national
+     * format.
+     * 
+ * + * string national_phone_number = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for nationalPhoneNumber to set. + * @return This builder for chaining. + */ + public Builder setNationalPhoneNumberBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + nationalPhoneNumber_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + private java.lang.Object internationalPhoneNumber_ = ""; + /** + * + * + *
+     * Output only. A human-readable phone number for the place, in international
+     * format.
+     * 
+ * + * string international_phone_number = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The internationalPhoneNumber. + */ + public java.lang.String getInternationalPhoneNumber() { + java.lang.Object ref = internationalPhoneNumber_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + internationalPhoneNumber_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Output only. A human-readable phone number for the place, in international
+     * format.
+     * 
+ * + * string international_phone_number = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for internationalPhoneNumber. + */ + public com.google.protobuf.ByteString getInternationalPhoneNumberBytes() { + java.lang.Object ref = internationalPhoneNumber_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + internationalPhoneNumber_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Output only. A human-readable phone number for the place, in international
+     * format.
+     * 
+ * + * string international_phone_number = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The internationalPhoneNumber to set. + * @return This builder for chaining. + */ + public Builder setInternationalPhoneNumber(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + internationalPhoneNumber_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A human-readable phone number for the place, in international
+     * format.
+     * 
+ * + * string international_phone_number = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return This builder for chaining. + */ + public Builder clearInternationalPhoneNumber() { + internationalPhoneNumber_ = getDefaultInstance().getInternationalPhoneNumber(); + bitField0_ = (bitField0_ & ~0x00000020); + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A human-readable phone number for the place, in international
+     * format.
+     * 
+ * + * string international_phone_number = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The bytes for internationalPhoneNumber to set. + * @return This builder for chaining. + */ + public Builder setInternationalPhoneNumberBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + internationalPhoneNumber_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + private java.lang.Object formattedAddress_ = ""; + /** + * + * + *
+     * Output only. A full, human-readable address for this place.
+     * 
+ * + * string formatted_address = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The formattedAddress. + */ + public java.lang.String getFormattedAddress() { + java.lang.Object ref = formattedAddress_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + formattedAddress_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Output only. A full, human-readable address for this place.
+     * 
+ * + * string formatted_address = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for formattedAddress. + */ + public com.google.protobuf.ByteString getFormattedAddressBytes() { + java.lang.Object ref = formattedAddress_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + formattedAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Output only. A full, human-readable address for this place.
+     * 
+ * + * string formatted_address = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The formattedAddress to set. + * @return This builder for chaining. + */ + public Builder setFormattedAddress(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + formattedAddress_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A full, human-readable address for this place.
+     * 
+ * + * string formatted_address = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearFormattedAddress() { + formattedAddress_ = getDefaultInstance().getFormattedAddress(); + bitField0_ = (bitField0_ & ~0x00000040); + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A full, human-readable address for this place.
+     * 
+ * + * string formatted_address = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for formattedAddress to set. + * @return This builder for chaining. + */ + public Builder setFormattedAddressBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + formattedAddress_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + private java.util.List addressComponents_ = + java.util.Collections.emptyList(); + + private void ensureAddressComponentsIsMutable() { + if (!((bitField0_ & 0x00000080) != 0)) { + addressComponents_ = + new java.util.ArrayList( + addressComponents_); + bitField0_ |= 0x00000080; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.AddressComponent, + com.google.maps.places.v1.Place.AddressComponent.Builder, + com.google.maps.places.v1.Place.AddressComponentOrBuilder> + addressComponentsBuilder_; + + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List + getAddressComponentsList() { + if (addressComponentsBuilder_ == null) { + return java.util.Collections.unmodifiableList(addressComponents_); + } else { + return addressComponentsBuilder_.getMessageList(); + } + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public int getAddressComponentsCount() { + if (addressComponentsBuilder_ == null) { + return addressComponents_.size(); + } else { + return addressComponentsBuilder_.getCount(); + } + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.AddressComponent getAddressComponents(int index) { + if (addressComponentsBuilder_ == null) { + return addressComponents_.get(index); + } else { + return addressComponentsBuilder_.getMessage(index); + } + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setAddressComponents( + int index, com.google.maps.places.v1.Place.AddressComponent value) { + if (addressComponentsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAddressComponentsIsMutable(); + addressComponents_.set(index, value); + onChanged(); + } else { + addressComponentsBuilder_.setMessage(index, value); + } + return this; + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setAddressComponents( + int index, com.google.maps.places.v1.Place.AddressComponent.Builder builderForValue) { + if (addressComponentsBuilder_ == null) { + ensureAddressComponentsIsMutable(); + addressComponents_.set(index, builderForValue.build()); + onChanged(); + } else { + addressComponentsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAddressComponents(com.google.maps.places.v1.Place.AddressComponent value) { + if (addressComponentsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAddressComponentsIsMutable(); + addressComponents_.add(value); + onChanged(); + } else { + addressComponentsBuilder_.addMessage(value); + } + return this; + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAddressComponents( + int index, com.google.maps.places.v1.Place.AddressComponent value) { + if (addressComponentsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAddressComponentsIsMutable(); + addressComponents_.add(index, value); + onChanged(); + } else { + addressComponentsBuilder_.addMessage(index, value); + } + return this; + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAddressComponents( + com.google.maps.places.v1.Place.AddressComponent.Builder builderForValue) { + if (addressComponentsBuilder_ == null) { + ensureAddressComponentsIsMutable(); + addressComponents_.add(builderForValue.build()); + onChanged(); + } else { + addressComponentsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAddressComponents( + int index, com.google.maps.places.v1.Place.AddressComponent.Builder builderForValue) { + if (addressComponentsBuilder_ == null) { + ensureAddressComponentsIsMutable(); + addressComponents_.add(index, builderForValue.build()); + onChanged(); + } else { + addressComponentsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAllAddressComponents( + java.lang.Iterable values) { + if (addressComponentsBuilder_ == null) { + ensureAddressComponentsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, addressComponents_); + onChanged(); + } else { + addressComponentsBuilder_.addAllMessages(values); + } + return this; + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearAddressComponents() { + if (addressComponentsBuilder_ == null) { + addressComponents_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000080); + onChanged(); + } else { + addressComponentsBuilder_.clear(); + } + return this; + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder removeAddressComponents(int index) { + if (addressComponentsBuilder_ == null) { + ensureAddressComponentsIsMutable(); + addressComponents_.remove(index); + onChanged(); + } else { + addressComponentsBuilder_.remove(index); + } + return this; + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.AddressComponent.Builder getAddressComponentsBuilder( + int index) { + return getAddressComponentsFieldBuilder().getBuilder(index); + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOrBuilder( + int index) { + if (addressComponentsBuilder_ == null) { + return addressComponents_.get(index); + } else { + return addressComponentsBuilder_.getMessageOrBuilder(index); + } + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List + getAddressComponentsOrBuilderList() { + if (addressComponentsBuilder_ != null) { + return addressComponentsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(addressComponents_); + } + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.AddressComponent.Builder addAddressComponentsBuilder() { + return getAddressComponentsFieldBuilder() + .addBuilder(com.google.maps.places.v1.Place.AddressComponent.getDefaultInstance()); + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.AddressComponent.Builder addAddressComponentsBuilder( + int index) { + return getAddressComponentsFieldBuilder() + .addBuilder(index, com.google.maps.places.v1.Place.AddressComponent.getDefaultInstance()); + } + /** + * + * + *
+     * Output only. Repeated components for each locality level.
+     * 
+ * + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List + getAddressComponentsBuilderList() { + return getAddressComponentsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.AddressComponent, + com.google.maps.places.v1.Place.AddressComponent.Builder, + com.google.maps.places.v1.Place.AddressComponentOrBuilder> + getAddressComponentsFieldBuilder() { + if (addressComponentsBuilder_ == null) { + addressComponentsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.AddressComponent, + com.google.maps.places.v1.Place.AddressComponent.Builder, + com.google.maps.places.v1.Place.AddressComponentOrBuilder>( + addressComponents_, + ((bitField0_ & 0x00000080) != 0), + getParentForChildren(), + isClean()); + addressComponents_ = null; + } + return addressComponentsBuilder_; + } + + private com.google.maps.places.v1.Place.PlusCode plusCode_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.PlusCode, + com.google.maps.places.v1.Place.PlusCode.Builder, + com.google.maps.places.v1.Place.PlusCodeOrBuilder> + plusCodeBuilder_; + /** + * + * + *
+     * Output only. Plus code of the place location lat/long.
+     * 
+ * + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the plusCode field is set. + */ + public boolean hasPlusCode() { + return ((bitField0_ & 0x00000100) != 0); + } + /** + * + * + *
+     * Output only. Plus code of the place location lat/long.
+     * 
+ * + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The plusCode. + */ + public com.google.maps.places.v1.Place.PlusCode getPlusCode() { + if (plusCodeBuilder_ == null) { + return plusCode_ == null + ? com.google.maps.places.v1.Place.PlusCode.getDefaultInstance() + : plusCode_; + } else { + return plusCodeBuilder_.getMessage(); + } + } + /** + * + * + *
+     * Output only. Plus code of the place location lat/long.
+     * 
+ * + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setPlusCode(com.google.maps.places.v1.Place.PlusCode value) { + if (plusCodeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + plusCode_ = value; + } else { + plusCodeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. Plus code of the place location lat/long.
+     * 
+ * + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setPlusCode(com.google.maps.places.v1.Place.PlusCode.Builder builderForValue) { + if (plusCodeBuilder_ == null) { + plusCode_ = builderForValue.build(); + } else { + plusCodeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. Plus code of the place location lat/long.
+     * 
+ * + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergePlusCode(com.google.maps.places.v1.Place.PlusCode value) { + if (plusCodeBuilder_ == null) { + if (((bitField0_ & 0x00000100) != 0) + && plusCode_ != null + && plusCode_ != com.google.maps.places.v1.Place.PlusCode.getDefaultInstance()) { + getPlusCodeBuilder().mergeFrom(value); + } else { + plusCode_ = value; + } + } else { + plusCodeBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. Plus code of the place location lat/long.
+     * 
+ * + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearPlusCode() { + bitField0_ = (bitField0_ & ~0x00000100); + plusCode_ = null; + if (plusCodeBuilder_ != null) { + plusCodeBuilder_.dispose(); + plusCodeBuilder_ = null; + } + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. Plus code of the place location lat/long.
+     * 
+ * + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.PlusCode.Builder getPlusCodeBuilder() { + bitField0_ |= 0x00000100; + onChanged(); + return getPlusCodeFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * Output only. Plus code of the place location lat/long.
+     * 
+ * + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.PlusCodeOrBuilder getPlusCodeOrBuilder() { + if (plusCodeBuilder_ != null) { + return plusCodeBuilder_.getMessageOrBuilder(); + } else { + return plusCode_ == null + ? com.google.maps.places.v1.Place.PlusCode.getDefaultInstance() + : plusCode_; + } + } + /** + * + * + *
+     * Output only. Plus code of the place location lat/long.
+     * 
+ * + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.PlusCode, + com.google.maps.places.v1.Place.PlusCode.Builder, + com.google.maps.places.v1.Place.PlusCodeOrBuilder> + getPlusCodeFieldBuilder() { + if (plusCodeBuilder_ == null) { + plusCodeBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.PlusCode, + com.google.maps.places.v1.Place.PlusCode.Builder, + com.google.maps.places.v1.Place.PlusCodeOrBuilder>( + getPlusCode(), getParentForChildren(), isClean()); + plusCode_ = null; + } + return plusCodeBuilder_; + } + + private com.google.type.LatLng location_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LatLng, com.google.type.LatLng.Builder, com.google.type.LatLngOrBuilder> + locationBuilder_; + /** + * + * + *
+     * Output only. The position of this place.
+     * 
+ * + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the location field is set. + */ + public boolean hasLocation() { + return ((bitField0_ & 0x00000200) != 0); + } + /** + * + * + *
+     * Output only. The position of this place.
+     * 
+ * + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The location. + */ + public com.google.type.LatLng getLocation() { + if (locationBuilder_ == null) { + return location_ == null ? com.google.type.LatLng.getDefaultInstance() : location_; + } else { + return locationBuilder_.getMessage(); + } + } + /** + * + * + *
+     * Output only. The position of this place.
+     * 
+ * + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + public Builder setLocation(com.google.type.LatLng value) { + if (locationBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + location_ = value; + } else { + locationBuilder_.setMessage(value); + } + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The position of this place.
+     * 
+ * + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + public Builder setLocation(com.google.type.LatLng.Builder builderForValue) { + if (locationBuilder_ == null) { + location_ = builderForValue.build(); + } else { + locationBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The position of this place.
+     * 
+ * + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + public Builder mergeLocation(com.google.type.LatLng value) { + if (locationBuilder_ == null) { + if (((bitField0_ & 0x00000200) != 0) + && location_ != null + && location_ != com.google.type.LatLng.getDefaultInstance()) { + getLocationBuilder().mergeFrom(value); + } else { + location_ = value; + } + } else { + locationBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The position of this place.
+     * 
+ * + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + public Builder clearLocation() { + bitField0_ = (bitField0_ & ~0x00000200); + location_ = null; + if (locationBuilder_ != null) { + locationBuilder_.dispose(); + locationBuilder_ = null; + } + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The position of this place.
+     * 
+ * + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + public com.google.type.LatLng.Builder getLocationBuilder() { + bitField0_ |= 0x00000200; + onChanged(); + return getLocationFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * Output only. The position of this place.
+     * 
+ * + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + public com.google.type.LatLngOrBuilder getLocationOrBuilder() { + if (locationBuilder_ != null) { + return locationBuilder_.getMessageOrBuilder(); + } else { + return location_ == null ? com.google.type.LatLng.getDefaultInstance() : location_; + } + } + /** + * + * + *
+     * Output only. The position of this place.
+     * 
+ * + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LatLng, com.google.type.LatLng.Builder, com.google.type.LatLngOrBuilder> + getLocationFieldBuilder() { + if (locationBuilder_ == null) { + locationBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LatLng, + com.google.type.LatLng.Builder, + com.google.type.LatLngOrBuilder>(getLocation(), getParentForChildren(), isClean()); + location_ = null; + } + return locationBuilder_; + } + + private com.google.geo.type.Viewport viewport_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.geo.type.Viewport, + com.google.geo.type.Viewport.Builder, + com.google.geo.type.ViewportOrBuilder> + viewportBuilder_; + /** + * + * + *
+     * Output only. A viewport suitable for displaying the place on an
+     * average-sized map.
+     * 
+ * + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the viewport field is set. + */ + public boolean hasViewport() { + return ((bitField0_ & 0x00000400) != 0); + } + /** + * + * + *
+     * Output only. A viewport suitable for displaying the place on an
+     * average-sized map.
+     * 
+ * + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The viewport. + */ + public com.google.geo.type.Viewport getViewport() { + if (viewportBuilder_ == null) { + return viewport_ == null ? com.google.geo.type.Viewport.getDefaultInstance() : viewport_; + } else { + return viewportBuilder_.getMessage(); + } + } + /** + * + * + *
+     * Output only. A viewport suitable for displaying the place on an
+     * average-sized map.
+     * 
+ * + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setViewport(com.google.geo.type.Viewport value) { + if (viewportBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + viewport_ = value; + } else { + viewportBuilder_.setMessage(value); + } + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A viewport suitable for displaying the place on an
+     * average-sized map.
+     * 
+ * + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setViewport(com.google.geo.type.Viewport.Builder builderForValue) { + if (viewportBuilder_ == null) { + viewport_ = builderForValue.build(); + } else { + viewportBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A viewport suitable for displaying the place on an
+     * average-sized map.
+     * 
+ * + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeViewport(com.google.geo.type.Viewport value) { + if (viewportBuilder_ == null) { + if (((bitField0_ & 0x00000400) != 0) + && viewport_ != null + && viewport_ != com.google.geo.type.Viewport.getDefaultInstance()) { + getViewportBuilder().mergeFrom(value); + } else { + viewport_ = value; + } + } else { + viewportBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A viewport suitable for displaying the place on an
+     * average-sized map.
+     * 
+ * + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearViewport() { + bitField0_ = (bitField0_ & ~0x00000400); + viewport_ = null; + if (viewportBuilder_ != null) { + viewportBuilder_.dispose(); + viewportBuilder_ = null; + } + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A viewport suitable for displaying the place on an
+     * average-sized map.
+     * 
+ * + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.geo.type.Viewport.Builder getViewportBuilder() { + bitField0_ |= 0x00000400; + onChanged(); + return getViewportFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * Output only. A viewport suitable for displaying the place on an
+     * average-sized map.
+     * 
+ * + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.geo.type.ViewportOrBuilder getViewportOrBuilder() { + if (viewportBuilder_ != null) { + return viewportBuilder_.getMessageOrBuilder(); + } else { + return viewport_ == null ? com.google.geo.type.Viewport.getDefaultInstance() : viewport_; + } + } + /** + * + * + *
+     * Output only. A viewport suitable for displaying the place on an
+     * average-sized map.
+     * 
+ * + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.geo.type.Viewport, + com.google.geo.type.Viewport.Builder, + com.google.geo.type.ViewportOrBuilder> + getViewportFieldBuilder() { + if (viewportBuilder_ == null) { + viewportBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.geo.type.Viewport, + com.google.geo.type.Viewport.Builder, + com.google.geo.type.ViewportOrBuilder>( + getViewport(), getParentForChildren(), isClean()); + viewport_ = null; + } + return viewportBuilder_; + } + + private double rating_; + /** + * + * + *
+     * Output only. A rating between 1.0 and 5.0, based on user reviews of this
+     * place.
+     * 
+ * + * double rating = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The rating. + */ + @java.lang.Override + public double getRating() { + return rating_; + } + /** + * + * + *
+     * Output only. A rating between 1.0 and 5.0, based on user reviews of this
+     * place.
+     * 
+ * + * double rating = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The rating to set. + * @return This builder for chaining. + */ + public Builder setRating(double value) { + + rating_ = value; + bitField0_ |= 0x00000800; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A rating between 1.0 and 5.0, based on user reviews of this
+     * place.
+     * 
+ * + * double rating = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearRating() { + bitField0_ = (bitField0_ & ~0x00000800); + rating_ = 0D; + onChanged(); + return this; + } + + private java.lang.Object googleMapsUri_ = ""; + /** + * + * + *
+     * Output only. A URL providing more information about this place.
+     * 
+ * + * string google_maps_uri = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The googleMapsUri. + */ + public java.lang.String getGoogleMapsUri() { + java.lang.Object ref = googleMapsUri_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + googleMapsUri_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Output only. A URL providing more information about this place.
+     * 
+ * + * string google_maps_uri = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for googleMapsUri. + */ + public com.google.protobuf.ByteString getGoogleMapsUriBytes() { + java.lang.Object ref = googleMapsUri_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + googleMapsUri_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Output only. A URL providing more information about this place.
+     * 
+ * + * string google_maps_uri = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The googleMapsUri to set. + * @return This builder for chaining. + */ + public Builder setGoogleMapsUri(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + googleMapsUri_ = value; + bitField0_ |= 0x00001000; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A URL providing more information about this place.
+     * 
+ * + * string google_maps_uri = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearGoogleMapsUri() { + googleMapsUri_ = getDefaultInstance().getGoogleMapsUri(); + bitField0_ = (bitField0_ & ~0x00001000); + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A URL providing more information about this place.
+     * 
+ * + * string google_maps_uri = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for googleMapsUri to set. + * @return This builder for chaining. + */ + public Builder setGoogleMapsUriBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + googleMapsUri_ = value; + bitField0_ |= 0x00001000; + onChanged(); + return this; + } + + private java.lang.Object websiteUri_ = ""; + /** + * + * + *
+     * Output only. The authoritative website for this place, e.g. a business'
+     * homepage. Note that for places that are part of a chain (e.g. an IKEA
+     * store), this will usually be the website for the individual store, not the
+     * overall chain.
+     * 
+ * + * string website_uri = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The websiteUri. + */ + public java.lang.String getWebsiteUri() { + java.lang.Object ref = websiteUri_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + websiteUri_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Output only. The authoritative website for this place, e.g. a business'
+     * homepage. Note that for places that are part of a chain (e.g. an IKEA
+     * store), this will usually be the website for the individual store, not the
+     * overall chain.
+     * 
+ * + * string website_uri = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for websiteUri. + */ + public com.google.protobuf.ByteString getWebsiteUriBytes() { + java.lang.Object ref = websiteUri_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + websiteUri_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Output only. The authoritative website for this place, e.g. a business'
+     * homepage. Note that for places that are part of a chain (e.g. an IKEA
+     * store), this will usually be the website for the individual store, not the
+     * overall chain.
+     * 
+ * + * string website_uri = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The websiteUri to set. + * @return This builder for chaining. + */ + public Builder setWebsiteUri(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + websiteUri_ = value; + bitField0_ |= 0x00002000; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The authoritative website for this place, e.g. a business'
+     * homepage. Note that for places that are part of a chain (e.g. an IKEA
+     * store), this will usually be the website for the individual store, not the
+     * overall chain.
+     * 
+ * + * string website_uri = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearWebsiteUri() { + websiteUri_ = getDefaultInstance().getWebsiteUri(); + bitField0_ = (bitField0_ & ~0x00002000); + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The authoritative website for this place, e.g. a business'
+     * homepage. Note that for places that are part of a chain (e.g. an IKEA
+     * store), this will usually be the website for the individual store, not the
+     * overall chain.
+     * 
+ * + * string website_uri = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for websiteUri to set. + * @return This builder for chaining. + */ + public Builder setWebsiteUriBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + websiteUri_ = value; + bitField0_ |= 0x00002000; + onChanged(); + return this; + } + + private java.util.List reviews_ = + java.util.Collections.emptyList(); + + private void ensureReviewsIsMutable() { + if (!((bitField0_ & 0x00004000) != 0)) { + reviews_ = new java.util.ArrayList(reviews_); + bitField0_ |= 0x00004000; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Review, + com.google.maps.places.v1.Review.Builder, + com.google.maps.places.v1.ReviewOrBuilder> + reviewsBuilder_; + + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List getReviewsList() { + if (reviewsBuilder_ == null) { + return java.util.Collections.unmodifiableList(reviews_); + } else { + return reviewsBuilder_.getMessageList(); + } + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public int getReviewsCount() { + if (reviewsBuilder_ == null) { + return reviews_.size(); + } else { + return reviewsBuilder_.getCount(); + } + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Review getReviews(int index) { + if (reviewsBuilder_ == null) { + return reviews_.get(index); + } else { + return reviewsBuilder_.getMessage(index); + } + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setReviews(int index, com.google.maps.places.v1.Review value) { + if (reviewsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureReviewsIsMutable(); + reviews_.set(index, value); + onChanged(); + } else { + reviewsBuilder_.setMessage(index, value); + } + return this; + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setReviews(int index, com.google.maps.places.v1.Review.Builder builderForValue) { + if (reviewsBuilder_ == null) { + ensureReviewsIsMutable(); + reviews_.set(index, builderForValue.build()); + onChanged(); + } else { + reviewsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addReviews(com.google.maps.places.v1.Review value) { + if (reviewsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureReviewsIsMutable(); + reviews_.add(value); + onChanged(); + } else { + reviewsBuilder_.addMessage(value); + } + return this; + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addReviews(int index, com.google.maps.places.v1.Review value) { + if (reviewsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureReviewsIsMutable(); + reviews_.add(index, value); + onChanged(); + } else { + reviewsBuilder_.addMessage(index, value); + } + return this; + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addReviews(com.google.maps.places.v1.Review.Builder builderForValue) { + if (reviewsBuilder_ == null) { + ensureReviewsIsMutable(); + reviews_.add(builderForValue.build()); + onChanged(); + } else { + reviewsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addReviews(int index, com.google.maps.places.v1.Review.Builder builderForValue) { + if (reviewsBuilder_ == null) { + ensureReviewsIsMutable(); + reviews_.add(index, builderForValue.build()); + onChanged(); + } else { + reviewsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addAllReviews( + java.lang.Iterable values) { + if (reviewsBuilder_ == null) { + ensureReviewsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, reviews_); + onChanged(); + } else { + reviewsBuilder_.addAllMessages(values); + } + return this; + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearReviews() { + if (reviewsBuilder_ == null) { + reviews_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00004000); + onChanged(); + } else { + reviewsBuilder_.clear(); + } + return this; + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder removeReviews(int index) { + if (reviewsBuilder_ == null) { + ensureReviewsIsMutable(); + reviews_.remove(index); + onChanged(); + } else { + reviewsBuilder_.remove(index); + } return this; } - - private int bitField0_; - private int bitField1_; - - private java.lang.Object id_ = ""; /** * * *
-     * Required. The unique identifier of a place.
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Review.Builder getReviewsBuilder(int index) { + return getReviewsFieldBuilder().getBuilder(index); + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.ReviewOrBuilder getReviewsOrBuilder(int index) { + if (reviewsBuilder_ == null) { + return reviews_.get(index); + } else { + return reviewsBuilder_.getMessageOrBuilder(index); + } + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List + getReviewsOrBuilderList() { + if (reviewsBuilder_ != null) { + return reviewsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(reviews_); + } + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Review.Builder addReviewsBuilder() { + return getReviewsFieldBuilder() + .addBuilder(com.google.maps.places.v1.Review.getDefaultInstance()); + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Review.Builder addReviewsBuilder(int index) { + return getReviewsFieldBuilder() + .addBuilder(index, com.google.maps.places.v1.Review.getDefaultInstance()); + } + /** + * + * + *
+     * Output only. List of reviews about this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List getReviewsBuilderList() { + return getReviewsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Review, + com.google.maps.places.v1.Review.Builder, + com.google.maps.places.v1.ReviewOrBuilder> + getReviewsFieldBuilder() { + if (reviewsBuilder_ == null) { + reviewsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Review, + com.google.maps.places.v1.Review.Builder, + com.google.maps.places.v1.ReviewOrBuilder>( + reviews_, ((bitField0_ & 0x00004000) != 0), getParentForChildren(), isClean()); + reviews_ = null; + } + return reviewsBuilder_; + } + + private com.google.maps.places.v1.Place.OpeningHours regularOpeningHours_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours, + com.google.maps.places.v1.Place.OpeningHours.Builder, + com.google.maps.places.v1.Place.OpeningHoursOrBuilder> + regularOpeningHoursBuilder_; + /** + * + * + *
+     * Output only. The regular hours of operation.
+     * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the regularOpeningHours field is set. + */ + public boolean hasRegularOpeningHours() { + return ((bitField0_ & 0x00008000) != 0); + } + /** + * + * + *
+     * Output only. The regular hours of operation.
      * 
* - * string id = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The id. + * @return The regularOpeningHours. */ - 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; + public com.google.maps.places.v1.Place.OpeningHours getRegularOpeningHours() { + if (regularOpeningHoursBuilder_ == null) { + return regularOpeningHours_ == null + ? com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance() + : regularOpeningHours_; } else { - return (java.lang.String) ref; + return regularOpeningHoursBuilder_.getMessage(); } } /** * * *
-     * Required. The unique identifier of a place.
+     * Output only. The regular hours of operation.
      * 
* - * string id = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setRegularOpeningHours(com.google.maps.places.v1.Place.OpeningHours value) { + if (regularOpeningHoursBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + regularOpeningHours_ = value; + } else { + regularOpeningHoursBuilder_.setMessage(value); + } + bitField0_ |= 0x00008000; + onChanged(); + return this; + } + /** + * * - * @return The bytes for id. + *
+     * Output only. The regular hours of operation.
+     * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - 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; + public Builder setRegularOpeningHours( + com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { + if (regularOpeningHoursBuilder_ == null) { + regularOpeningHours_ = builderForValue.build(); } else { - return (com.google.protobuf.ByteString) ref; + regularOpeningHoursBuilder_.setMessage(builderForValue.build()); } + bitField0_ |= 0x00008000; + onChanged(); + return this; } /** * * *
-     * Required. The unique identifier of a place.
+     * Output only. The regular hours of operation.
      * 
* - * string id = 2 [(.google.api.field_behavior) = REQUIRED]; + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeRegularOpeningHours(com.google.maps.places.v1.Place.OpeningHours value) { + if (regularOpeningHoursBuilder_ == null) { + if (((bitField0_ & 0x00008000) != 0) + && regularOpeningHours_ != null + && regularOpeningHours_ + != com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance()) { + getRegularOpeningHoursBuilder().mergeFrom(value); + } else { + regularOpeningHours_ = value; + } + } else { + regularOpeningHoursBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00008000; + onChanged(); + return this; + } + /** + * * - * @param value The id to set. - * @return This builder for chaining. + *
+     * Output only. The regular hours of operation.
+     * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setId(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder clearRegularOpeningHours() { + bitField0_ = (bitField0_ & ~0x00008000); + regularOpeningHours_ = null; + if (regularOpeningHoursBuilder_ != null) { + regularOpeningHoursBuilder_.dispose(); + regularOpeningHoursBuilder_ = null; } - id_ = value; - bitField0_ |= 0x00000001; onChanged(); return this; } @@ -16538,16 +21507,122 @@ public Builder setId(java.lang.String value) { * * *
-     * Required. The unique identifier of a place.
+     * Output only. The regular hours of operation.
+     * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.OpeningHours.Builder getRegularOpeningHoursBuilder() { + bitField0_ |= 0x00008000; + onChanged(); + return getRegularOpeningHoursFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * Output only. The regular hours of operation.
+     * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.OpeningHoursOrBuilder getRegularOpeningHoursOrBuilder() { + if (regularOpeningHoursBuilder_ != null) { + return regularOpeningHoursBuilder_.getMessageOrBuilder(); + } else { + return regularOpeningHours_ == null + ? com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance() + : regularOpeningHours_; + } + } + /** + * + * + *
+     * Output only. The regular hours of operation.
+     * 
+ * + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours, + com.google.maps.places.v1.Place.OpeningHours.Builder, + com.google.maps.places.v1.Place.OpeningHoursOrBuilder> + getRegularOpeningHoursFieldBuilder() { + if (regularOpeningHoursBuilder_ == null) { + regularOpeningHoursBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours, + com.google.maps.places.v1.Place.OpeningHours.Builder, + com.google.maps.places.v1.Place.OpeningHoursOrBuilder>( + getRegularOpeningHours(), getParentForChildren(), isClean()); + regularOpeningHours_ = null; + } + return regularOpeningHoursBuilder_; + } + + private int utcOffsetMinutes_; + /** + * + * + *
+     * Output only. Number of minutes this place's timezone is currently offset
+     * from UTC. This is expressed in minutes to support timezones that are offset
+     * by fractions of an hour, e.g. X hours and 15 minutes.
+     * 
+ * + * optional int32 utc_offset_minutes = 22 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the utcOffsetMinutes field is set. + */ + @java.lang.Override + public boolean hasUtcOffsetMinutes() { + return ((bitField0_ & 0x00010000) != 0); + } + /** + * + * + *
+     * Output only. Number of minutes this place's timezone is currently offset
+     * from UTC. This is expressed in minutes to support timezones that are offset
+     * by fractions of an hour, e.g. X hours and 15 minutes.
+     * 
+ * + * optional int32 utc_offset_minutes = 22 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The utcOffsetMinutes. + */ + @java.lang.Override + public int getUtcOffsetMinutes() { + return utcOffsetMinutes_; + } + /** + * + * + *
+     * Output only. Number of minutes this place's timezone is currently offset
+     * from UTC. This is expressed in minutes to support timezones that are offset
+     * by fractions of an hour, e.g. X hours and 15 minutes.
      * 
* - * string id = 2 [(.google.api.field_behavior) = REQUIRED]; + * optional int32 utc_offset_minutes = 22 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * + * @param value The utcOffsetMinutes to set. * @return This builder for chaining. */ - public Builder clearId() { - id_ = getDefaultInstance().getId(); - bitField0_ = (bitField0_ & ~0x00000001); + public Builder setUtcOffsetMinutes(int value) { + + utcOffsetMinutes_ = value; + bitField0_ |= 0x00010000; onChanged(); return this; } @@ -16555,349 +21630,471 @@ public Builder clearId() { * * *
-     * Required. The unique identifier of a place.
+     * Output only. Number of minutes this place's timezone is currently offset
+     * from UTC. This is expressed in minutes to support timezones that are offset
+     * by fractions of an hour, e.g. X hours and 15 minutes.
      * 
* - * string id = 2 [(.google.api.field_behavior) = REQUIRED]; + * optional int32 utc_offset_minutes = 22 [(.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; + public Builder clearUtcOffsetMinutes() { + bitField0_ = (bitField0_ & ~0x00010000); + utcOffsetMinutes_ = 0; onChanged(); return this; } - private com.google.type.LocalizedText displayName_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.LocalizedText, - com.google.type.LocalizedText.Builder, - com.google.type.LocalizedTextOrBuilder> - displayNameBuilder_; + private java.util.List photos_ = + java.util.Collections.emptyList(); + + private void ensurePhotosIsMutable() { + if (!((bitField0_ & 0x00020000) != 0)) { + photos_ = new java.util.ArrayList(photos_); + bitField0_ |= 0x00020000; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Photo, + com.google.maps.places.v1.Photo.Builder, + com.google.maps.places.v1.PhotoOrBuilder> + photosBuilder_; + /** * * *
-     * The localized name of the place, suitable as a short human-readable
-     * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
+     * Output only. Information (including references) about photos of this place.
      * 
* - * .google.type.LocalizedText display_name = 31; + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public java.util.List getPhotosList() { + if (photosBuilder_ == null) { + return java.util.Collections.unmodifiableList(photos_); + } else { + return photosBuilder_.getMessageList(); + } + } + /** * - * @return Whether the displayName field is set. + * + *
+     * Output only. Information (including references) about photos of this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public boolean hasDisplayName() { - return ((bitField0_ & 0x00000002) != 0); + public int getPhotosCount() { + if (photosBuilder_ == null) { + return photos_.size(); + } else { + return photosBuilder_.getCount(); + } } /** * * *
-     * The localized name of the place, suitable as a short human-readable
-     * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
+     * Output only. Information (including references) about photos of this place.
      * 
* - * .google.type.LocalizedText display_name = 31; + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Photo getPhotos(int index) { + if (photosBuilder_ == null) { + return photos_.get(index); + } else { + return photosBuilder_.getMessage(index); + } + } + /** + * * - * @return The displayName. + *
+     * Output only. Information (including references) about photos of this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.type.LocalizedText getDisplayName() { - if (displayNameBuilder_ == null) { - return displayName_ == null - ? com.google.type.LocalizedText.getDefaultInstance() - : displayName_; + public Builder setPhotos(int index, com.google.maps.places.v1.Photo value) { + if (photosBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePhotosIsMutable(); + photos_.set(index, value); + onChanged(); + } else { + photosBuilder_.setMessage(index, value); + } + return this; + } + /** + * + * + *
+     * Output only. Information (including references) about photos of this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setPhotos(int index, com.google.maps.places.v1.Photo.Builder builderForValue) { + if (photosBuilder_ == null) { + ensurePhotosIsMutable(); + photos_.set(index, builderForValue.build()); + onChanged(); + } else { + photosBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * Output only. Information (including references) about photos of this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder addPhotos(com.google.maps.places.v1.Photo value) { + if (photosBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePhotosIsMutable(); + photos_.add(value); + onChanged(); } else { - return displayNameBuilder_.getMessage(); + photosBuilder_.addMessage(value); } + return this; } /** * * *
-     * The localized name of the place, suitable as a short human-readable
-     * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
+     * Output only. Information (including references) about photos of this place.
      * 
* - * .google.type.LocalizedText display_name = 31; + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setDisplayName(com.google.type.LocalizedText value) { - if (displayNameBuilder_ == null) { + public Builder addPhotos(int index, com.google.maps.places.v1.Photo value) { + if (photosBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - displayName_ = value; + ensurePhotosIsMutable(); + photos_.add(index, value); + onChanged(); } else { - displayNameBuilder_.setMessage(value); + photosBuilder_.addMessage(index, value); } - bitField0_ |= 0x00000002; - onChanged(); return this; } /** * * *
-     * The localized name of the place, suitable as a short human-readable
-     * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
+     * Output only. Information (including references) about photos of this place.
      * 
* - * .google.type.LocalizedText display_name = 31; + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setDisplayName(com.google.type.LocalizedText.Builder builderForValue) { - if (displayNameBuilder_ == null) { - displayName_ = builderForValue.build(); + public Builder addPhotos(com.google.maps.places.v1.Photo.Builder builderForValue) { + if (photosBuilder_ == null) { + ensurePhotosIsMutable(); + photos_.add(builderForValue.build()); + onChanged(); } else { - displayNameBuilder_.setMessage(builderForValue.build()); + photosBuilder_.addMessage(builderForValue.build()); } - bitField0_ |= 0x00000002; - onChanged(); return this; } /** * * *
-     * The localized name of the place, suitable as a short human-readable
-     * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
+     * Output only. Information (including references) about photos of this place.
      * 
* - * .google.type.LocalizedText display_name = 31; + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder mergeDisplayName(com.google.type.LocalizedText value) { - if (displayNameBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0) - && displayName_ != null - && displayName_ != com.google.type.LocalizedText.getDefaultInstance()) { - getDisplayNameBuilder().mergeFrom(value); - } else { - displayName_ = value; - } + public Builder addPhotos(int index, com.google.maps.places.v1.Photo.Builder builderForValue) { + if (photosBuilder_ == null) { + ensurePhotosIsMutable(); + photos_.add(index, builderForValue.build()); + onChanged(); } else { - displayNameBuilder_.mergeFrom(value); + photosBuilder_.addMessage(index, builderForValue.build()); } - bitField0_ |= 0x00000002; - onChanged(); return this; } /** * * *
-     * The localized name of the place, suitable as a short human-readable
-     * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
+     * Output only. Information (including references) about photos of this place.
      * 
* - * .google.type.LocalizedText display_name = 31; + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearDisplayName() { - bitField0_ = (bitField0_ & ~0x00000002); - displayName_ = null; - if (displayNameBuilder_ != null) { - displayNameBuilder_.dispose(); - displayNameBuilder_ = null; + public Builder addAllPhotos( + java.lang.Iterable values) { + if (photosBuilder_ == null) { + ensurePhotosIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, photos_); + onChanged(); + } else { + photosBuilder_.addAllMessages(values); } - onChanged(); return this; } /** * * *
-     * The localized name of the place, suitable as a short human-readable
-     * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
+     * Output only. Information (including references) about photos of this place.
      * 
* - * .google.type.LocalizedText display_name = 31; + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.type.LocalizedText.Builder getDisplayNameBuilder() { - bitField0_ |= 0x00000002; - onChanged(); - return getDisplayNameFieldBuilder().getBuilder(); + public Builder clearPhotos() { + if (photosBuilder_ == null) { + photos_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00020000); + onChanged(); + } else { + photosBuilder_.clear(); + } + return this; } /** * * *
-     * The localized name of the place, suitable as a short human-readable
-     * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
+     * Output only. Information (including references) about photos of this place.
      * 
* - * .google.type.LocalizedText display_name = 31; + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.type.LocalizedTextOrBuilder getDisplayNameOrBuilder() { - if (displayNameBuilder_ != null) { - return displayNameBuilder_.getMessageOrBuilder(); + public Builder removePhotos(int index) { + if (photosBuilder_ == null) { + ensurePhotosIsMutable(); + photos_.remove(index); + onChanged(); } else { - return displayName_ == null - ? com.google.type.LocalizedText.getDefaultInstance() - : displayName_; + photosBuilder_.remove(index); } + return this; } /** * * *
-     * The localized name of the place, suitable as a short human-readable
-     * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
+     * Output only. Information (including references) about photos of this place.
      * 
* - * .google.type.LocalizedText display_name = 31; + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.LocalizedText, - com.google.type.LocalizedText.Builder, - com.google.type.LocalizedTextOrBuilder> - getDisplayNameFieldBuilder() { - if (displayNameBuilder_ == null) { - displayNameBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.type.LocalizedText, - com.google.type.LocalizedText.Builder, - com.google.type.LocalizedTextOrBuilder>( - getDisplayName(), getParentForChildren(), isClean()); - displayName_ = null; - } - return displayNameBuilder_; + public com.google.maps.places.v1.Photo.Builder getPhotosBuilder(int index) { + return getPhotosFieldBuilder().getBuilder(index); } - - private com.google.protobuf.LazyStringList types_ = - com.google.protobuf.LazyStringArrayList.EMPTY; - - private void ensureTypesIsMutable() { - if (!((bitField0_ & 0x00000004) != 0)) { - types_ = new com.google.protobuf.LazyStringArrayList(types_); - bitField0_ |= 0x00000004; + /** + * + * + *
+     * Output only. Information (including references) about photos of this place.
+     * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.PhotoOrBuilder getPhotosOrBuilder(int index) { + if (photosBuilder_ == null) { + return photos_.get(index); + } else { + return photosBuilder_.getMessageOrBuilder(index); } } /** * * *
-     * A set of type tags for this result. For example, "political" and
-     * "locality".
+     * Output only. Information (including references) about photos of this place.
      * 
* - * repeated string types = 5; - * - * @return A list containing the types. + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ProtocolStringList getTypesList() { - return types_.getUnmodifiableView(); + public java.util.List + getPhotosOrBuilderList() { + if (photosBuilder_ != null) { + return photosBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(photos_); + } } /** * * *
-     * A set of type tags for this result. For example, "political" and
-     * "locality".
+     * Output only. Information (including references) about photos of this place.
      * 
* - * repeated string types = 5; - * - * @return The count of types. + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public int getTypesCount() { - return types_.size(); + public com.google.maps.places.v1.Photo.Builder addPhotosBuilder() { + return getPhotosFieldBuilder() + .addBuilder(com.google.maps.places.v1.Photo.getDefaultInstance()); } /** * * *
-     * A set of type tags for this result. For example, "political" and
-     * "locality".
+     * Output only. Information (including references) about photos of this place.
      * 
* - * repeated string types = 5; - * - * @param index The index of the element to return. - * @return The types at the given index. + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getTypes(int index) { - return types_.get(index); + public com.google.maps.places.v1.Photo.Builder addPhotosBuilder(int index) { + return getPhotosFieldBuilder() + .addBuilder(index, com.google.maps.places.v1.Photo.getDefaultInstance()); } /** * * *
-     * A set of type tags for this result. For example, "political" and
-     * "locality".
+     * Output only. Information (including references) about photos of this place.
      * 
* - * repeated string types = 5; - * - * @param index The index of the value to return. - * @return The bytes of the types at the given index. + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getTypesBytes(int index) { - return types_.getByteString(index); + public java.util.List getPhotosBuilderList() { + return getPhotosFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Photo, + com.google.maps.places.v1.Photo.Builder, + com.google.maps.places.v1.PhotoOrBuilder> + getPhotosFieldBuilder() { + if (photosBuilder_ == null) { + photosBuilder_ = + new com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Photo, + com.google.maps.places.v1.Photo.Builder, + com.google.maps.places.v1.PhotoOrBuilder>( + photos_, ((bitField0_ & 0x00020000) != 0), getParentForChildren(), isClean()); + photos_ = null; + } + return photosBuilder_; } + + private java.lang.Object adrFormatAddress_ = ""; /** * * *
-     * A set of type tags for this result. For example, "political" and
-     * "locality".
+     * Output only. The place's address in adr microformat:
+     * http://microformats.org/wiki/adr.
      * 
* - * repeated string types = 5; + * string adr_format_address = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param index The index to set the value at. - * @param value The types to set. - * @return This builder for chaining. + * @return The adrFormatAddress. */ - public Builder setTypes(int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public java.lang.String getAdrFormatAddress() { + java.lang.Object ref = adrFormatAddress_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + adrFormatAddress_ = s; + return s; + } else { + return (java.lang.String) ref; } - ensureTypesIsMutable(); - types_.set(index, value); - onChanged(); - return this; } /** * * *
-     * A set of type tags for this result. For example, "political" and
-     * "locality".
+     * Output only. The place's address in adr microformat:
+     * http://microformats.org/wiki/adr.
      * 
* - * repeated string types = 5; + * string adr_format_address = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The types to add. - * @return This builder for chaining. + * @return The bytes for adrFormatAddress. */ - public Builder addTypes(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public com.google.protobuf.ByteString getAdrFormatAddressBytes() { + java.lang.Object ref = adrFormatAddress_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + adrFormatAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - ensureTypesIsMutable(); - types_.add(value); - onChanged(); - return this; } /** * * *
-     * A set of type tags for this result. For example, "political" and
-     * "locality".
+     * Output only. The place's address in adr microformat:
+     * http://microformats.org/wiki/adr.
      * 
* - * repeated string types = 5; + * string adr_format_address = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param values The types to add. + * @param value The adrFormatAddress to set. * @return This builder for chaining. */ - public Builder addAllTypes(java.lang.Iterable values) { - ensureTypesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, types_); + public Builder setAdrFormatAddress(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + adrFormatAddress_ = value; + bitField0_ |= 0x00040000; onChanged(); return this; } @@ -16905,17 +22102,17 @@ public Builder addAllTypes(java.lang.Iterable values) { * * *
-     * A set of type tags for this result. For example, "political" and
-     * "locality".
+     * Output only. The place's address in adr microformat:
+     * http://microformats.org/wiki/adr.
      * 
* - * repeated string types = 5; + * string adr_format_address = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ - public Builder clearTypes() { - types_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000004); + public Builder clearAdrFormatAddress() { + adrFormatAddress_ = getDefaultInstance().getAdrFormatAddress(); + bitField0_ = (bitField0_ & ~0x00040000); onChanged(); return this; } @@ -16923,89 +22120,61 @@ public Builder clearTypes() { * * *
-     * A set of type tags for this result. For example, "political" and
-     * "locality".
+     * Output only. The place's address in adr microformat:
+     * http://microformats.org/wiki/adr.
      * 
* - * repeated string types = 5; + * string adr_format_address = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The bytes of the types to add. + * @param value The bytes for adrFormatAddress to set. * @return This builder for chaining. */ - public Builder addTypesBytes(com.google.protobuf.ByteString value) { + public Builder setAdrFormatAddressBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); - ensureTypesIsMutable(); - types_.add(value); + adrFormatAddress_ = value; + bitField0_ |= 0x00040000; onChanged(); return this; } - private java.lang.Object nationalPhoneNumber_ = ""; - /** - * - * - *
-     * A human-readable phone number for the place, in national format.
-     * 
- * - * string national_phone_number = 7; - * - * @return The nationalPhoneNumber. - */ - public java.lang.String getNationalPhoneNumber() { - java.lang.Object ref = nationalPhoneNumber_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - nationalPhoneNumber_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } + private int businessStatus_ = 0; /** * * *
-     * A human-readable phone number for the place, in national format.
+     * Output only. The business status for the place.
      * 
* - * string national_phone_number = 7; + * + * .google.maps.places.v1.Place.BusinessStatus business_status = 25 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The bytes for nationalPhoneNumber. + * @return The enum numeric value on the wire for businessStatus. */ - public com.google.protobuf.ByteString getNationalPhoneNumberBytes() { - java.lang.Object ref = nationalPhoneNumber_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - nationalPhoneNumber_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + @java.lang.Override + public int getBusinessStatusValue() { + return businessStatus_; } /** * * *
-     * A human-readable phone number for the place, in national format.
+     * Output only. The business status for the place.
      * 
* - * string national_phone_number = 7; + * + * .google.maps.places.v1.Place.BusinessStatus business_status = 25 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The nationalPhoneNumber to set. + * @param value The enum numeric value on the wire for businessStatus to set. * @return This builder for chaining. */ - public Builder setNationalPhoneNumber(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - nationalPhoneNumber_ = value; - bitField0_ |= 0x00000008; + public Builder setBusinessStatusValue(int value) { + businessStatus_ = value; + bitField0_ |= 0x00080000; onChanged(); return this; } @@ -17013,105 +22182,99 @@ public Builder setNationalPhoneNumber(java.lang.String value) { * * *
-     * A human-readable phone number for the place, in national format.
+     * Output only. The business status for the place.
      * 
* - * string national_phone_number = 7; + * + * .google.maps.places.v1.Place.BusinessStatus business_status = 25 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return This builder for chaining. + * @return The businessStatus. */ - public Builder clearNationalPhoneNumber() { - nationalPhoneNumber_ = getDefaultInstance().getNationalPhoneNumber(); - bitField0_ = (bitField0_ & ~0x00000008); - onChanged(); - return this; + @java.lang.Override + public com.google.maps.places.v1.Place.BusinessStatus getBusinessStatus() { + com.google.maps.places.v1.Place.BusinessStatus result = + com.google.maps.places.v1.Place.BusinessStatus.forNumber(businessStatus_); + return result == null ? com.google.maps.places.v1.Place.BusinessStatus.UNRECOGNIZED : result; } /** * * *
-     * A human-readable phone number for the place, in national format.
+     * Output only. The business status for the place.
      * 
* - * string national_phone_number = 7; + * + * .google.maps.places.v1.Place.BusinessStatus business_status = 25 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The bytes for nationalPhoneNumber to set. + * @param value The businessStatus to set. * @return This builder for chaining. */ - public Builder setNationalPhoneNumberBytes(com.google.protobuf.ByteString value) { + public Builder setBusinessStatus(com.google.maps.places.v1.Place.BusinessStatus value) { if (value == null) { throw new NullPointerException(); } - checkByteStringIsUtf8(value); - nationalPhoneNumber_ = value; - bitField0_ |= 0x00000008; + bitField0_ |= 0x00080000; + businessStatus_ = value.getNumber(); onChanged(); return this; } - - private java.lang.Object internationalPhoneNumber_ = ""; /** * * *
-     * A human-readable phone number for the place, in international format.
+     * Output only. The business status for the place.
      * 
* - * string international_phone_number = 8; + * + * .google.maps.places.v1.Place.BusinessStatus business_status = 25 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The internationalPhoneNumber. + * @return This builder for chaining. */ - public java.lang.String getInternationalPhoneNumber() { - java.lang.Object ref = internationalPhoneNumber_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - internationalPhoneNumber_ = s; - return s; - } else { - return (java.lang.String) ref; - } + public Builder clearBusinessStatus() { + bitField0_ = (bitField0_ & ~0x00080000); + businessStatus_ = 0; + onChanged(); + return this; } + + private int priceLevel_ = 0; /** * * *
-     * A human-readable phone number for the place, in international format.
+     * Output only. Price level of the place.
      * 
* - * string international_phone_number = 8; + * + * .google.maps.places.v1.PriceLevel price_level = 26 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The bytes for internationalPhoneNumber. + * @return The enum numeric value on the wire for priceLevel. */ - public com.google.protobuf.ByteString getInternationalPhoneNumberBytes() { - java.lang.Object ref = internationalPhoneNumber_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - internationalPhoneNumber_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + @java.lang.Override + public int getPriceLevelValue() { + return priceLevel_; } /** * * *
-     * A human-readable phone number for the place, in international format.
+     * Output only. Price level of the place.
      * 
* - * string international_phone_number = 8; + * + * .google.maps.places.v1.PriceLevel price_level = 26 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The internationalPhoneNumber to set. + * @param value The enum numeric value on the wire for priceLevel to set. * @return This builder for chaining. */ - public Builder setInternationalPhoneNumber(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - internationalPhoneNumber_ = value; - bitField0_ |= 0x00000010; + public Builder setPriceLevelValue(int value) { + priceLevel_ = value; + bitField0_ |= 0x00100000; onChanged(); return this; } @@ -17119,235 +22282,226 @@ public Builder setInternationalPhoneNumber(java.lang.String value) { * * *
-     * A human-readable phone number for the place, in international format.
+     * Output only. Price level of the place.
      * 
* - * string international_phone_number = 8; + * + * .google.maps.places.v1.PriceLevel price_level = 26 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return This builder for chaining. + * @return The priceLevel. */ - public Builder clearInternationalPhoneNumber() { - internationalPhoneNumber_ = getDefaultInstance().getInternationalPhoneNumber(); - bitField0_ = (bitField0_ & ~0x00000010); - onChanged(); - return this; + @java.lang.Override + public com.google.maps.places.v1.PriceLevel getPriceLevel() { + com.google.maps.places.v1.PriceLevel result = + com.google.maps.places.v1.PriceLevel.forNumber(priceLevel_); + return result == null ? com.google.maps.places.v1.PriceLevel.UNRECOGNIZED : result; } /** * * *
-     * A human-readable phone number for the place, in international format.
+     * Output only. Price level of the place.
      * 
* - * string international_phone_number = 8; + * + * .google.maps.places.v1.PriceLevel price_level = 26 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The bytes for internationalPhoneNumber to set. + * @param value The priceLevel to set. * @return This builder for chaining. */ - public Builder setInternationalPhoneNumberBytes(com.google.protobuf.ByteString value) { + public Builder setPriceLevel(com.google.maps.places.v1.PriceLevel value) { if (value == null) { throw new NullPointerException(); } - checkByteStringIsUtf8(value); - internationalPhoneNumber_ = value; - bitField0_ |= 0x00000010; + bitField0_ |= 0x00100000; + priceLevel_ = value.getNumber(); onChanged(); return this; } - - private java.lang.Object formattedAddress_ = ""; /** * * *
-     * A full, human-readable address for this place.
+     * Output only. Price level of the place.
      * 
* - * string formatted_address = 9; + * + * .google.maps.places.v1.PriceLevel price_level = 26 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The formattedAddress. + * @return This builder for chaining. */ - public java.lang.String getFormattedAddress() { - java.lang.Object ref = formattedAddress_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - formattedAddress_ = s; - return s; - } else { - return (java.lang.String) ref; + public Builder clearPriceLevel() { + bitField0_ = (bitField0_ & ~0x00100000); + priceLevel_ = 0; + onChanged(); + return this; + } + + private java.util.List attributions_ = + java.util.Collections.emptyList(); + + private void ensureAttributionsIsMutable() { + if (!((bitField0_ & 0x00200000) != 0)) { + attributions_ = + new java.util.ArrayList(attributions_); + bitField0_ |= 0x00200000; } } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.Attribution, + com.google.maps.places.v1.Place.Attribution.Builder, + com.google.maps.places.v1.Place.AttributionOrBuilder> + attributionsBuilder_; + /** * * *
-     * A full, human-readable address for this place.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * string formatted_address = 9; - * - * @return The bytes for formattedAddress. + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getFormattedAddressBytes() { - java.lang.Object ref = formattedAddress_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - formattedAddress_ = b; - return b; + public java.util.List getAttributionsList() { + if (attributionsBuilder_ == null) { + return java.util.Collections.unmodifiableList(attributions_); } else { - return (com.google.protobuf.ByteString) ref; + return attributionsBuilder_.getMessageList(); } } /** * * *
-     * A full, human-readable address for this place.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * string formatted_address = 9; - * - * @param value The formattedAddress to set. - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setFormattedAddress(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public int getAttributionsCount() { + if (attributionsBuilder_ == null) { + return attributions_.size(); + } else { + return attributionsBuilder_.getCount(); } - formattedAddress_ = value; - bitField0_ |= 0x00000020; - onChanged(); - return this; } /** * * *
-     * A full, human-readable address for this place.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * string formatted_address = 9; - * - * @return This builder for chaining. - */ - public Builder clearFormattedAddress() { - formattedAddress_ = getDefaultInstance().getFormattedAddress(); - bitField0_ = (bitField0_ & ~0x00000020); - onChanged(); - return this; - } - /** - * - * - *
-     * A full, human-readable address for this place.
-     * 
- * - * string formatted_address = 9; - * - * @param value The bytes for formattedAddress to set. - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setFormattedAddressBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - formattedAddress_ = value; - bitField0_ |= 0x00000020; - onChanged(); - return this; - } - - private java.util.List addressComponents_ = - java.util.Collections.emptyList(); - - private void ensureAddressComponentsIsMutable() { - if (!((bitField0_ & 0x00000040) != 0)) { - addressComponents_ = - new java.util.ArrayList( - addressComponents_); - bitField0_ |= 0x00000040; + public com.google.maps.places.v1.Place.Attribution getAttributions(int index) { + if (attributionsBuilder_ == null) { + return attributions_.get(index); + } else { + return attributionsBuilder_.getMessage(index); } } - - private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.AddressComponent, - com.google.maps.places.v1.Place.AddressComponent.Builder, - com.google.maps.places.v1.Place.AddressComponentOrBuilder> - addressComponentsBuilder_; - /** * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.util.List - getAddressComponentsList() { - if (addressComponentsBuilder_ == null) { - return java.util.Collections.unmodifiableList(addressComponents_); + public Builder setAttributions(int index, com.google.maps.places.v1.Place.Attribution value) { + if (attributionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAttributionsIsMutable(); + attributions_.set(index, value); + onChanged(); } else { - return addressComponentsBuilder_.getMessageList(); + attributionsBuilder_.setMessage(index, value); } + return this; } /** * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public int getAddressComponentsCount() { - if (addressComponentsBuilder_ == null) { - return addressComponents_.size(); + public Builder setAttributions( + int index, com.google.maps.places.v1.Place.Attribution.Builder builderForValue) { + if (attributionsBuilder_ == null) { + ensureAttributionsIsMutable(); + attributions_.set(index, builderForValue.build()); + onChanged(); } else { - return addressComponentsBuilder_.getCount(); + attributionsBuilder_.setMessage(index, builderForValue.build()); } + return this; } /** * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.AddressComponent getAddressComponents(int index) { - if (addressComponentsBuilder_ == null) { - return addressComponents_.get(index); + public Builder addAttributions(com.google.maps.places.v1.Place.Attribution value) { + if (attributionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureAttributionsIsMutable(); + attributions_.add(value); + onChanged(); } else { - return addressComponentsBuilder_.getMessage(index); + attributionsBuilder_.addMessage(value); } + return this; } /** * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setAddressComponents( - int index, com.google.maps.places.v1.Place.AddressComponent value) { - if (addressComponentsBuilder_ == null) { + public Builder addAttributions(int index, com.google.maps.places.v1.Place.Attribution value) { + if (attributionsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureAddressComponentsIsMutable(); - addressComponents_.set(index, value); + ensureAttributionsIsMutable(); + attributions_.add(index, value); onChanged(); } else { - addressComponentsBuilder_.setMessage(index, value); + attributionsBuilder_.addMessage(index, value); } return this; } @@ -17355,19 +22509,21 @@ public Builder setAddressComponents( * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setAddressComponents( - int index, com.google.maps.places.v1.Place.AddressComponent.Builder builderForValue) { - if (addressComponentsBuilder_ == null) { - ensureAddressComponentsIsMutable(); - addressComponents_.set(index, builderForValue.build()); + public Builder addAttributions( + com.google.maps.places.v1.Place.Attribution.Builder builderForValue) { + if (attributionsBuilder_ == null) { + ensureAttributionsIsMutable(); + attributions_.add(builderForValue.build()); onChanged(); } else { - addressComponentsBuilder_.setMessage(index, builderForValue.build()); + attributionsBuilder_.addMessage(builderForValue.build()); } return this; } @@ -17375,21 +22531,21 @@ public Builder setAddressComponents( * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder addAddressComponents(com.google.maps.places.v1.Place.AddressComponent value) { - if (addressComponentsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureAddressComponentsIsMutable(); - addressComponents_.add(value); + public Builder addAttributions( + int index, com.google.maps.places.v1.Place.Attribution.Builder builderForValue) { + if (attributionsBuilder_ == null) { + ensureAttributionsIsMutable(); + attributions_.add(index, builderForValue.build()); onChanged(); } else { - addressComponentsBuilder_.addMessage(value); + attributionsBuilder_.addMessage(index, builderForValue.build()); } return this; } @@ -17397,22 +22553,21 @@ public Builder addAddressComponents(com.google.maps.places.v1.Place.AddressCompo * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder addAddressComponents( - int index, com.google.maps.places.v1.Place.AddressComponent value) { - if (addressComponentsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureAddressComponentsIsMutable(); - addressComponents_.add(index, value); + public Builder addAllAttributions( + java.lang.Iterable values) { + if (attributionsBuilder_ == null) { + ensureAttributionsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, attributions_); onChanged(); } else { - addressComponentsBuilder_.addMessage(index, value); + attributionsBuilder_.addAllMessages(values); } return this; } @@ -17420,19 +22575,20 @@ public Builder addAddressComponents( * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder addAddressComponents( - com.google.maps.places.v1.Place.AddressComponent.Builder builderForValue) { - if (addressComponentsBuilder_ == null) { - ensureAddressComponentsIsMutable(); - addressComponents_.add(builderForValue.build()); + public Builder clearAttributions() { + if (attributionsBuilder_ == null) { + attributions_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00200000); onChanged(); } else { - addressComponentsBuilder_.addMessage(builderForValue.build()); + attributionsBuilder_.clear(); } return this; } @@ -17440,19 +22596,20 @@ public Builder addAddressComponents( * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder addAddressComponents( - int index, com.google.maps.places.v1.Place.AddressComponent.Builder builderForValue) { - if (addressComponentsBuilder_ == null) { - ensureAddressComponentsIsMutable(); - addressComponents_.add(index, builderForValue.build()); + public Builder removeAttributions(int index) { + if (attributionsBuilder_ == null) { + ensureAttributionsIsMutable(); + attributions_.remove(index); onChanged(); } else { - addressComponentsBuilder_.addMessage(index, builderForValue.build()); + attributionsBuilder_.remove(index); } return this; } @@ -17460,227 +22617,259 @@ public Builder addAddressComponents( * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder addAllAddressComponents( - java.lang.Iterable values) { - if (addressComponentsBuilder_ == null) { - ensureAddressComponentsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, addressComponents_); - onChanged(); - } else { - addressComponentsBuilder_.addAllMessages(values); - } - return this; + public com.google.maps.places.v1.Place.Attribution.Builder getAttributionsBuilder(int index) { + return getAttributionsFieldBuilder().getBuilder(index); } /** * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearAddressComponents() { - if (addressComponentsBuilder_ == null) { - addressComponents_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000040); - onChanged(); + public com.google.maps.places.v1.Place.AttributionOrBuilder getAttributionsOrBuilder( + int index) { + if (attributionsBuilder_ == null) { + return attributions_.get(index); } else { - addressComponentsBuilder_.clear(); + return attributionsBuilder_.getMessageOrBuilder(index); } - return this; } /** * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder removeAddressComponents(int index) { - if (addressComponentsBuilder_ == null) { - ensureAddressComponentsIsMutable(); - addressComponents_.remove(index); - onChanged(); + public java.util.List + getAttributionsOrBuilderList() { + if (attributionsBuilder_ != null) { + return attributionsBuilder_.getMessageOrBuilderList(); } else { - addressComponentsBuilder_.remove(index); + return java.util.Collections.unmodifiableList(attributions_); } - return this; } /** * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.AddressComponent.Builder getAddressComponentsBuilder( - int index) { - return getAddressComponentsFieldBuilder().getBuilder(index); + public com.google.maps.places.v1.Place.Attribution.Builder addAttributionsBuilder() { + return getAttributionsFieldBuilder() + .addBuilder(com.google.maps.places.v1.Place.Attribution.getDefaultInstance()); } /** * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOrBuilder( - int index) { - if (addressComponentsBuilder_ == null) { - return addressComponents_.get(index); - } else { - return addressComponentsBuilder_.getMessageOrBuilder(index); - } + public com.google.maps.places.v1.Place.Attribution.Builder addAttributionsBuilder(int index) { + return getAttributionsFieldBuilder() + .addBuilder(index, com.google.maps.places.v1.Place.Attribution.getDefaultInstance()); } /** * * *
-     * Repeated components for each locality level.
+     * Output only. A set of data provider that must be shown with this result.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.util.List - getAddressComponentsOrBuilderList() { - if (addressComponentsBuilder_ != null) { - return addressComponentsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(addressComponents_); + public java.util.List + getAttributionsBuilderList() { + return getAttributionsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.Attribution, + com.google.maps.places.v1.Place.Attribution.Builder, + com.google.maps.places.v1.Place.AttributionOrBuilder> + getAttributionsFieldBuilder() { + if (attributionsBuilder_ == null) { + attributionsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.Attribution, + com.google.maps.places.v1.Place.Attribution.Builder, + com.google.maps.places.v1.Place.AttributionOrBuilder>( + attributions_, ((bitField0_ & 0x00200000) != 0), getParentForChildren(), isClean()); + attributions_ = null; } + return attributionsBuilder_; } + + private int userRatingCount_; /** * * *
-     * Repeated components for each locality level.
+     * Output only. The total number of reviews (with or without text) for this
+     * place.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * optional int32 user_rating_count = 28 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the userRatingCount field is set. */ - public com.google.maps.places.v1.Place.AddressComponent.Builder addAddressComponentsBuilder() { - return getAddressComponentsFieldBuilder() - .addBuilder(com.google.maps.places.v1.Place.AddressComponent.getDefaultInstance()); + @java.lang.Override + public boolean hasUserRatingCount() { + return ((bitField0_ & 0x00400000) != 0); } /** * * *
-     * Repeated components for each locality level.
+     * Output only. The total number of reviews (with or without text) for this
+     * place.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * optional int32 user_rating_count = 28 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The userRatingCount. */ - public com.google.maps.places.v1.Place.AddressComponent.Builder addAddressComponentsBuilder( - int index) { - return getAddressComponentsFieldBuilder() - .addBuilder(index, com.google.maps.places.v1.Place.AddressComponent.getDefaultInstance()); + @java.lang.Override + public int getUserRatingCount() { + return userRatingCount_; } /** * * *
-     * Repeated components for each locality level.
+     * Output only. The total number of reviews (with or without text) for this
+     * place.
      * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * optional int32 user_rating_count = 28 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The userRatingCount to set. + * @return This builder for chaining. */ - public java.util.List - getAddressComponentsBuilderList() { - return getAddressComponentsFieldBuilder().getBuilderList(); - } + public Builder setUserRatingCount(int value) { - private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.AddressComponent, - com.google.maps.places.v1.Place.AddressComponent.Builder, - com.google.maps.places.v1.Place.AddressComponentOrBuilder> - getAddressComponentsFieldBuilder() { - if (addressComponentsBuilder_ == null) { - addressComponentsBuilder_ = - new com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.AddressComponent, - com.google.maps.places.v1.Place.AddressComponent.Builder, - com.google.maps.places.v1.Place.AddressComponentOrBuilder>( - addressComponents_, - ((bitField0_ & 0x00000040) != 0), - getParentForChildren(), - isClean()); - addressComponents_ = null; - } - return addressComponentsBuilder_; + userRatingCount_ = value; + bitField0_ |= 0x00400000; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The total number of reviews (with or without text) for this
+     * place.
+     * 
+ * + * optional int32 user_rating_count = 28 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return This builder for chaining. + */ + public Builder clearUserRatingCount() { + bitField0_ = (bitField0_ & ~0x00400000); + userRatingCount_ = 0; + onChanged(); + return this; } - private com.google.maps.places.v1.Place.PlusCode plusCode_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.PlusCode, - com.google.maps.places.v1.Place.PlusCode.Builder, - com.google.maps.places.v1.Place.PlusCodeOrBuilder> - plusCodeBuilder_; + private java.lang.Object iconMaskBaseUri_ = ""; /** * * *
-     * Plus code of the place location lat/long.
+     * Output only. A truncated URL to an v2 icon mask. User can access different
+     * icon type by appending type suffix to the end (eg, ".svg" or ".png").
      * 
* - * .google.maps.places.v1.Place.PlusCode plus_code = 11; + * string icon_mask_base_uri = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the plusCode field is set. + * @return The iconMaskBaseUri. */ - public boolean hasPlusCode() { - return ((bitField0_ & 0x00000080) != 0); + public java.lang.String getIconMaskBaseUri() { + java.lang.Object ref = iconMaskBaseUri_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + iconMaskBaseUri_ = s; + return s; + } else { + return (java.lang.String) ref; + } } /** * * *
-     * Plus code of the place location lat/long.
+     * Output only. A truncated URL to an v2 icon mask. User can access different
+     * icon type by appending type suffix to the end (eg, ".svg" or ".png").
      * 
* - * .google.maps.places.v1.Place.PlusCode plus_code = 11; + * string icon_mask_base_uri = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The plusCode. + * @return The bytes for iconMaskBaseUri. */ - public com.google.maps.places.v1.Place.PlusCode getPlusCode() { - if (plusCodeBuilder_ == null) { - return plusCode_ == null - ? com.google.maps.places.v1.Place.PlusCode.getDefaultInstance() - : plusCode_; + public com.google.protobuf.ByteString getIconMaskBaseUriBytes() { + java.lang.Object ref = iconMaskBaseUri_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + iconMaskBaseUri_ = b; + return b; } else { - return plusCodeBuilder_.getMessage(); + return (com.google.protobuf.ByteString) ref; } } /** * * *
-     * Plus code of the place location lat/long.
+     * Output only. A truncated URL to an v2 icon mask. User can access different
+     * icon type by appending type suffix to the end (eg, ".svg" or ".png").
      * 
* - * .google.maps.places.v1.Place.PlusCode plus_code = 11; + * string icon_mask_base_uri = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The iconMaskBaseUri to set. + * @return This builder for chaining. */ - public Builder setPlusCode(com.google.maps.places.v1.Place.PlusCode value) { - if (plusCodeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - plusCode_ = value; - } else { - plusCodeBuilder_.setMessage(value); + public Builder setIconMaskBaseUri(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - bitField0_ |= 0x00000080; + iconMaskBaseUri_ = value; + bitField0_ |= 0x00800000; onChanged(); return this; } @@ -17688,18 +22877,17 @@ public Builder setPlusCode(com.google.maps.places.v1.Place.PlusCode value) { * * *
-     * Plus code of the place location lat/long.
+     * Output only. A truncated URL to an v2 icon mask. User can access different
+     * icon type by appending type suffix to the end (eg, ".svg" or ".png").
      * 
* - * .google.maps.places.v1.Place.PlusCode plus_code = 11; + * string icon_mask_base_uri = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public Builder setPlusCode(com.google.maps.places.v1.Place.PlusCode.Builder builderForValue) { - if (plusCodeBuilder_ == null) { - plusCode_ = builderForValue.build(); - } else { - plusCodeBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000080; + public Builder clearIconMaskBaseUri() { + iconMaskBaseUri_ = getDefaultInstance().getIconMaskBaseUri(); + bitField0_ = (bitField0_ & ~0x00800000); onChanged(); return this; } @@ -17707,178 +22895,179 @@ public Builder setPlusCode(com.google.maps.places.v1.Place.PlusCode.Builder buil * * *
-     * Plus code of the place location lat/long.
+     * Output only. A truncated URL to an v2 icon mask. User can access different
+     * icon type by appending type suffix to the end (eg, ".svg" or ".png").
      * 
* - * .google.maps.places.v1.Place.PlusCode plus_code = 11; + * string icon_mask_base_uri = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for iconMaskBaseUri to set. + * @return This builder for chaining. */ - public Builder mergePlusCode(com.google.maps.places.v1.Place.PlusCode value) { - if (plusCodeBuilder_ == null) { - if (((bitField0_ & 0x00000080) != 0) - && plusCode_ != null - && plusCode_ != com.google.maps.places.v1.Place.PlusCode.getDefaultInstance()) { - getPlusCodeBuilder().mergeFrom(value); - } else { - plusCode_ = value; - } - } else { - plusCodeBuilder_.mergeFrom(value); + public Builder setIconMaskBaseUriBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - bitField0_ |= 0x00000080; + checkByteStringIsUtf8(value); + iconMaskBaseUri_ = value; + bitField0_ |= 0x00800000; onChanged(); return this; } + + private java.lang.Object iconBackgroundColor_ = ""; /** * * *
-     * Plus code of the place location lat/long.
+     * Output only. Background color for icon_mask in hex format, e.g. #909CE1.
      * 
* - * .google.maps.places.v1.Place.PlusCode plus_code = 11; + * string icon_background_color = 30 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The iconBackgroundColor. */ - public Builder clearPlusCode() { - bitField0_ = (bitField0_ & ~0x00000080); - plusCode_ = null; - if (plusCodeBuilder_ != null) { - plusCodeBuilder_.dispose(); - plusCodeBuilder_ = null; + public java.lang.String getIconBackgroundColor() { + java.lang.Object ref = iconBackgroundColor_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + iconBackgroundColor_ = s; + return s; + } else { + return (java.lang.String) ref; } - onChanged(); - return this; } /** * * *
-     * Plus code of the place location lat/long.
+     * Output only. Background color for icon_mask in hex format, e.g. #909CE1.
      * 
* - * .google.maps.places.v1.Place.PlusCode plus_code = 11; + * string icon_background_color = 30 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for iconBackgroundColor. */ - public com.google.maps.places.v1.Place.PlusCode.Builder getPlusCodeBuilder() { - bitField0_ |= 0x00000080; - onChanged(); - return getPlusCodeFieldBuilder().getBuilder(); + public com.google.protobuf.ByteString getIconBackgroundColorBytes() { + java.lang.Object ref = iconBackgroundColor_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + iconBackgroundColor_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } /** * * *
-     * Plus code of the place location lat/long.
+     * Output only. Background color for icon_mask in hex format, e.g. #909CE1.
      * 
* - * .google.maps.places.v1.Place.PlusCode plus_code = 11; + * string icon_background_color = 30 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The iconBackgroundColor to set. + * @return This builder for chaining. */ - public com.google.maps.places.v1.Place.PlusCodeOrBuilder getPlusCodeOrBuilder() { - if (plusCodeBuilder_ != null) { - return plusCodeBuilder_.getMessageOrBuilder(); - } else { - return plusCode_ == null - ? com.google.maps.places.v1.Place.PlusCode.getDefaultInstance() - : plusCode_; + public Builder setIconBackgroundColor(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } + iconBackgroundColor_ = value; + bitField0_ |= 0x01000000; + onChanged(); + return this; } /** * * *
-     * Plus code of the place location lat/long.
+     * Output only. Background color for icon_mask in hex format, e.g. #909CE1.
      * 
* - * .google.maps.places.v1.Place.PlusCode plus_code = 11; + * string icon_background_color = 30 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.PlusCode, - com.google.maps.places.v1.Place.PlusCode.Builder, - com.google.maps.places.v1.Place.PlusCodeOrBuilder> - getPlusCodeFieldBuilder() { - if (plusCodeBuilder_ == null) { - plusCodeBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.PlusCode, - com.google.maps.places.v1.Place.PlusCode.Builder, - com.google.maps.places.v1.Place.PlusCodeOrBuilder>( - getPlusCode(), getParentForChildren(), isClean()); - plusCode_ = null; - } - return plusCodeBuilder_; + public Builder clearIconBackgroundColor() { + iconBackgroundColor_ = getDefaultInstance().getIconBackgroundColor(); + bitField0_ = (bitField0_ & ~0x01000000); + onChanged(); + return this; } - - private com.google.type.LatLng location_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.LatLng, com.google.type.LatLng.Builder, com.google.type.LatLngOrBuilder> - locationBuilder_; /** * * *
-     * The position of this place.
+     * Output only. Background color for icon_mask in hex format, e.g. #909CE1.
      * 
* - * .google.type.LatLng location = 12; + * string icon_background_color = 30 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the location field is set. + * @param value The bytes for iconBackgroundColor to set. + * @return This builder for chaining. */ - public boolean hasLocation() { - return ((bitField0_ & 0x00000100) != 0); + public Builder setIconBackgroundColorBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + iconBackgroundColor_ = value; + bitField0_ |= 0x01000000; + onChanged(); + return this; } + + private boolean takeout_; /** * * *
-     * The position of this place.
+     * Output only. Specifies if the business supports takeout.
      * 
* - * .google.type.LatLng location = 12; + * optional bool takeout = 33 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The location. + * @return Whether the takeout field is set. */ - public com.google.type.LatLng getLocation() { - if (locationBuilder_ == null) { - return location_ == null ? com.google.type.LatLng.getDefaultInstance() : location_; - } else { - return locationBuilder_.getMessage(); - } + @java.lang.Override + public boolean hasTakeout() { + return ((bitField0_ & 0x02000000) != 0); } /** * * *
-     * The position of this place.
+     * Output only. Specifies if the business supports takeout.
      * 
* - * .google.type.LatLng location = 12; + * optional bool takeout = 33 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The takeout. */ - public Builder setLocation(com.google.type.LatLng value) { - if (locationBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - location_ = value; - } else { - locationBuilder_.setMessage(value); - } - bitField0_ |= 0x00000100; - onChanged(); - return this; + @java.lang.Override + public boolean getTakeout() { + return takeout_; } /** * * *
-     * The position of this place.
+     * Output only. Specifies if the business supports takeout.
      * 
* - * .google.type.LatLng location = 12; + * optional bool takeout = 33 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The takeout to set. + * @return This builder for chaining. */ - public Builder setLocation(com.google.type.LatLng.Builder builderForValue) { - if (locationBuilder_ == null) { - location_ = builderForValue.build(); - } else { - locationBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000100; + public Builder setTakeout(boolean value) { + + takeout_ = value; + bitField0_ |= 0x02000000; onChanged(); return this; } @@ -17886,156 +23075,138 @@ public Builder setLocation(com.google.type.LatLng.Builder builderForValue) { * * *
-     * The position of this place.
+     * Output only. Specifies if the business supports takeout.
      * 
* - * .google.type.LatLng location = 12; + * optional bool takeout = 33 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public Builder mergeLocation(com.google.type.LatLng value) { - if (locationBuilder_ == null) { - if (((bitField0_ & 0x00000100) != 0) - && location_ != null - && location_ != com.google.type.LatLng.getDefaultInstance()) { - getLocationBuilder().mergeFrom(value); - } else { - location_ = value; - } - } else { - locationBuilder_.mergeFrom(value); - } - bitField0_ |= 0x00000100; + public Builder clearTakeout() { + bitField0_ = (bitField0_ & ~0x02000000); + takeout_ = false; onChanged(); return this; } + + private boolean delivery_; /** * * *
-     * The position of this place.
+     * Output only. Specifies if the business supports delivery.
      * 
* - * .google.type.LatLng location = 12; + * optional bool delivery = 34 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the delivery field is set. */ - public Builder clearLocation() { - bitField0_ = (bitField0_ & ~0x00000100); - location_ = null; - if (locationBuilder_ != null) { - locationBuilder_.dispose(); - locationBuilder_ = null; - } - onChanged(); - return this; + @java.lang.Override + public boolean hasDelivery() { + return ((bitField0_ & 0x04000000) != 0); } /** * * *
-     * The position of this place.
+     * Output only. Specifies if the business supports delivery.
      * 
* - * .google.type.LatLng location = 12; + * optional bool delivery = 34 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The delivery. */ - public com.google.type.LatLng.Builder getLocationBuilder() { - bitField0_ |= 0x00000100; - onChanged(); - return getLocationFieldBuilder().getBuilder(); + @java.lang.Override + public boolean getDelivery() { + return delivery_; } /** * * *
-     * The position of this place.
+     * Output only. Specifies if the business supports delivery.
      * 
* - * .google.type.LatLng location = 12; - */ - public com.google.type.LatLngOrBuilder getLocationOrBuilder() { - if (locationBuilder_ != null) { - return locationBuilder_.getMessageOrBuilder(); - } else { - return location_ == null ? com.google.type.LatLng.getDefaultInstance() : location_; - } + * optional bool delivery = 34 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The delivery to set. + * @return This builder for chaining. + */ + public Builder setDelivery(boolean value) { + + delivery_ = value; + bitField0_ |= 0x04000000; + onChanged(); + return this; } /** * * *
-     * The position of this place.
+     * Output only. Specifies if the business supports delivery.
      * 
* - * .google.type.LatLng location = 12; + * optional bool delivery = 34 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.LatLng, com.google.type.LatLng.Builder, com.google.type.LatLngOrBuilder> - getLocationFieldBuilder() { - if (locationBuilder_ == null) { - locationBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.type.LatLng, - com.google.type.LatLng.Builder, - com.google.type.LatLngOrBuilder>(getLocation(), getParentForChildren(), isClean()); - location_ = null; - } - return locationBuilder_; + public Builder clearDelivery() { + bitField0_ = (bitField0_ & ~0x04000000); + delivery_ = false; + onChanged(); + return this; } - private com.google.geo.type.Viewport viewport_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.geo.type.Viewport, - com.google.geo.type.Viewport.Builder, - com.google.geo.type.ViewportOrBuilder> - viewportBuilder_; + private boolean dineIn_; /** * * *
-     * A viewport suitable for displaying the place on an average-sized map.
+     * Output only. Specifies if the business supports indoor or outdoor seating
+     * options.
      * 
* - * .google.geo.type.Viewport viewport = 13; + * optional bool dine_in = 35 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the viewport field is set. + * @return Whether the dineIn field is set. */ - public boolean hasViewport() { - return ((bitField0_ & 0x00000200) != 0); + @java.lang.Override + public boolean hasDineIn() { + return ((bitField0_ & 0x08000000) != 0); } /** * * *
-     * A viewport suitable for displaying the place on an average-sized map.
+     * Output only. Specifies if the business supports indoor or outdoor seating
+     * options.
      * 
* - * .google.geo.type.Viewport viewport = 13; + * optional bool dine_in = 35 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The viewport. + * @return The dineIn. */ - public com.google.geo.type.Viewport getViewport() { - if (viewportBuilder_ == null) { - return viewport_ == null ? com.google.geo.type.Viewport.getDefaultInstance() : viewport_; - } else { - return viewportBuilder_.getMessage(); - } + @java.lang.Override + public boolean getDineIn() { + return dineIn_; } /** * * *
-     * A viewport suitable for displaying the place on an average-sized map.
+     * Output only. Specifies if the business supports indoor or outdoor seating
+     * options.
      * 
* - * .google.geo.type.Viewport viewport = 13; + * optional bool dine_in = 35 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The dineIn to set. + * @return This builder for chaining. */ - public Builder setViewport(com.google.geo.type.Viewport value) { - if (viewportBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - viewport_ = value; - } else { - viewportBuilder_.setMessage(value); - } - bitField0_ |= 0x00000200; + public Builder setDineIn(boolean value) { + + dineIn_ = value; + bitField0_ |= 0x08000000; onChanged(); return this; } @@ -18043,153 +23214,136 @@ public Builder setViewport(com.google.geo.type.Viewport value) { * * *
-     * A viewport suitable for displaying the place on an average-sized map.
+     * Output only. Specifies if the business supports indoor or outdoor seating
+     * options.
      * 
* - * .google.geo.type.Viewport viewport = 13; + * optional bool dine_in = 35 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public Builder setViewport(com.google.geo.type.Viewport.Builder builderForValue) { - if (viewportBuilder_ == null) { - viewport_ = builderForValue.build(); - } else { - viewportBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000200; + public Builder clearDineIn() { + bitField0_ = (bitField0_ & ~0x08000000); + dineIn_ = false; onChanged(); return this; } + + private boolean curbsidePickup_; /** * * *
-     * A viewport suitable for displaying the place on an average-sized map.
+     * Output only. Specifies if the business supports curbside pickup.
      * 
* - * .google.geo.type.Viewport viewport = 13; + * optional bool curbside_pickup = 36 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the curbsidePickup field is set. */ - public Builder mergeViewport(com.google.geo.type.Viewport value) { - if (viewportBuilder_ == null) { - if (((bitField0_ & 0x00000200) != 0) - && viewport_ != null - && viewport_ != com.google.geo.type.Viewport.getDefaultInstance()) { - getViewportBuilder().mergeFrom(value); - } else { - viewport_ = value; - } - } else { - viewportBuilder_.mergeFrom(value); - } - bitField0_ |= 0x00000200; - onChanged(); - return this; + @java.lang.Override + public boolean hasCurbsidePickup() { + return ((bitField0_ & 0x10000000) != 0); } /** * * *
-     * A viewport suitable for displaying the place on an average-sized map.
+     * Output only. Specifies if the business supports curbside pickup.
      * 
* - * .google.geo.type.Viewport viewport = 13; + * optional bool curbside_pickup = 36 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The curbsidePickup. */ - public Builder clearViewport() { - bitField0_ = (bitField0_ & ~0x00000200); - viewport_ = null; - if (viewportBuilder_ != null) { - viewportBuilder_.dispose(); - viewportBuilder_ = null; - } - onChanged(); - return this; + @java.lang.Override + public boolean getCurbsidePickup() { + return curbsidePickup_; } /** * * *
-     * A viewport suitable for displaying the place on an average-sized map.
+     * Output only. Specifies if the business supports curbside pickup.
      * 
* - * .google.geo.type.Viewport viewport = 13; + * optional bool curbside_pickup = 36 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The curbsidePickup to set. + * @return This builder for chaining. */ - public com.google.geo.type.Viewport.Builder getViewportBuilder() { - bitField0_ |= 0x00000200; + public Builder setCurbsidePickup(boolean value) { + + curbsidePickup_ = value; + bitField0_ |= 0x10000000; onChanged(); - return getViewportFieldBuilder().getBuilder(); + return this; } /** * * *
-     * A viewport suitable for displaying the place on an average-sized map.
+     * Output only. Specifies if the business supports curbside pickup.
      * 
* - * .google.geo.type.Viewport viewport = 13; + * optional bool curbside_pickup = 36 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public com.google.geo.type.ViewportOrBuilder getViewportOrBuilder() { - if (viewportBuilder_ != null) { - return viewportBuilder_.getMessageOrBuilder(); - } else { - return viewport_ == null ? com.google.geo.type.Viewport.getDefaultInstance() : viewport_; - } + public Builder clearCurbsidePickup() { + bitField0_ = (bitField0_ & ~0x10000000); + curbsidePickup_ = false; + onChanged(); + return this; } + + private boolean reservable_; /** * * *
-     * A viewport suitable for displaying the place on an average-sized map.
+     * Output only. Specifies if the place supports reservations.
      * 
* - * .google.geo.type.Viewport viewport = 13; + * optional bool reservable = 38 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the reservable field is set. */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.geo.type.Viewport, - com.google.geo.type.Viewport.Builder, - com.google.geo.type.ViewportOrBuilder> - getViewportFieldBuilder() { - if (viewportBuilder_ == null) { - viewportBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.geo.type.Viewport, - com.google.geo.type.Viewport.Builder, - com.google.geo.type.ViewportOrBuilder>( - getViewport(), getParentForChildren(), isClean()); - viewport_ = null; - } - return viewportBuilder_; + @java.lang.Override + public boolean hasReservable() { + return ((bitField0_ & 0x20000000) != 0); } - - private double rating_; /** * * *
-     * A rating between 1.0 and 5.0, based on user reviews of this place.
+     * Output only. Specifies if the place supports reservations.
      * 
* - * double rating = 14; + * optional bool reservable = 38 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The rating. + * @return The reservable. */ @java.lang.Override - public double getRating() { - return rating_; + public boolean getReservable() { + return reservable_; } /** * * *
-     * A rating between 1.0 and 5.0, based on user reviews of this place.
+     * Output only. Specifies if the place supports reservations.
      * 
* - * double rating = 14; + * optional bool reservable = 38 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The rating to set. + * @param value The reservable to set. * @return This builder for chaining. */ - public Builder setRating(double value) { + public Builder setReservable(boolean value) { - rating_ = value; - bitField0_ |= 0x00000400; + reservable_ = value; + bitField0_ |= 0x20000000; onChanged(); return this; } @@ -18197,100 +23351,70 @@ public Builder setRating(double value) { * * *
-     * A rating between 1.0 and 5.0, based on user reviews of this place.
+     * Output only. Specifies if the place supports reservations.
      * 
* - * double rating = 14; + * optional bool reservable = 38 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ - public Builder clearRating() { - bitField0_ = (bitField0_ & ~0x00000400); - rating_ = 0D; + public Builder clearReservable() { + bitField0_ = (bitField0_ & ~0x20000000); + reservable_ = false; onChanged(); return this; } - private java.lang.Object googleMapsUri_ = ""; - /** - * - * - *
-     * A URL providing more information about this place.
-     * 
- * - * string google_maps_uri = 15; - * - * @return The googleMapsUri. - */ - public java.lang.String getGoogleMapsUri() { - java.lang.Object ref = googleMapsUri_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - googleMapsUri_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } + private boolean servesBreakfast_; /** * * *
-     * A URL providing more information about this place.
+     * Output only. Specifies if the place serves breakfast.
      * 
* - * string google_maps_uri = 15; + * optional bool serves_breakfast = 39 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The bytes for googleMapsUri. + * @return Whether the servesBreakfast field is set. */ - public com.google.protobuf.ByteString getGoogleMapsUriBytes() { - java.lang.Object ref = googleMapsUri_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - googleMapsUri_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + @java.lang.Override + public boolean hasServesBreakfast() { + return ((bitField0_ & 0x40000000) != 0); } /** * * *
-     * A URL providing more information about this place.
+     * Output only. Specifies if the place serves breakfast.
      * 
* - * string google_maps_uri = 15; + * optional bool serves_breakfast = 39 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The googleMapsUri to set. - * @return This builder for chaining. + * @return The servesBreakfast. */ - public Builder setGoogleMapsUri(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - googleMapsUri_ = value; - bitField0_ |= 0x00000800; - onChanged(); - return this; + @java.lang.Override + public boolean getServesBreakfast() { + return servesBreakfast_; } /** * * *
-     * A URL providing more information about this place.
+     * Output only. Specifies if the place serves breakfast.
      * 
* - * string google_maps_uri = 15; + * optional bool serves_breakfast = 39 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * + * @param value The servesBreakfast to set. * @return This builder for chaining. */ - public Builder clearGoogleMapsUri() { - googleMapsUri_ = getDefaultInstance().getGoogleMapsUri(); - bitField0_ = (bitField0_ & ~0x00000800); + public Builder setServesBreakfast(boolean value) { + + servesBreakfast_ = value; + bitField0_ |= 0x40000000; onChanged(); return this; } @@ -18298,97 +23422,68 @@ public Builder clearGoogleMapsUri() { * * *
-     * A URL providing more information about this place.
+     * Output only. Specifies if the place serves breakfast.
      * 
* - * string google_maps_uri = 15; + * optional bool serves_breakfast = 39 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The bytes for googleMapsUri to set. * @return This builder for chaining. - */ - public Builder setGoogleMapsUriBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - googleMapsUri_ = value; - bitField0_ |= 0x00000800; + */ + public Builder clearServesBreakfast() { + bitField0_ = (bitField0_ & ~0x40000000); + servesBreakfast_ = false; onChanged(); return this; } - private java.lang.Object websiteUri_ = ""; + private boolean servesLunch_; /** * * *
-     * The authoritative website for this place, e.g. a business' homepage.
-     * Note that for places that are part of a chain (e.g. an IKEA store), this
-     * will usually be the website for the individual store, not the overall
-     * chain.
+     * Output only. Specifies if the place serves lunch.
      * 
* - * string website_uri = 16; + * optional bool serves_lunch = 40 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The websiteUri. + * @return Whether the servesLunch field is set. */ - public java.lang.String getWebsiteUri() { - java.lang.Object ref = websiteUri_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - websiteUri_ = s; - return s; - } else { - return (java.lang.String) ref; - } + @java.lang.Override + public boolean hasServesLunch() { + return ((bitField0_ & 0x80000000) != 0); } /** * * *
-     * The authoritative website for this place, e.g. a business' homepage.
-     * Note that for places that are part of a chain (e.g. an IKEA store), this
-     * will usually be the website for the individual store, not the overall
-     * chain.
+     * Output only. Specifies if the place serves lunch.
      * 
* - * string website_uri = 16; + * optional bool serves_lunch = 40 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The bytes for websiteUri. + * @return The servesLunch. */ - public com.google.protobuf.ByteString getWebsiteUriBytes() { - java.lang.Object ref = websiteUri_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - websiteUri_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + @java.lang.Override + public boolean getServesLunch() { + return servesLunch_; } /** * * *
-     * The authoritative website for this place, e.g. a business' homepage.
-     * Note that for places that are part of a chain (e.g. an IKEA store), this
-     * will usually be the website for the individual store, not the overall
-     * chain.
+     * Output only. Specifies if the place serves lunch.
      * 
* - * string website_uri = 16; + * optional bool serves_lunch = 40 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The websiteUri to set. + * @param value The servesLunch to set. * @return This builder for chaining. */ - public Builder setWebsiteUri(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - websiteUri_ = value; - bitField0_ |= 0x00001000; + public Builder setServesLunch(boolean value) { + + servesLunch_ = value; + bitField0_ |= 0x80000000; onChanged(); return this; } @@ -18396,455 +23491,438 @@ public Builder setWebsiteUri(java.lang.String value) { * * *
-     * The authoritative website for this place, e.g. a business' homepage.
-     * Note that for places that are part of a chain (e.g. an IKEA store), this
-     * will usually be the website for the individual store, not the overall
-     * chain.
+     * Output only. Specifies if the place serves lunch.
      * 
* - * string website_uri = 16; + * optional bool serves_lunch = 40 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ - public Builder clearWebsiteUri() { - websiteUri_ = getDefaultInstance().getWebsiteUri(); - bitField0_ = (bitField0_ & ~0x00001000); + public Builder clearServesLunch() { + bitField0_ = (bitField0_ & ~0x80000000); + servesLunch_ = false; onChanged(); return this; } + + private boolean servesDinner_; /** * * *
-     * The authoritative website for this place, e.g. a business' homepage.
-     * Note that for places that are part of a chain (e.g. an IKEA store), this
-     * will usually be the website for the individual store, not the overall
-     * chain.
+     * Output only. Specifies if the place serves dinner.
      * 
* - * string website_uri = 16; + * optional bool serves_dinner = 41 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The bytes for websiteUri to set. - * @return This builder for chaining. + * @return Whether the servesDinner field is set. */ - public Builder setWebsiteUriBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - websiteUri_ = value; - bitField0_ |= 0x00001000; - onChanged(); - return this; - } - - private java.util.List reviews_ = - java.util.Collections.emptyList(); - - private void ensureReviewsIsMutable() { - if (!((bitField0_ & 0x00002000) != 0)) { - reviews_ = new java.util.ArrayList(reviews_); - bitField0_ |= 0x00002000; - } + @java.lang.Override + public boolean hasServesDinner() { + return ((bitField1_ & 0x00000001) != 0); } - - private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.Review, - com.google.maps.places.v1.Place.Review.Builder, - com.google.maps.places.v1.Place.ReviewOrBuilder> - reviewsBuilder_; - /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves dinner.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_dinner = 41 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesDinner. */ - public java.util.List getReviewsList() { - if (reviewsBuilder_ == null) { - return java.util.Collections.unmodifiableList(reviews_); - } else { - return reviewsBuilder_.getMessageList(); - } + @java.lang.Override + public boolean getServesDinner() { + return servesDinner_; } /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves dinner.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_dinner = 41 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The servesDinner to set. + * @return This builder for chaining. */ - public int getReviewsCount() { - if (reviewsBuilder_ == null) { - return reviews_.size(); - } else { - return reviewsBuilder_.getCount(); - } + public Builder setServesDinner(boolean value) { + + servesDinner_ = value; + bitField1_ |= 0x00000001; + onChanged(); + return this; } /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves dinner.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_dinner = 41 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public com.google.maps.places.v1.Place.Review getReviews(int index) { - if (reviewsBuilder_ == null) { - return reviews_.get(index); - } else { - return reviewsBuilder_.getMessage(index); - } + public Builder clearServesDinner() { + bitField1_ = (bitField1_ & ~0x00000001); + servesDinner_ = false; + onChanged(); + return this; } + + private boolean servesBeer_; /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves beer.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_beer = 42 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the servesBeer field is set. */ - public Builder setReviews(int index, com.google.maps.places.v1.Place.Review value) { - if (reviewsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureReviewsIsMutable(); - reviews_.set(index, value); - onChanged(); - } else { - reviewsBuilder_.setMessage(index, value); - } - return this; + @java.lang.Override + public boolean hasServesBeer() { + return ((bitField1_ & 0x00000002) != 0); } /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves beer.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_beer = 42 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesBeer. */ - public Builder setReviews( - int index, com.google.maps.places.v1.Place.Review.Builder builderForValue) { - if (reviewsBuilder_ == null) { - ensureReviewsIsMutable(); - reviews_.set(index, builderForValue.build()); - onChanged(); - } else { - reviewsBuilder_.setMessage(index, builderForValue.build()); - } - return this; + @java.lang.Override + public boolean getServesBeer() { + return servesBeer_; } /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves beer.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_beer = 42 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The servesBeer to set. + * @return This builder for chaining. */ - public Builder addReviews(com.google.maps.places.v1.Place.Review value) { - if (reviewsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureReviewsIsMutable(); - reviews_.add(value); - onChanged(); - } else { - reviewsBuilder_.addMessage(value); - } + public Builder setServesBeer(boolean value) { + + servesBeer_ = value; + bitField1_ |= 0x00000002; + onChanged(); return this; } /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves beer.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_beer = 42 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public Builder addReviews(int index, com.google.maps.places.v1.Place.Review value) { - if (reviewsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureReviewsIsMutable(); - reviews_.add(index, value); - onChanged(); - } else { - reviewsBuilder_.addMessage(index, value); - } + public Builder clearServesBeer() { + bitField1_ = (bitField1_ & ~0x00000002); + servesBeer_ = false; + onChanged(); return this; } + + private boolean servesWine_; /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves wine.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_wine = 43 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the servesWine field is set. */ - public Builder addReviews(com.google.maps.places.v1.Place.Review.Builder builderForValue) { - if (reviewsBuilder_ == null) { - ensureReviewsIsMutable(); - reviews_.add(builderForValue.build()); - onChanged(); - } else { - reviewsBuilder_.addMessage(builderForValue.build()); - } - return this; + @java.lang.Override + public boolean hasServesWine() { + return ((bitField1_ & 0x00000004) != 0); } /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves wine.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_wine = 43 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesWine. */ - public Builder addReviews( - int index, com.google.maps.places.v1.Place.Review.Builder builderForValue) { - if (reviewsBuilder_ == null) { - ensureReviewsIsMutable(); - reviews_.add(index, builderForValue.build()); - onChanged(); - } else { - reviewsBuilder_.addMessage(index, builderForValue.build()); - } - return this; + @java.lang.Override + public boolean getServesWine() { + return servesWine_; } /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves wine.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_wine = 43 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The servesWine to set. + * @return This builder for chaining. */ - public Builder addAllReviews( - java.lang.Iterable values) { - if (reviewsBuilder_ == null) { - ensureReviewsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, reviews_); - onChanged(); - } else { - reviewsBuilder_.addAllMessages(values); - } + public Builder setServesWine(boolean value) { + + servesWine_ = value; + bitField1_ |= 0x00000004; + onChanged(); return this; } /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves wine.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_wine = 43 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public Builder clearReviews() { - if (reviewsBuilder_ == null) { - reviews_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00002000); - onChanged(); - } else { - reviewsBuilder_.clear(); - } + public Builder clearServesWine() { + bitField1_ = (bitField1_ & ~0x00000004); + servesWine_ = false; + onChanged(); return this; } + + private boolean servesBrunch_; /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves brunch.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_brunch = 44 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the servesBrunch field is set. */ - public Builder removeReviews(int index) { - if (reviewsBuilder_ == null) { - ensureReviewsIsMutable(); - reviews_.remove(index); - onChanged(); - } else { - reviewsBuilder_.remove(index); - } - return this; + @java.lang.Override + public boolean hasServesBrunch() { + return ((bitField1_ & 0x00000008) != 0); } /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves brunch.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_brunch = 44 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesBrunch. */ - public com.google.maps.places.v1.Place.Review.Builder getReviewsBuilder(int index) { - return getReviewsFieldBuilder().getBuilder(index); + @java.lang.Override + public boolean getServesBrunch() { + return servesBrunch_; } /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves brunch.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_brunch = 44 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The servesBrunch to set. + * @return This builder for chaining. */ - public com.google.maps.places.v1.Place.ReviewOrBuilder getReviewsOrBuilder(int index) { - if (reviewsBuilder_ == null) { - return reviews_.get(index); - } else { - return reviewsBuilder_.getMessageOrBuilder(index); - } + public Builder setServesBrunch(boolean value) { + + servesBrunch_ = value; + bitField1_ |= 0x00000008; + onChanged(); + return this; } /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves brunch.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_brunch = 44 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. */ - public java.util.List - getReviewsOrBuilderList() { - if (reviewsBuilder_ != null) { - return reviewsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(reviews_); - } + public Builder clearServesBrunch() { + bitField1_ = (bitField1_ & ~0x00000008); + servesBrunch_ = false; + onChanged(); + return this; } + + private boolean servesVegetarianFood_; /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves vegetarian food.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_vegetarian_food = 45 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the servesVegetarianFood field is set. */ - public com.google.maps.places.v1.Place.Review.Builder addReviewsBuilder() { - return getReviewsFieldBuilder() - .addBuilder(com.google.maps.places.v1.Place.Review.getDefaultInstance()); + @java.lang.Override + public boolean hasServesVegetarianFood() { + return ((bitField1_ & 0x00000010) != 0); } /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves vegetarian food.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_vegetarian_food = 45 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The servesVegetarianFood. */ - public com.google.maps.places.v1.Place.Review.Builder addReviewsBuilder(int index) { - return getReviewsFieldBuilder() - .addBuilder(index, com.google.maps.places.v1.Place.Review.getDefaultInstance()); + @java.lang.Override + public boolean getServesVegetarianFood() { + return servesVegetarianFood_; } /** * * *
-     * List of reviews about this place.
+     * Output only. Specifies if the place serves vegetarian food.
      * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * optional bool serves_vegetarian_food = 45 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The servesVegetarianFood to set. + * @return This builder for chaining. */ - public java.util.List getReviewsBuilderList() { - return getReviewsFieldBuilder().getBuilderList(); - } + public Builder setServesVegetarianFood(boolean value) { - private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.Review, - com.google.maps.places.v1.Place.Review.Builder, - com.google.maps.places.v1.Place.ReviewOrBuilder> - getReviewsFieldBuilder() { - if (reviewsBuilder_ == null) { - reviewsBuilder_ = - new com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.Review, - com.google.maps.places.v1.Place.Review.Builder, - com.google.maps.places.v1.Place.ReviewOrBuilder>( - reviews_, ((bitField0_ & 0x00002000) != 0), getParentForChildren(), isClean()); - reviews_ = null; - } - return reviewsBuilder_; + servesVegetarianFood_ = value; + bitField1_ |= 0x00000010; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. Specifies if the place serves vegetarian food.
+     * 
+ * + * optional bool serves_vegetarian_food = 45 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return This builder for chaining. + */ + public Builder clearServesVegetarianFood() { + bitField1_ = (bitField1_ & ~0x00000010); + servesVegetarianFood_ = false; + onChanged(); + return this; } - private com.google.maps.places.v1.Place.OpeningHours openingHours_; + private com.google.maps.places.v1.Place.OpeningHours currentOpeningHours_; private com.google.protobuf.SingleFieldBuilderV3< com.google.maps.places.v1.Place.OpeningHours, com.google.maps.places.v1.Place.OpeningHours.Builder, com.google.maps.places.v1.Place.OpeningHoursOrBuilder> - openingHoursBuilder_; + currentOpeningHoursBuilder_; /** * * *
-     * The regular hours of operation.
+     * Output only. The hours of operation for the next seven days (including
+     * today). The time period starts at midnight on the date of the request and
+     * ends at 11:59 pm six days later. This field includes the special_days
+     * subfield of all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return Whether the openingHours field is set. + * @return Whether the currentOpeningHours field is set. */ - public boolean hasOpeningHours() { - return ((bitField0_ & 0x00004000) != 0); + public boolean hasCurrentOpeningHours() { + return ((bitField1_ & 0x00000020) != 0); } /** * * *
-     * The regular hours of operation.
+     * Output only. The hours of operation for the next seven days (including
+     * today). The time period starts at midnight on the date of the request and
+     * ends at 11:59 pm six days later. This field includes the special_days
+     * subfield of all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The openingHours. + * @return The currentOpeningHours. */ - public com.google.maps.places.v1.Place.OpeningHours getOpeningHours() { - if (openingHoursBuilder_ == null) { - return openingHours_ == null + public com.google.maps.places.v1.Place.OpeningHours getCurrentOpeningHours() { + if (currentOpeningHoursBuilder_ == null) { + return currentOpeningHours_ == null ? com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance() - : openingHours_; + : currentOpeningHours_; } else { - return openingHoursBuilder_.getMessage(); + return currentOpeningHoursBuilder_.getMessage(); } } /** * * *
-     * The regular hours of operation.
+     * Output only. The hours of operation for the next seven days (including
+     * today). The time period starts at midnight on the date of the request and
+     * ends at 11:59 pm six days later. This field includes the special_days
+     * subfield of all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setOpeningHours(com.google.maps.places.v1.Place.OpeningHours value) { - if (openingHoursBuilder_ == null) { + public Builder setCurrentOpeningHours(com.google.maps.places.v1.Place.OpeningHours value) { + if (currentOpeningHoursBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - openingHours_ = value; + currentOpeningHours_ = value; } else { - openingHoursBuilder_.setMessage(value); + currentOpeningHoursBuilder_.setMessage(value); } - bitField0_ |= 0x00004000; + bitField1_ |= 0x00000020; onChanged(); return this; } @@ -18852,19 +23930,24 @@ public Builder setOpeningHours(com.google.maps.places.v1.Place.OpeningHours valu * * *
-     * The regular hours of operation.
+     * Output only. The hours of operation for the next seven days (including
+     * today). The time period starts at midnight on the date of the request and
+     * ends at 11:59 pm six days later. This field includes the special_days
+     * subfield of all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setOpeningHours( + public Builder setCurrentOpeningHours( com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { - if (openingHoursBuilder_ == null) { - openingHours_ = builderForValue.build(); + if (currentOpeningHoursBuilder_ == null) { + currentOpeningHours_ = builderForValue.build(); } else { - openingHoursBuilder_.setMessage(builderForValue.build()); + currentOpeningHoursBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00004000; + bitField1_ |= 0x00000020; onChanged(); return this; } @@ -18872,24 +23955,30 @@ public Builder setOpeningHours( * * *
-     * The regular hours of operation.
+     * Output only. The hours of operation for the next seven days (including
+     * today). The time period starts at midnight on the date of the request and
+     * ends at 11:59 pm six days later. This field includes the special_days
+     * subfield of all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder mergeOpeningHours(com.google.maps.places.v1.Place.OpeningHours value) { - if (openingHoursBuilder_ == null) { - if (((bitField0_ & 0x00004000) != 0) - && openingHours_ != null - && openingHours_ != com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance()) { - getOpeningHoursBuilder().mergeFrom(value); + public Builder mergeCurrentOpeningHours(com.google.maps.places.v1.Place.OpeningHours value) { + if (currentOpeningHoursBuilder_ == null) { + if (((bitField1_ & 0x00000020) != 0) + && currentOpeningHours_ != null + && currentOpeningHours_ + != com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance()) { + getCurrentOpeningHoursBuilder().mergeFrom(value); } else { - openingHours_ = value; + currentOpeningHours_ = value; } } else { - openingHoursBuilder_.mergeFrom(value); + currentOpeningHoursBuilder_.mergeFrom(value); } - bitField0_ |= 0x00004000; + bitField1_ |= 0x00000020; onChanged(); return this; } @@ -18897,17 +23986,22 @@ public Builder mergeOpeningHours(com.google.maps.places.v1.Place.OpeningHours va * * *
-     * The regular hours of operation.
+     * Output only. The hours of operation for the next seven days (including
+     * today). The time period starts at midnight on the date of the request and
+     * ends at 11:59 pm six days later. This field includes the special_days
+     * subfield of all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearOpeningHours() { - bitField0_ = (bitField0_ & ~0x00004000); - openingHours_ = null; - if (openingHoursBuilder_ != null) { - openingHoursBuilder_.dispose(); - openingHoursBuilder_ = null; + public Builder clearCurrentOpeningHours() { + bitField1_ = (bitField1_ & ~0x00000020); + currentOpeningHours_ = null; + if (currentOpeningHoursBuilder_ != null) { + currentOpeningHoursBuilder_.dispose(); + currentOpeningHoursBuilder_ = null; } onChanged(); return this; @@ -18916,489 +24010,720 @@ public Builder clearOpeningHours() { * * *
-     * The regular hours of operation.
+     * Output only. The hours of operation for the next seven days (including
+     * today). The time period starts at midnight on the date of the request and
+     * ends at 11:59 pm six days later. This field includes the special_days
+     * subfield of all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.OpeningHours.Builder getOpeningHoursBuilder() { - bitField0_ |= 0x00004000; + public com.google.maps.places.v1.Place.OpeningHours.Builder getCurrentOpeningHoursBuilder() { + bitField1_ |= 0x00000020; onChanged(); - return getOpeningHoursFieldBuilder().getBuilder(); + return getCurrentOpeningHoursFieldBuilder().getBuilder(); } /** * * *
-     * The regular hours of operation.
+     * Output only. The hours of operation for the next seven days (including
+     * today). The time period starts at midnight on the date of the request and
+     * ends at 11:59 pm six days later. This field includes the special_days
+     * subfield of all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.OpeningHoursOrBuilder getOpeningHoursOrBuilder() { - if (openingHoursBuilder_ != null) { - return openingHoursBuilder_.getMessageOrBuilder(); + public com.google.maps.places.v1.Place.OpeningHoursOrBuilder getCurrentOpeningHoursOrBuilder() { + if (currentOpeningHoursBuilder_ != null) { + return currentOpeningHoursBuilder_.getMessageOrBuilder(); } else { - return openingHours_ == null + return currentOpeningHours_ == null ? com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance() - : openingHours_; + : currentOpeningHours_; } } /** * * *
-     * The regular hours of operation.
+     * Output only. The hours of operation for the next seven days (including
+     * today). The time period starts at midnight on the date of the request and
+     * ends at 11:59 pm six days later. This field includes the special_days
+     * subfield of all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ private com.google.protobuf.SingleFieldBuilderV3< com.google.maps.places.v1.Place.OpeningHours, com.google.maps.places.v1.Place.OpeningHours.Builder, com.google.maps.places.v1.Place.OpeningHoursOrBuilder> - getOpeningHoursFieldBuilder() { - if (openingHoursBuilder_ == null) { - openingHoursBuilder_ = + getCurrentOpeningHoursFieldBuilder() { + if (currentOpeningHoursBuilder_ == null) { + currentOpeningHoursBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.google.maps.places.v1.Place.OpeningHours, com.google.maps.places.v1.Place.OpeningHours.Builder, com.google.maps.places.v1.Place.OpeningHoursOrBuilder>( - getOpeningHours(), getParentForChildren(), isClean()); - openingHours_ = null; + getCurrentOpeningHours(), getParentForChildren(), isClean()); + currentOpeningHours_ = null; } - return openingHoursBuilder_; + return currentOpeningHoursBuilder_; } - private int utcOffsetMinutes_; + private java.util.List + currentSecondaryOpeningHours_ = java.util.Collections.emptyList(); + + private void ensureCurrentSecondaryOpeningHoursIsMutable() { + if (!((bitField1_ & 0x00000040) != 0)) { + currentSecondaryOpeningHours_ = + new java.util.ArrayList( + currentSecondaryOpeningHours_); + bitField1_ |= 0x00000040; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours, + com.google.maps.places.v1.Place.OpeningHours.Builder, + com.google.maps.places.v1.Place.OpeningHoursOrBuilder> + currentSecondaryOpeningHoursBuilder_; + /** * * *
-     * Number of minutes this place's timezone is currently offset from UTC.
-     * This is expressed in minutes to support timezones that are offset by
-     * fractions of an hour, e.g. X hours and 15 minutes.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * int32 utc_offset_minutes = 22; - * - * @return The utcOffsetMinutes. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public int getUtcOffsetMinutes() { - return utcOffsetMinutes_; + public java.util.List + getCurrentSecondaryOpeningHoursList() { + if (currentSecondaryOpeningHoursBuilder_ == null) { + return java.util.Collections.unmodifiableList(currentSecondaryOpeningHours_); + } else { + return currentSecondaryOpeningHoursBuilder_.getMessageList(); + } } /** * * *
-     * Number of minutes this place's timezone is currently offset from UTC.
-     * This is expressed in minutes to support timezones that are offset by
-     * fractions of an hour, e.g. X hours and 15 minutes.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * int32 utc_offset_minutes = 22; - * - * @param value The utcOffsetMinutes to set. - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setUtcOffsetMinutes(int value) { - - utcOffsetMinutes_ = value; - bitField0_ |= 0x00008000; - onChanged(); - return this; + public int getCurrentSecondaryOpeningHoursCount() { + if (currentSecondaryOpeningHoursBuilder_ == null) { + return currentSecondaryOpeningHours_.size(); + } else { + return currentSecondaryOpeningHoursBuilder_.getCount(); + } } /** * * *
-     * Number of minutes this place's timezone is currently offset from UTC.
-     * This is expressed in minutes to support timezones that are offset by
-     * fractions of an hour, e.g. X hours and 15 minutes.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * int32 utc_offset_minutes = 22; - * - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearUtcOffsetMinutes() { - bitField0_ = (bitField0_ & ~0x00008000); - utcOffsetMinutes_ = 0; - onChanged(); - return this; + public com.google.maps.places.v1.Place.OpeningHours getCurrentSecondaryOpeningHours(int index) { + if (currentSecondaryOpeningHoursBuilder_ == null) { + return currentSecondaryOpeningHours_.get(index); + } else { + return currentSecondaryOpeningHoursBuilder_.getMessage(index); + } } - - private java.lang.Object adrFormatAddress_ = ""; /** * * *
-     * The place's address in adr microformat: http://microformats.org/wiki/adr.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * string adr_format_address = 24; - * - * @return The adrFormatAddress. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getAdrFormatAddress() { - java.lang.Object ref = adrFormatAddress_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - adrFormatAddress_ = s; - return s; + public Builder setCurrentSecondaryOpeningHours( + int index, com.google.maps.places.v1.Place.OpeningHours value) { + if (currentSecondaryOpeningHoursBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureCurrentSecondaryOpeningHoursIsMutable(); + currentSecondaryOpeningHours_.set(index, value); + onChanged(); } else { - return (java.lang.String) ref; + currentSecondaryOpeningHoursBuilder_.setMessage(index, value); } + return this; } /** * * *
-     * The place's address in adr microformat: http://microformats.org/wiki/adr.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * string adr_format_address = 24; - * - * @return The bytes for adrFormatAddress. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getAdrFormatAddressBytes() { - java.lang.Object ref = adrFormatAddress_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - adrFormatAddress_ = b; - return b; + public Builder setCurrentSecondaryOpeningHours( + int index, com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { + if (currentSecondaryOpeningHoursBuilder_ == null) { + ensureCurrentSecondaryOpeningHoursIsMutable(); + currentSecondaryOpeningHours_.set(index, builderForValue.build()); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + currentSecondaryOpeningHoursBuilder_.setMessage(index, builderForValue.build()); } + return this; } /** * * *
-     * The place's address in adr microformat: http://microformats.org/wiki/adr.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * string adr_format_address = 24; - * - * @param value The adrFormatAddress to set. - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setAdrFormatAddress(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder addCurrentSecondaryOpeningHours( + com.google.maps.places.v1.Place.OpeningHours value) { + if (currentSecondaryOpeningHoursBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureCurrentSecondaryOpeningHoursIsMutable(); + currentSecondaryOpeningHours_.add(value); + onChanged(); + } else { + currentSecondaryOpeningHoursBuilder_.addMessage(value); } - adrFormatAddress_ = value; - bitField0_ |= 0x00010000; - onChanged(); return this; } /** * * *
-     * The place's address in adr microformat: http://microformats.org/wiki/adr.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * string adr_format_address = 24; - * - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearAdrFormatAddress() { - adrFormatAddress_ = getDefaultInstance().getAdrFormatAddress(); - bitField0_ = (bitField0_ & ~0x00010000); - onChanged(); + public Builder addCurrentSecondaryOpeningHours( + int index, com.google.maps.places.v1.Place.OpeningHours value) { + if (currentSecondaryOpeningHoursBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureCurrentSecondaryOpeningHoursIsMutable(); + currentSecondaryOpeningHours_.add(index, value); + onChanged(); + } else { + currentSecondaryOpeningHoursBuilder_.addMessage(index, value); + } return this; } /** * * *
-     * The place's address in adr microformat: http://microformats.org/wiki/adr.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * string adr_format_address = 24; - * - * @param value The bytes for adrFormatAddress to set. - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setAdrFormatAddressBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder addCurrentSecondaryOpeningHours( + com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { + if (currentSecondaryOpeningHoursBuilder_ == null) { + ensureCurrentSecondaryOpeningHoursIsMutable(); + currentSecondaryOpeningHours_.add(builderForValue.build()); + onChanged(); + } else { + currentSecondaryOpeningHoursBuilder_.addMessage(builderForValue.build()); } - checkByteStringIsUtf8(value); - adrFormatAddress_ = value; - bitField0_ |= 0x00010000; - onChanged(); return this; } - - private int businessStatus_ = 0; /** * * *
-     * The business status for the place.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.Place.BusinessStatus business_status = 25; - * - * @return The enum numeric value on the wire for businessStatus. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public int getBusinessStatusValue() { - return businessStatus_; + public Builder addCurrentSecondaryOpeningHours( + int index, com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { + if (currentSecondaryOpeningHoursBuilder_ == null) { + ensureCurrentSecondaryOpeningHoursIsMutable(); + currentSecondaryOpeningHours_.add(index, builderForValue.build()); + onChanged(); + } else { + currentSecondaryOpeningHoursBuilder_.addMessage(index, builderForValue.build()); + } + return this; } /** * * *
-     * The business status for the place.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.Place.BusinessStatus business_status = 25; - * - * @param value The enum numeric value on the wire for businessStatus to set. - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setBusinessStatusValue(int value) { - businessStatus_ = value; - bitField0_ |= 0x00020000; - onChanged(); + public Builder addAllCurrentSecondaryOpeningHours( + java.lang.Iterable values) { + if (currentSecondaryOpeningHoursBuilder_ == null) { + ensureCurrentSecondaryOpeningHoursIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, currentSecondaryOpeningHours_); + onChanged(); + } else { + currentSecondaryOpeningHoursBuilder_.addAllMessages(values); + } return this; } /** * * *
-     * The business status for the place.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.Place.BusinessStatus business_status = 25; - * - * @return The businessStatus. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public com.google.maps.places.v1.Place.BusinessStatus getBusinessStatus() { - com.google.maps.places.v1.Place.BusinessStatus result = - com.google.maps.places.v1.Place.BusinessStatus.forNumber(businessStatus_); - return result == null ? com.google.maps.places.v1.Place.BusinessStatus.UNRECOGNIZED : result; + public Builder clearCurrentSecondaryOpeningHours() { + if (currentSecondaryOpeningHoursBuilder_ == null) { + currentSecondaryOpeningHours_ = java.util.Collections.emptyList(); + bitField1_ = (bitField1_ & ~0x00000040); + onChanged(); + } else { + currentSecondaryOpeningHoursBuilder_.clear(); + } + return this; } /** * * *
-     * The business status for the place.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.Place.BusinessStatus business_status = 25; - * - * @param value The businessStatus to set. - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setBusinessStatus(com.google.maps.places.v1.Place.BusinessStatus value) { - if (value == null) { - throw new NullPointerException(); + public Builder removeCurrentSecondaryOpeningHours(int index) { + if (currentSecondaryOpeningHoursBuilder_ == null) { + ensureCurrentSecondaryOpeningHoursIsMutable(); + currentSecondaryOpeningHours_.remove(index); + onChanged(); + } else { + currentSecondaryOpeningHoursBuilder_.remove(index); } - bitField0_ |= 0x00020000; - businessStatus_ = value.getNumber(); - onChanged(); return this; } /** * * *
-     * The business status for the place.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.Place.BusinessStatus business_status = 25; - * - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearBusinessStatus() { - bitField0_ = (bitField0_ & ~0x00020000); - businessStatus_ = 0; - onChanged(); - return this; + public com.google.maps.places.v1.Place.OpeningHours.Builder + getCurrentSecondaryOpeningHoursBuilder(int index) { + return getCurrentSecondaryOpeningHoursFieldBuilder().getBuilder(index); } - - private int priceLevel_ = 0; /** * * *
-     * Price level of the place.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.PriceLevel price_level = 26; - * - * @return The enum numeric value on the wire for priceLevel. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public int getPriceLevelValue() { - return priceLevel_; + public com.google.maps.places.v1.Place.OpeningHoursOrBuilder + getCurrentSecondaryOpeningHoursOrBuilder(int index) { + if (currentSecondaryOpeningHoursBuilder_ == null) { + return currentSecondaryOpeningHours_.get(index); + } else { + return currentSecondaryOpeningHoursBuilder_.getMessageOrBuilder(index); + } } /** * * *
-     * Price level of the place.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.PriceLevel price_level = 26; - * - * @param value The enum numeric value on the wire for priceLevel to set. - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setPriceLevelValue(int value) { - priceLevel_ = value; - bitField0_ |= 0x00040000; - onChanged(); - return this; + public java.util.List + getCurrentSecondaryOpeningHoursOrBuilderList() { + if (currentSecondaryOpeningHoursBuilder_ != null) { + return currentSecondaryOpeningHoursBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(currentSecondaryOpeningHours_); + } } /** * * *
-     * Price level of the place.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.PriceLevel price_level = 26; - * - * @return The priceLevel. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public com.google.maps.places.v1.PriceLevel getPriceLevel() { - com.google.maps.places.v1.PriceLevel result = - com.google.maps.places.v1.PriceLevel.forNumber(priceLevel_); - return result == null ? com.google.maps.places.v1.PriceLevel.UNRECOGNIZED : result; + public com.google.maps.places.v1.Place.OpeningHours.Builder + addCurrentSecondaryOpeningHoursBuilder() { + return getCurrentSecondaryOpeningHoursFieldBuilder() + .addBuilder(com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance()); } /** * * *
-     * Price level of the place.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.PriceLevel price_level = 26; - * - * @param value The priceLevel to set. - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setPriceLevel(com.google.maps.places.v1.PriceLevel value) { - if (value == null) { - throw new NullPointerException(); - } - bitField0_ |= 0x00040000; - priceLevel_ = value.getNumber(); - onChanged(); - return this; + public com.google.maps.places.v1.Place.OpeningHours.Builder + addCurrentSecondaryOpeningHoursBuilder(int index) { + return getCurrentSecondaryOpeningHoursFieldBuilder() + .addBuilder(index, com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance()); } /** * * *
-     * Price level of the place.
+     * Output only. Contains an array of entries for the next seven days including
+     * information about secondary hours of a business. Secondary hours are
+     * different from a business's main hours. For example, a restaurant can
+     * specify drive through hours or delivery hours as its secondary hours. This
+     * field populates the type subfield, which draws from a predefined list of
+     * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+     * the types of the place. This field includes the special_days subfield of
+     * all hours, set for dates that have exceptional hours.
      * 
* - * .google.maps.places.v1.PriceLevel price_level = 26; - * - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearPriceLevel() { - bitField0_ = (bitField0_ & ~0x00040000); - priceLevel_ = 0; - onChanged(); - return this; + public java.util.List + getCurrentSecondaryOpeningHoursBuilderList() { + return getCurrentSecondaryOpeningHoursFieldBuilder().getBuilderList(); } - private java.util.List attributions_ = - java.util.Collections.emptyList(); + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours, + com.google.maps.places.v1.Place.OpeningHours.Builder, + com.google.maps.places.v1.Place.OpeningHoursOrBuilder> + getCurrentSecondaryOpeningHoursFieldBuilder() { + if (currentSecondaryOpeningHoursBuilder_ == null) { + currentSecondaryOpeningHoursBuilder_ = + new com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours, + com.google.maps.places.v1.Place.OpeningHours.Builder, + com.google.maps.places.v1.Place.OpeningHoursOrBuilder>( + currentSecondaryOpeningHours_, + ((bitField1_ & 0x00000040) != 0), + getParentForChildren(), + isClean()); + currentSecondaryOpeningHours_ = null; + } + return currentSecondaryOpeningHoursBuilder_; + } - private void ensureAttributionsIsMutable() { - if (!((bitField0_ & 0x00080000) != 0)) { - attributions_ = - new java.util.ArrayList(attributions_); - bitField0_ |= 0x00080000; + private java.util.List + regularSecondaryOpeningHours_ = java.util.Collections.emptyList(); + + private void ensureRegularSecondaryOpeningHoursIsMutable() { + if (!((bitField1_ & 0x00000080) != 0)) { + regularSecondaryOpeningHours_ = + new java.util.ArrayList( + regularSecondaryOpeningHours_); + bitField1_ |= 0x00000080; } } - private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.Attribution, - com.google.maps.places.v1.Place.Attribution.Builder, - com.google.maps.places.v1.Place.AttributionOrBuilder> - attributionsBuilder_; + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours, + com.google.maps.places.v1.Place.OpeningHours.Builder, + com.google.maps.places.v1.Place.OpeningHoursOrBuilder> + regularSecondaryOpeningHoursBuilder_; /** * * *
-     * A set of data provider that must be shown with this result.
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.util.List getAttributionsList() { - if (attributionsBuilder_ == null) { - return java.util.Collections.unmodifiableList(attributions_); + public java.util.List + getRegularSecondaryOpeningHoursList() { + if (regularSecondaryOpeningHoursBuilder_ == null) { + return java.util.Collections.unmodifiableList(regularSecondaryOpeningHours_); } else { - return attributionsBuilder_.getMessageList(); + return regularSecondaryOpeningHoursBuilder_.getMessageList(); } } /** * * *
-     * A set of data provider that must be shown with this result.
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public int getAttributionsCount() { - if (attributionsBuilder_ == null) { - return attributions_.size(); + public int getRegularSecondaryOpeningHoursCount() { + if (regularSecondaryOpeningHoursBuilder_ == null) { + return regularSecondaryOpeningHours_.size(); } else { - return attributionsBuilder_.getCount(); + return regularSecondaryOpeningHoursBuilder_.getCount(); } } /** * * *
-     * A set of data provider that must be shown with this result.
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.Attribution getAttributions(int index) { - if (attributionsBuilder_ == null) { - return attributions_.get(index); + public com.google.maps.places.v1.Place.OpeningHours getRegularSecondaryOpeningHours(int index) { + if (regularSecondaryOpeningHoursBuilder_ == null) { + return regularSecondaryOpeningHours_.get(index); } else { - return attributionsBuilder_.getMessage(index); + return regularSecondaryOpeningHoursBuilder_.getMessage(index); } } /** * * *
-     * A set of data provider that must be shown with this result.
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setAttributions(int index, com.google.maps.places.v1.Place.Attribution value) { - if (attributionsBuilder_ == null) { + public Builder setRegularSecondaryOpeningHours( + int index, com.google.maps.places.v1.Place.OpeningHours value) { + if (regularSecondaryOpeningHoursBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureAttributionsIsMutable(); - attributions_.set(index, value); + ensureRegularSecondaryOpeningHoursIsMutable(); + regularSecondaryOpeningHours_.set(index, value); onChanged(); } else { - attributionsBuilder_.setMessage(index, value); + regularSecondaryOpeningHoursBuilder_.setMessage(index, value); } return this; } @@ -19406,19 +24731,27 @@ public Builder setAttributions(int index, com.google.maps.places.v1.Place.Attrib * * *
-     * A set of data provider that must be shown with this result.
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setAttributions( - int index, com.google.maps.places.v1.Place.Attribution.Builder builderForValue) { - if (attributionsBuilder_ == null) { - ensureAttributionsIsMutable(); - attributions_.set(index, builderForValue.build()); + public Builder setRegularSecondaryOpeningHours( + int index, com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { + if (regularSecondaryOpeningHoursBuilder_ == null) { + ensureRegularSecondaryOpeningHoursIsMutable(); + regularSecondaryOpeningHours_.set(index, builderForValue.build()); onChanged(); } else { - attributionsBuilder_.setMessage(index, builderForValue.build()); + regularSecondaryOpeningHoursBuilder_.setMessage(index, builderForValue.build()); } return this; } @@ -19426,21 +24759,30 @@ public Builder setAttributions( * * *
-     * A set of data provider that must be shown with this result.
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder addAttributions(com.google.maps.places.v1.Place.Attribution value) { - if (attributionsBuilder_ == null) { + public Builder addRegularSecondaryOpeningHours( + com.google.maps.places.v1.Place.OpeningHours value) { + if (regularSecondaryOpeningHoursBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureAttributionsIsMutable(); - attributions_.add(value); + ensureRegularSecondaryOpeningHoursIsMutable(); + regularSecondaryOpeningHours_.add(value); onChanged(); } else { - attributionsBuilder_.addMessage(value); + regularSecondaryOpeningHoursBuilder_.addMessage(value); } return this; } @@ -19448,41 +24790,30 @@ public Builder addAttributions(com.google.maps.places.v1.Place.Attribution value * * *
-     * A set of data provider that must be shown with this result.
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder addAttributions(int index, com.google.maps.places.v1.Place.Attribution value) { - if (attributionsBuilder_ == null) { + public Builder addRegularSecondaryOpeningHours( + int index, com.google.maps.places.v1.Place.OpeningHours value) { + if (regularSecondaryOpeningHoursBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureAttributionsIsMutable(); - attributions_.add(index, value); - onChanged(); - } else { - attributionsBuilder_.addMessage(index, value); - } - return this; - } - /** - * - * - *
-     * A set of data provider that must be shown with this result.
-     * 
- * - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; - */ - public Builder addAttributions( - com.google.maps.places.v1.Place.Attribution.Builder builderForValue) { - if (attributionsBuilder_ == null) { - ensureAttributionsIsMutable(); - attributions_.add(builderForValue.build()); + ensureRegularSecondaryOpeningHoursIsMutable(); + regularSecondaryOpeningHours_.add(index, value); onChanged(); } else { - attributionsBuilder_.addMessage(builderForValue.build()); + regularSecondaryOpeningHoursBuilder_.addMessage(index, value); } return this; } @@ -19490,19 +24821,27 @@ public Builder addAttributions( * * *
-     * A set of data provider that must be shown with this result.
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder addAttributions( - int index, com.google.maps.places.v1.Place.Attribution.Builder builderForValue) { - if (attributionsBuilder_ == null) { - ensureAttributionsIsMutable(); - attributions_.add(index, builderForValue.build()); + public Builder addRegularSecondaryOpeningHours( + com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { + if (regularSecondaryOpeningHoursBuilder_ == null) { + ensureRegularSecondaryOpeningHoursIsMutable(); + regularSecondaryOpeningHours_.add(builderForValue.build()); onChanged(); } else { - attributionsBuilder_.addMessage(index, builderForValue.build()); + regularSecondaryOpeningHoursBuilder_.addMessage(builderForValue.build()); } return this; } @@ -19510,19 +24849,27 @@ public Builder addAttributions( * * *
-     * A set of data provider that must be shown with this result.
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder addAllAttributions( - java.lang.Iterable values) { - if (attributionsBuilder_ == null) { - ensureAttributionsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, attributions_); + public Builder addRegularSecondaryOpeningHours( + int index, com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { + if (regularSecondaryOpeningHoursBuilder_ == null) { + ensureRegularSecondaryOpeningHoursIsMutable(); + regularSecondaryOpeningHours_.add(index, builderForValue.build()); onChanged(); } else { - attributionsBuilder_.addAllMessages(values); + regularSecondaryOpeningHoursBuilder_.addMessage(index, builderForValue.build()); } return this; } @@ -19530,18 +24877,28 @@ public Builder addAllAttributions( * * *
-     * A set of data provider that must be shown with this result.
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearAttributions() { - if (attributionsBuilder_ == null) { - attributions_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00080000); + public Builder addAllRegularSecondaryOpeningHours( + java.lang.Iterable values) { + if (regularSecondaryOpeningHoursBuilder_ == null) { + ensureRegularSecondaryOpeningHoursIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, regularSecondaryOpeningHours_); onChanged(); } else { - attributionsBuilder_.clear(); + regularSecondaryOpeningHoursBuilder_.addAllMessages(values); } return this; } @@ -19549,351 +24906,287 @@ public Builder clearAttributions() { * * *
-     * A set of data provider that must be shown with this result.
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder removeAttributions(int index) { - if (attributionsBuilder_ == null) { - ensureAttributionsIsMutable(); - attributions_.remove(index); + public Builder clearRegularSecondaryOpeningHours() { + if (regularSecondaryOpeningHoursBuilder_ == null) { + regularSecondaryOpeningHours_ = java.util.Collections.emptyList(); + bitField1_ = (bitField1_ & ~0x00000080); onChanged(); } else { - attributionsBuilder_.remove(index); - } - return this; - } - /** - * - * - *
-     * A set of data provider that must be shown with this result.
-     * 
- * - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; - */ - public com.google.maps.places.v1.Place.Attribution.Builder getAttributionsBuilder(int index) { - return getAttributionsFieldBuilder().getBuilder(index); - } - /** - * - * - *
-     * A set of data provider that must be shown with this result.
-     * 
- * - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; - */ - public com.google.maps.places.v1.Place.AttributionOrBuilder getAttributionsOrBuilder( - int index) { - if (attributionsBuilder_ == null) { - return attributions_.get(index); - } else { - return attributionsBuilder_.getMessageOrBuilder(index); - } - } - /** - * - * - *
-     * A set of data provider that must be shown with this result.
-     * 
- * - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; - */ - public java.util.List - getAttributionsOrBuilderList() { - if (attributionsBuilder_ != null) { - return attributionsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(attributions_); + regularSecondaryOpeningHoursBuilder_.clear(); } + return this; } /** * * *
-     * A set of data provider that must be shown with this result.
-     * 
- * - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; - */ - public com.google.maps.places.v1.Place.Attribution.Builder addAttributionsBuilder() { - return getAttributionsFieldBuilder() - .addBuilder(com.google.maps.places.v1.Place.Attribution.getDefaultInstance()); - } - /** - * - * - *
-     * A set of data provider that must be shown with this result.
-     * 
- * - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; - */ - public com.google.maps.places.v1.Place.Attribution.Builder addAttributionsBuilder(int index) { - return getAttributionsFieldBuilder() - .addBuilder(index, com.google.maps.places.v1.Place.Attribution.getDefaultInstance()); - } - /** - * - * - *
-     * A set of data provider that must be shown with this result.
-     * 
- * - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; - */ - public java.util.List - getAttributionsBuilderList() { - return getAttributionsFieldBuilder().getBuilderList(); - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.Attribution, - com.google.maps.places.v1.Place.Attribution.Builder, - com.google.maps.places.v1.Place.AttributionOrBuilder> - getAttributionsFieldBuilder() { - if (attributionsBuilder_ == null) { - attributionsBuilder_ = - new com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.Attribution, - com.google.maps.places.v1.Place.Attribution.Builder, - com.google.maps.places.v1.Place.AttributionOrBuilder>( - attributions_, ((bitField0_ & 0x00080000) != 0), getParentForChildren(), isClean()); - attributions_ = null; - } - return attributionsBuilder_; - } - - private int userRatingCount_; - /** - * - * - *
-     * The total number of reviews (with or without text) for this place.
-     * 
- * - * int32 user_rating_count = 28; - * - * @return The userRatingCount. - */ - @java.lang.Override - public int getUserRatingCount() { - return userRatingCount_; - } - /** - * - * - *
-     * The total number of reviews (with or without text) for this place.
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * int32 user_rating_count = 28; - * - * @param value The userRatingCount to set. - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setUserRatingCount(int value) { - - userRatingCount_ = value; - bitField0_ |= 0x00100000; - onChanged(); + public Builder removeRegularSecondaryOpeningHours(int index) { + if (regularSecondaryOpeningHoursBuilder_ == null) { + ensureRegularSecondaryOpeningHoursIsMutable(); + regularSecondaryOpeningHours_.remove(index); + onChanged(); + } else { + regularSecondaryOpeningHoursBuilder_.remove(index); + } return this; } /** * * *
-     * The total number of reviews (with or without text) for this place.
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * int32 user_rating_count = 28; - * - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearUserRatingCount() { - bitField0_ = (bitField0_ & ~0x00100000); - userRatingCount_ = 0; - onChanged(); - return this; + public com.google.maps.places.v1.Place.OpeningHours.Builder + getRegularSecondaryOpeningHoursBuilder(int index) { + return getRegularSecondaryOpeningHoursFieldBuilder().getBuilder(index); } - - private java.lang.Object iconMaskBaseUri_ = ""; /** * * *
-     * A truncated URL to an v2 icon mask. User can access different icon type by
-     * appending type suffix to the end (eg, ".svg" or ".png").
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * string icon_mask_base_uri = 29; - * - * @return The iconMaskBaseUri. + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.lang.String getIconMaskBaseUri() { - java.lang.Object ref = iconMaskBaseUri_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - iconMaskBaseUri_ = s; - return s; + public com.google.maps.places.v1.Place.OpeningHoursOrBuilder + getRegularSecondaryOpeningHoursOrBuilder(int index) { + if (regularSecondaryOpeningHoursBuilder_ == null) { + return regularSecondaryOpeningHours_.get(index); } else { - return (java.lang.String) ref; + return regularSecondaryOpeningHoursBuilder_.getMessageOrBuilder(index); } } /** * * *
-     * A truncated URL to an v2 icon mask. User can access different icon type by
-     * appending type suffix to the end (eg, ".svg" or ".png").
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * string icon_mask_base_uri = 29; - * - * @return The bytes for iconMaskBaseUri. + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.protobuf.ByteString getIconMaskBaseUriBytes() { - java.lang.Object ref = iconMaskBaseUri_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - iconMaskBaseUri_ = b; - return b; + public java.util.List + getRegularSecondaryOpeningHoursOrBuilderList() { + if (regularSecondaryOpeningHoursBuilder_ != null) { + return regularSecondaryOpeningHoursBuilder_.getMessageOrBuilderList(); } else { - return (com.google.protobuf.ByteString) ref; + return java.util.Collections.unmodifiableList(regularSecondaryOpeningHours_); } } /** * * *
-     * A truncated URL to an v2 icon mask. User can access different icon type by
-     * appending type suffix to the end (eg, ".svg" or ".png").
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * string icon_mask_base_uri = 29; - * - * @param value The iconMaskBaseUri to set. - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setIconMaskBaseUri(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - iconMaskBaseUri_ = value; - bitField0_ |= 0x00200000; - onChanged(); - return this; + public com.google.maps.places.v1.Place.OpeningHours.Builder + addRegularSecondaryOpeningHoursBuilder() { + return getRegularSecondaryOpeningHoursFieldBuilder() + .addBuilder(com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance()); } /** * * *
-     * A truncated URL to an v2 icon mask. User can access different icon type by
-     * appending type suffix to the end (eg, ".svg" or ".png").
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * string icon_mask_base_uri = 29; - * - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearIconMaskBaseUri() { - iconMaskBaseUri_ = getDefaultInstance().getIconMaskBaseUri(); - bitField0_ = (bitField0_ & ~0x00200000); - onChanged(); - return this; + public com.google.maps.places.v1.Place.OpeningHours.Builder + addRegularSecondaryOpeningHoursBuilder(int index) { + return getRegularSecondaryOpeningHoursFieldBuilder() + .addBuilder(index, com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance()); } /** * * *
-     * A truncated URL to an v2 icon mask. User can access different icon type by
-     * appending type suffix to the end (eg, ".svg" or ".png").
+     * Output only. Contains an array of entries for information about regular
+     * secondary hours of a business. Secondary hours are different from a
+     * business's main hours. For example, a restaurant can specify drive through
+     * hours or delivery hours as its secondary hours. This field populates the
+     * type subfield, which draws from a predefined list of opening hours types
+     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
+     * place.
      * 
* - * string icon_mask_base_uri = 29; - * - * @param value The bytes for iconMaskBaseUri to set. - * @return This builder for chaining. + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setIconMaskBaseUriBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public java.util.List + getRegularSecondaryOpeningHoursBuilderList() { + return getRegularSecondaryOpeningHoursFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours, + com.google.maps.places.v1.Place.OpeningHours.Builder, + com.google.maps.places.v1.Place.OpeningHoursOrBuilder> + getRegularSecondaryOpeningHoursFieldBuilder() { + if (regularSecondaryOpeningHoursBuilder_ == null) { + regularSecondaryOpeningHoursBuilder_ = + new com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place.OpeningHours, + com.google.maps.places.v1.Place.OpeningHours.Builder, + com.google.maps.places.v1.Place.OpeningHoursOrBuilder>( + regularSecondaryOpeningHours_, + ((bitField1_ & 0x00000080) != 0), + getParentForChildren(), + isClean()); + regularSecondaryOpeningHours_ = null; } - checkByteStringIsUtf8(value); - iconMaskBaseUri_ = value; - bitField0_ |= 0x00200000; - onChanged(); - return this; + return regularSecondaryOpeningHoursBuilder_; } - private java.lang.Object iconBackgroundColor_ = ""; + private com.google.type.LocalizedText editorialSummary_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LocalizedText, + com.google.type.LocalizedText.Builder, + com.google.type.LocalizedTextOrBuilder> + editorialSummaryBuilder_; /** * * *
-     * Background color for icon_mask in hex format, e.g. #909CE1.
+     * Output only. Contains a summary of the place. A summary is comprised of a
+     * textual overview, and also includes the language code for these if
+     * applicable. Summary text must be presented as-is and can not be modified or
+     * altered.
      * 
* - * string icon_background_color = 30; + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The iconBackgroundColor. + * @return Whether the editorialSummary field is set. */ - public java.lang.String getIconBackgroundColor() { - java.lang.Object ref = iconBackgroundColor_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - iconBackgroundColor_ = s; - return s; - } else { - return (java.lang.String) ref; - } + public boolean hasEditorialSummary() { + return ((bitField1_ & 0x00000100) != 0); } /** * * *
-     * Background color for icon_mask in hex format, e.g. #909CE1.
+     * Output only. Contains a summary of the place. A summary is comprised of a
+     * textual overview, and also includes the language code for these if
+     * applicable. Summary text must be presented as-is and can not be modified or
+     * altered.
      * 
* - * string icon_background_color = 30; + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The bytes for iconBackgroundColor. + * @return The editorialSummary. */ - public com.google.protobuf.ByteString getIconBackgroundColorBytes() { - java.lang.Object ref = iconBackgroundColor_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - iconBackgroundColor_ = b; - return b; + public com.google.type.LocalizedText getEditorialSummary() { + if (editorialSummaryBuilder_ == null) { + return editorialSummary_ == null + ? com.google.type.LocalizedText.getDefaultInstance() + : editorialSummary_; } else { - return (com.google.protobuf.ByteString) ref; + return editorialSummaryBuilder_.getMessage(); } } /** * * *
-     * Background color for icon_mask in hex format, e.g. #909CE1.
+     * Output only. Contains a summary of the place. A summary is comprised of a
+     * textual overview, and also includes the language code for these if
+     * applicable. Summary text must be presented as-is and can not be modified or
+     * altered.
      * 
* - * string icon_background_color = 30; - * - * @param value The iconBackgroundColor to set. - * @return This builder for chaining. + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setIconBackgroundColor(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder setEditorialSummary(com.google.type.LocalizedText value) { + if (editorialSummaryBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + editorialSummary_ = value; + } else { + editorialSummaryBuilder_.setMessage(value); } - iconBackgroundColor_ = value; - bitField0_ |= 0x00400000; + bitField1_ |= 0x00000100; onChanged(); return this; } @@ -19901,16 +25194,23 @@ public Builder setIconBackgroundColor(java.lang.String value) { * * *
-     * Background color for icon_mask in hex format, e.g. #909CE1.
+     * Output only. Contains a summary of the place. A summary is comprised of a
+     * textual overview, and also includes the language code for these if
+     * applicable. Summary text must be presented as-is and can not be modified or
+     * altered.
      * 
* - * string icon_background_color = 30; - * - * @return This builder for chaining. + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearIconBackgroundColor() { - iconBackgroundColor_ = getDefaultInstance().getIconBackgroundColor(); - bitField0_ = (bitField0_ & ~0x00400000); + public Builder setEditorialSummary(com.google.type.LocalizedText.Builder builderForValue) { + if (editorialSummaryBuilder_ == null) { + editorialSummary_ = builderForValue.build(); + } else { + editorialSummaryBuilder_.setMessage(builderForValue.build()); + } + bitField1_ |= 0x00000100; onChanged(); return this; } @@ -19918,140 +25218,176 @@ public Builder clearIconBackgroundColor() { * * *
-     * Background color for icon_mask in hex format, e.g. #909CE1.
+     * Output only. Contains a summary of the place. A summary is comprised of a
+     * textual overview, and also includes the language code for these if
+     * applicable. Summary text must be presented as-is and can not be modified or
+     * altered.
      * 
* - * string icon_background_color = 30; - * - * @param value The bytes for iconBackgroundColor to set. - * @return This builder for chaining. + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setIconBackgroundColorBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeEditorialSummary(com.google.type.LocalizedText value) { + if (editorialSummaryBuilder_ == null) { + if (((bitField1_ & 0x00000100) != 0) + && editorialSummary_ != null + && editorialSummary_ != com.google.type.LocalizedText.getDefaultInstance()) { + getEditorialSummaryBuilder().mergeFrom(value); + } else { + editorialSummary_ = value; + } + } else { + editorialSummaryBuilder_.mergeFrom(value); } - checkByteStringIsUtf8(value); - iconBackgroundColor_ = value; - bitField0_ |= 0x00400000; + bitField1_ |= 0x00000100; onChanged(); return this; } - - private boolean takeout_; /** * * *
-     * Specifies if the business supports takeout.
+     * Output only. Contains a summary of the place. A summary is comprised of a
+     * textual overview, and also includes the language code for these if
+     * applicable. Summary text must be presented as-is and can not be modified or
+     * altered.
      * 
* - * optional bool takeout = 33; - * - * @return Whether the takeout field is set. + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public boolean hasTakeout() { - return ((bitField0_ & 0x00800000) != 0); + public Builder clearEditorialSummary() { + bitField1_ = (bitField1_ & ~0x00000100); + editorialSummary_ = null; + if (editorialSummaryBuilder_ != null) { + editorialSummaryBuilder_.dispose(); + editorialSummaryBuilder_ = null; + } + onChanged(); + return this; } /** * * *
-     * Specifies if the business supports takeout.
+     * Output only. Contains a summary of the place. A summary is comprised of a
+     * textual overview, and also includes the language code for these if
+     * applicable. Summary text must be presented as-is and can not be modified or
+     * altered.
      * 
* - * optional bool takeout = 33; - * - * @return The takeout. + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - @java.lang.Override - public boolean getTakeout() { - return takeout_; + public com.google.type.LocalizedText.Builder getEditorialSummaryBuilder() { + bitField1_ |= 0x00000100; + onChanged(); + return getEditorialSummaryFieldBuilder().getBuilder(); } /** * * *
-     * Specifies if the business supports takeout.
+     * Output only. Contains a summary of the place. A summary is comprised of a
+     * textual overview, and also includes the language code for these if
+     * applicable. Summary text must be presented as-is and can not be modified or
+     * altered.
      * 
* - * optional bool takeout = 33; - * - * @param value The takeout to set. - * @return This builder for chaining. + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setTakeout(boolean value) { - - takeout_ = value; - bitField0_ |= 0x00800000; - onChanged(); - return this; + public com.google.type.LocalizedTextOrBuilder getEditorialSummaryOrBuilder() { + if (editorialSummaryBuilder_ != null) { + return editorialSummaryBuilder_.getMessageOrBuilder(); + } else { + return editorialSummary_ == null + ? com.google.type.LocalizedText.getDefaultInstance() + : editorialSummary_; + } } /** * * *
-     * Specifies if the business supports takeout.
+     * Output only. Contains a summary of the place. A summary is comprised of a
+     * textual overview, and also includes the language code for these if
+     * applicable. Summary text must be presented as-is and can not be modified or
+     * altered.
      * 
* - * optional bool takeout = 33; - * - * @return This builder for chaining. + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearTakeout() { - bitField0_ = (bitField0_ & ~0x00800000); - takeout_ = false; - onChanged(); - return this; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LocalizedText, + com.google.type.LocalizedText.Builder, + com.google.type.LocalizedTextOrBuilder> + getEditorialSummaryFieldBuilder() { + if (editorialSummaryBuilder_ == null) { + editorialSummaryBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LocalizedText, + com.google.type.LocalizedText.Builder, + com.google.type.LocalizedTextOrBuilder>( + getEditorialSummary(), getParentForChildren(), isClean()); + editorialSummary_ = null; + } + return editorialSummaryBuilder_; } - private boolean delivery_; + private boolean outdoorSeating_; /** * * *
-     * Specifies if the business supports delivery.
+     * Output only. Place provides outdoor seating.
      * 
* - * optional bool delivery = 34; + * optional bool outdoor_seating = 55 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the delivery field is set. + * @return Whether the outdoorSeating field is set. */ @java.lang.Override - public boolean hasDelivery() { - return ((bitField0_ & 0x01000000) != 0); + public boolean hasOutdoorSeating() { + return ((bitField1_ & 0x00000200) != 0); } /** * * *
-     * Specifies if the business supports delivery.
+     * Output only. Place provides outdoor seating.
      * 
* - * optional bool delivery = 34; + * optional bool outdoor_seating = 55 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The delivery. + * @return The outdoorSeating. */ @java.lang.Override - public boolean getDelivery() { - return delivery_; + public boolean getOutdoorSeating() { + return outdoorSeating_; } /** * * *
-     * Specifies if the business supports delivery.
+     * Output only. Place provides outdoor seating.
      * 
* - * optional bool delivery = 34; + * optional bool outdoor_seating = 55 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The delivery to set. + * @param value The outdoorSeating to set. * @return This builder for chaining. */ - public Builder setDelivery(boolean value) { + public Builder setOutdoorSeating(boolean value) { - delivery_ = value; - bitField0_ |= 0x01000000; + outdoorSeating_ = value; + bitField1_ |= 0x00000200; onChanged(); return this; } @@ -20059,67 +25395,67 @@ public Builder setDelivery(boolean value) { * * *
-     * Specifies if the business supports delivery.
+     * Output only. Place provides outdoor seating.
      * 
* - * optional bool delivery = 34; + * optional bool outdoor_seating = 55 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ - public Builder clearDelivery() { - bitField0_ = (bitField0_ & ~0x01000000); - delivery_ = false; + public Builder clearOutdoorSeating() { + bitField1_ = (bitField1_ & ~0x00000200); + outdoorSeating_ = false; onChanged(); return this; } - private boolean dineIn_; + private boolean liveMusic_; /** * * *
-     * Specifies if the business supports indoor or outdoor seating options.
+     * Output only. Place provides live music.
      * 
* - * optional bool dine_in = 35; + * optional bool live_music = 56 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the dineIn field is set. + * @return Whether the liveMusic field is set. */ @java.lang.Override - public boolean hasDineIn() { - return ((bitField0_ & 0x02000000) != 0); + public boolean hasLiveMusic() { + return ((bitField1_ & 0x00000400) != 0); } /** * * *
-     * Specifies if the business supports indoor or outdoor seating options.
+     * Output only. Place provides live music.
      * 
* - * optional bool dine_in = 35; + * optional bool live_music = 56 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The dineIn. + * @return The liveMusic. */ @java.lang.Override - public boolean getDineIn() { - return dineIn_; + public boolean getLiveMusic() { + return liveMusic_; } /** * * *
-     * Specifies if the business supports indoor or outdoor seating options.
+     * Output only. Place provides live music.
      * 
* - * optional bool dine_in = 35; + * optional bool live_music = 56 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The dineIn to set. + * @param value The liveMusic to set. * @return This builder for chaining. */ - public Builder setDineIn(boolean value) { + public Builder setLiveMusic(boolean value) { - dineIn_ = value; - bitField0_ |= 0x02000000; + liveMusic_ = value; + bitField1_ |= 0x00000400; onChanged(); return this; } @@ -20127,67 +25463,70 @@ public Builder setDineIn(boolean value) { * * *
-     * Specifies if the business supports indoor or outdoor seating options.
+     * Output only. Place provides live music.
      * 
* - * optional bool dine_in = 35; + * optional bool live_music = 56 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ - public Builder clearDineIn() { - bitField0_ = (bitField0_ & ~0x02000000); - dineIn_ = false; + public Builder clearLiveMusic() { + bitField1_ = (bitField1_ & ~0x00000400); + liveMusic_ = false; onChanged(); return this; } - private boolean curbsidePickup_; + private boolean menuForChildren_; /** * * *
-     * Specifies if the business supports curbside pickup.
+     * Output only. Place has a children's menu.
      * 
* - * optional bool curbside_pickup = 36; + * optional bool menu_for_children = 57 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return Whether the curbsidePickup field is set. + * @return Whether the menuForChildren field is set. */ @java.lang.Override - public boolean hasCurbsidePickup() { - return ((bitField0_ & 0x04000000) != 0); + public boolean hasMenuForChildren() { + return ((bitField1_ & 0x00000800) != 0); } /** * * *
-     * Specifies if the business supports curbside pickup.
+     * Output only. Place has a children's menu.
      * 
* - * optional bool curbside_pickup = 36; + * optional bool menu_for_children = 57 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The curbsidePickup. + * @return The menuForChildren. */ @java.lang.Override - public boolean getCurbsidePickup() { - return curbsidePickup_; + public boolean getMenuForChildren() { + return menuForChildren_; } /** * * *
-     * Specifies if the business supports curbside pickup.
+     * Output only. Place has a children's menu.
      * 
* - * optional bool curbside_pickup = 36; + * optional bool menu_for_children = 57 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The curbsidePickup to set. + * @param value The menuForChildren to set. * @return This builder for chaining. */ - public Builder setCurbsidePickup(boolean value) { + public Builder setMenuForChildren(boolean value) { - curbsidePickup_ = value; - bitField0_ |= 0x04000000; + menuForChildren_ = value; + bitField1_ |= 0x00000800; onChanged(); return this; } @@ -20195,67 +25534,71 @@ public Builder setCurbsidePickup(boolean value) { * * *
-     * Specifies if the business supports curbside pickup.
+     * Output only. Place has a children's menu.
      * 
* - * optional bool curbside_pickup = 36; + * optional bool menu_for_children = 57 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return This builder for chaining. */ - public Builder clearCurbsidePickup() { - bitField0_ = (bitField0_ & ~0x04000000); - curbsidePickup_ = false; + public Builder clearMenuForChildren() { + bitField1_ = (bitField1_ & ~0x00000800); + menuForChildren_ = false; onChanged(); return this; } - private boolean wheelchairAccessibleEntrance_; + private boolean servesCocktails_; /** * * *
-     * Specifies if the place has an entrance that is wheelchair-accessible.
+     * Output only. Place serves cocktails.
      * 
* - * optional bool wheelchair_accessible_entrance = 37; + * optional bool serves_cocktails = 58 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return Whether the wheelchairAccessibleEntrance field is set. + * @return Whether the servesCocktails field is set. */ @java.lang.Override - public boolean hasWheelchairAccessibleEntrance() { - return ((bitField0_ & 0x08000000) != 0); + public boolean hasServesCocktails() { + return ((bitField1_ & 0x00001000) != 0); } /** * * *
-     * Specifies if the place has an entrance that is wheelchair-accessible.
+     * Output only. Place serves cocktails.
      * 
* - * optional bool wheelchair_accessible_entrance = 37; + * optional bool serves_cocktails = 58 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The wheelchairAccessibleEntrance. + * @return The servesCocktails. */ @java.lang.Override - public boolean getWheelchairAccessibleEntrance() { - return wheelchairAccessibleEntrance_; + public boolean getServesCocktails() { + return servesCocktails_; } /** * * *
-     * Specifies if the place has an entrance that is wheelchair-accessible.
+     * Output only. Place serves cocktails.
      * 
* - * optional bool wheelchair_accessible_entrance = 37; + * optional bool serves_cocktails = 58 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The wheelchairAccessibleEntrance to set. + * @param value The servesCocktails to set. * @return This builder for chaining. */ - public Builder setWheelchairAccessibleEntrance(boolean value) { + public Builder setServesCocktails(boolean value) { - wheelchairAccessibleEntrance_ = value; - bitField0_ |= 0x08000000; + servesCocktails_ = value; + bitField1_ |= 0x00001000; onChanged(); return this; } @@ -20263,67 +25606,68 @@ public Builder setWheelchairAccessibleEntrance(boolean value) { * * *
-     * Specifies if the place has an entrance that is wheelchair-accessible.
+     * Output only. Place serves cocktails.
      * 
* - * optional bool wheelchair_accessible_entrance = 37; + * optional bool serves_cocktails = 58 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return This builder for chaining. */ - public Builder clearWheelchairAccessibleEntrance() { - bitField0_ = (bitField0_ & ~0x08000000); - wheelchairAccessibleEntrance_ = false; + public Builder clearServesCocktails() { + bitField1_ = (bitField1_ & ~0x00001000); + servesCocktails_ = false; onChanged(); return this; } - private boolean reservable_; + private boolean servesDessert_; /** * * *
-     * Specifies if the place supports reservations.
+     * Output only. Place serves dessert.
      * 
* - * optional bool reservable = 38; + * optional bool serves_dessert = 59 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the reservable field is set. + * @return Whether the servesDessert field is set. */ @java.lang.Override - public boolean hasReservable() { - return ((bitField0_ & 0x10000000) != 0); + public boolean hasServesDessert() { + return ((bitField1_ & 0x00002000) != 0); } /** * * *
-     * Specifies if the place supports reservations.
+     * Output only. Place serves dessert.
      * 
* - * optional bool reservable = 38; + * optional bool serves_dessert = 59 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The reservable. + * @return The servesDessert. */ @java.lang.Override - public boolean getReservable() { - return reservable_; + public boolean getServesDessert() { + return servesDessert_; } /** * * *
-     * Specifies if the place supports reservations.
+     * Output only. Place serves dessert.
      * 
* - * optional bool reservable = 38; + * optional bool serves_dessert = 59 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The reservable to set. + * @param value The servesDessert to set. * @return This builder for chaining. */ - public Builder setReservable(boolean value) { + public Builder setServesDessert(boolean value) { - reservable_ = value; - bitField0_ |= 0x10000000; + servesDessert_ = value; + bitField1_ |= 0x00002000; onChanged(); return this; } @@ -20331,67 +25675,67 @@ public Builder setReservable(boolean value) { * * *
-     * Specifies if the place supports reservations.
+     * Output only. Place serves dessert.
      * 
* - * optional bool reservable = 38; + * optional bool serves_dessert = 59 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ - public Builder clearReservable() { - bitField0_ = (bitField0_ & ~0x10000000); - reservable_ = false; + public Builder clearServesDessert() { + bitField1_ = (bitField1_ & ~0x00002000); + servesDessert_ = false; onChanged(); return this; } - private boolean servesBreakfast_; + private boolean servesCoffee_; /** * * *
-     * Specifies if the place serves breakfast.
+     * Output only. Place serves coffee.
      * 
* - * optional bool serves_breakfast = 39; + * optional bool serves_coffee = 60 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the servesBreakfast field is set. + * @return Whether the servesCoffee field is set. */ @java.lang.Override - public boolean hasServesBreakfast() { - return ((bitField0_ & 0x20000000) != 0); + public boolean hasServesCoffee() { + return ((bitField1_ & 0x00004000) != 0); } /** * * *
-     * Specifies if the place serves breakfast.
+     * Output only. Place serves coffee.
      * 
* - * optional bool serves_breakfast = 39; + * optional bool serves_coffee = 60 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The servesBreakfast. + * @return The servesCoffee. */ @java.lang.Override - public boolean getServesBreakfast() { - return servesBreakfast_; + public boolean getServesCoffee() { + return servesCoffee_; } /** * * *
-     * Specifies if the place serves breakfast.
+     * Output only. Place serves coffee.
      * 
* - * optional bool serves_breakfast = 39; + * optional bool serves_coffee = 60 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The servesBreakfast to set. + * @param value The servesCoffee to set. * @return This builder for chaining. */ - public Builder setServesBreakfast(boolean value) { + public Builder setServesCoffee(boolean value) { - servesBreakfast_ = value; - bitField0_ |= 0x20000000; + servesCoffee_ = value; + bitField1_ |= 0x00004000; onChanged(); return this; } @@ -20399,67 +25743,70 @@ public Builder setServesBreakfast(boolean value) { * * *
-     * Specifies if the place serves breakfast.
+     * Output only. Place serves coffee.
      * 
* - * optional bool serves_breakfast = 39; + * optional bool serves_coffee = 60 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ - public Builder clearServesBreakfast() { - bitField0_ = (bitField0_ & ~0x20000000); - servesBreakfast_ = false; + public Builder clearServesCoffee() { + bitField1_ = (bitField1_ & ~0x00004000); + servesCoffee_ = false; onChanged(); return this; } - private boolean servesLunch_; + private boolean goodForChildren_; /** * * *
-     * Specifies if the place serves lunch.
+     * Output only. Place is good for children.
      * 
* - * optional bool serves_lunch = 40; + * optional bool good_for_children = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return Whether the servesLunch field is set. + * @return Whether the goodForChildren field is set. */ @java.lang.Override - public boolean hasServesLunch() { - return ((bitField0_ & 0x40000000) != 0); + public boolean hasGoodForChildren() { + return ((bitField1_ & 0x00008000) != 0); } /** * * *
-     * Specifies if the place serves lunch.
+     * Output only. Place is good for children.
      * 
* - * optional bool serves_lunch = 40; + * optional bool good_for_children = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The servesLunch. + * @return The goodForChildren. */ @java.lang.Override - public boolean getServesLunch() { - return servesLunch_; + public boolean getGoodForChildren() { + return goodForChildren_; } /** * * *
-     * Specifies if the place serves lunch.
+     * Output only. Place is good for children.
      * 
* - * optional bool serves_lunch = 40; + * optional bool good_for_children = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The servesLunch to set. + * @param value The goodForChildren to set. * @return This builder for chaining. */ - public Builder setServesLunch(boolean value) { + public Builder setGoodForChildren(boolean value) { - servesLunch_ = value; - bitField0_ |= 0x40000000; + goodForChildren_ = value; + bitField1_ |= 0x00008000; onChanged(); return this; } @@ -20467,67 +25814,68 @@ public Builder setServesLunch(boolean value) { * * *
-     * Specifies if the place serves lunch.
+     * Output only. Place is good for children.
      * 
* - * optional bool serves_lunch = 40; + * optional bool good_for_children = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return This builder for chaining. */ - public Builder clearServesLunch() { - bitField0_ = (bitField0_ & ~0x40000000); - servesLunch_ = false; + public Builder clearGoodForChildren() { + bitField1_ = (bitField1_ & ~0x00008000); + goodForChildren_ = false; onChanged(); return this; } - private boolean servesDinner_; + private boolean allowsDogs_; /** * * *
-     * Specifies if the place serves dinner.
+     * Output only. Place allows dogs.
      * 
* - * optional bool serves_dinner = 41; + * optional bool allows_dogs = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the servesDinner field is set. + * @return Whether the allowsDogs field is set. */ @java.lang.Override - public boolean hasServesDinner() { - return ((bitField0_ & 0x80000000) != 0); + public boolean hasAllowsDogs() { + return ((bitField1_ & 0x00010000) != 0); } /** * * *
-     * Specifies if the place serves dinner.
+     * Output only. Place allows dogs.
      * 
* - * optional bool serves_dinner = 41; + * optional bool allows_dogs = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The servesDinner. + * @return The allowsDogs. */ @java.lang.Override - public boolean getServesDinner() { - return servesDinner_; + public boolean getAllowsDogs() { + return allowsDogs_; } /** * * *
-     * Specifies if the place serves dinner.
+     * Output only. Place allows dogs.
      * 
* - * optional bool serves_dinner = 41; + * optional bool allows_dogs = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The servesDinner to set. + * @param value The allowsDogs to set. * @return This builder for chaining. */ - public Builder setServesDinner(boolean value) { + public Builder setAllowsDogs(boolean value) { - servesDinner_ = value; - bitField0_ |= 0x80000000; + allowsDogs_ = value; + bitField1_ |= 0x00010000; onChanged(); return this; } @@ -20535,67 +25883,67 @@ public Builder setServesDinner(boolean value) { * * *
-     * Specifies if the place serves dinner.
+     * Output only. Place allows dogs.
      * 
* - * optional bool serves_dinner = 41; + * optional bool allows_dogs = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ - public Builder clearServesDinner() { - bitField0_ = (bitField0_ & ~0x80000000); - servesDinner_ = false; + public Builder clearAllowsDogs() { + bitField1_ = (bitField1_ & ~0x00010000); + allowsDogs_ = false; onChanged(); return this; } - private boolean servesBeer_; + private boolean restroom_; /** * * *
-     * Specifies if the place serves beer.
+     * Output only. Place has restroom.
      * 
* - * optional bool serves_beer = 42; + * optional bool restroom = 64 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the servesBeer field is set. + * @return Whether the restroom field is set. */ @java.lang.Override - public boolean hasServesBeer() { - return ((bitField1_ & 0x00000001) != 0); + public boolean hasRestroom() { + return ((bitField1_ & 0x00020000) != 0); } /** * * *
-     * Specifies if the place serves beer.
+     * Output only. Place has restroom.
      * 
* - * optional bool serves_beer = 42; + * optional bool restroom = 64 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The servesBeer. + * @return The restroom. */ @java.lang.Override - public boolean getServesBeer() { - return servesBeer_; + public boolean getRestroom() { + return restroom_; } /** * * *
-     * Specifies if the place serves beer.
+     * Output only. Place has restroom.
      * 
* - * optional bool serves_beer = 42; + * optional bool restroom = 64 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The servesBeer to set. + * @param value The restroom to set. * @return This builder for chaining. */ - public Builder setServesBeer(boolean value) { + public Builder setRestroom(boolean value) { - servesBeer_ = value; - bitField1_ |= 0x00000001; + restroom_ = value; + bitField1_ |= 0x00020000; onChanged(); return this; } @@ -20603,67 +25951,67 @@ public Builder setServesBeer(boolean value) { * * *
-     * Specifies if the place serves beer.
+     * Output only. Place has restroom.
      * 
* - * optional bool serves_beer = 42; + * optional bool restroom = 64 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ - public Builder clearServesBeer() { - bitField1_ = (bitField1_ & ~0x00000001); - servesBeer_ = false; + public Builder clearRestroom() { + bitField1_ = (bitField1_ & ~0x00020000); + restroom_ = false; onChanged(); return this; } - private boolean servesWine_; + private boolean goodForGroups_; /** * * *
-     * Specifies if the place serves wine.
+     * Output only. Place accommodates groups.
      * 
* - * optional bool serves_wine = 43; + * optional bool good_for_groups = 65 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the servesWine field is set. + * @return Whether the goodForGroups field is set. */ @java.lang.Override - public boolean hasServesWine() { - return ((bitField1_ & 0x00000002) != 0); + public boolean hasGoodForGroups() { + return ((bitField1_ & 0x00040000) != 0); } /** * * *
-     * Specifies if the place serves wine.
+     * Output only. Place accommodates groups.
      * 
* - * optional bool serves_wine = 43; + * optional bool good_for_groups = 65 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The servesWine. + * @return The goodForGroups. */ @java.lang.Override - public boolean getServesWine() { - return servesWine_; + public boolean getGoodForGroups() { + return goodForGroups_; } /** * * *
-     * Specifies if the place serves wine.
+     * Output only. Place accommodates groups.
      * 
* - * optional bool serves_wine = 43; + * optional bool good_for_groups = 65 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @param value The servesWine to set. + * @param value The goodForGroups to set. * @return This builder for chaining. */ - public Builder setServesWine(boolean value) { + public Builder setGoodForGroups(boolean value) { - servesWine_ = value; - bitField1_ |= 0x00000002; + goodForGroups_ = value; + bitField1_ |= 0x00040000; onChanged(); return this; } @@ -20671,67 +26019,73 @@ public Builder setServesWine(boolean value) { * * *
-     * Specifies if the place serves wine.
+     * Output only. Place accommodates groups.
      * 
* - * optional bool serves_wine = 43; + * optional bool good_for_groups = 65 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ - public Builder clearServesWine() { - bitField1_ = (bitField1_ & ~0x00000002); - servesWine_ = false; + public Builder clearGoodForGroups() { + bitField1_ = (bitField1_ & ~0x00040000); + goodForGroups_ = false; onChanged(); return this; } - private boolean servesBrunch_; + private boolean goodForWatchingSports_; /** * * *
-     * Specifies if the place serves brunch.
+     * Output only. Place is suitable for watching sports.
      * 
* - * optional bool serves_brunch = 44; + * + * optional bool good_for_watching_sports = 66 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return Whether the servesBrunch field is set. + * @return Whether the goodForWatchingSports field is set. */ @java.lang.Override - public boolean hasServesBrunch() { - return ((bitField1_ & 0x00000004) != 0); + public boolean hasGoodForWatchingSports() { + return ((bitField1_ & 0x00080000) != 0); } /** * * *
-     * Specifies if the place serves brunch.
+     * Output only. Place is suitable for watching sports.
      * 
* - * optional bool serves_brunch = 44; + * + * optional bool good_for_watching_sports = 66 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The servesBrunch. + * @return The goodForWatchingSports. */ @java.lang.Override - public boolean getServesBrunch() { - return servesBrunch_; + public boolean getGoodForWatchingSports() { + return goodForWatchingSports_; } /** * * *
-     * Specifies if the place serves brunch.
+     * Output only. Place is suitable for watching sports.
      * 
* - * optional bool serves_brunch = 44; + * + * optional bool good_for_watching_sports = 66 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The servesBrunch to set. + * @param value The goodForWatchingSports to set. * @return This builder for chaining. */ - public Builder setServesBrunch(boolean value) { + public Builder setGoodForWatchingSports(boolean value) { - servesBrunch_ = value; - bitField1_ |= 0x00000004; + goodForWatchingSports_ = value; + bitField1_ |= 0x00080000; onChanged(); return this; } @@ -20739,156 +26093,236 @@ public Builder setServesBrunch(boolean value) { * * *
-     * Specifies if the place serves brunch.
+     * Output only. Place is suitable for watching sports.
      * 
* - * optional bool serves_brunch = 44; + * + * optional bool good_for_watching_sports = 66 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return This builder for chaining. */ - public Builder clearServesBrunch() { - bitField1_ = (bitField1_ & ~0x00000004); - servesBrunch_ = false; + public Builder clearGoodForWatchingSports() { + bitField1_ = (bitField1_ & ~0x00080000); + goodForWatchingSports_ = false; onChanged(); return this; } - private boolean servesVegetarianFood_; + private com.google.maps.places.v1.Place.PaymentOptions paymentOptions_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.PaymentOptions, + com.google.maps.places.v1.Place.PaymentOptions.Builder, + com.google.maps.places.v1.Place.PaymentOptionsOrBuilder> + paymentOptionsBuilder_; /** + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * - *
-     * Specifies if the place serves vegetarian food.
-     * 
- * - * optional bool serves_vegetarian_food = 45; - * - * @return Whether the servesVegetarianFood field is set. + * @return Whether the paymentOptions field is set. */ - @java.lang.Override - public boolean hasServesVegetarianFood() { - return ((bitField1_ & 0x00000008) != 0); + public boolean hasPaymentOptions() { + return ((bitField1_ & 0x00100000) != 0); } /** + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * - *
-     * Specifies if the place serves vegetarian food.
-     * 
- * - * optional bool serves_vegetarian_food = 45; - * - * @return The servesVegetarianFood. + * @return The paymentOptions. */ - @java.lang.Override - public boolean getServesVegetarianFood() { - return servesVegetarianFood_; + public com.google.maps.places.v1.Place.PaymentOptions getPaymentOptions() { + if (paymentOptionsBuilder_ == null) { + return paymentOptions_ == null + ? com.google.maps.places.v1.Place.PaymentOptions.getDefaultInstance() + : paymentOptions_; + } else { + return paymentOptionsBuilder_.getMessage(); + } } /** - * - * - *
-     * Specifies if the place serves vegetarian food.
-     * 
- * - * optional bool serves_vegetarian_food = 45; - * - * @param value The servesVegetarianFood to set. - * @return This builder for chaining. + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setServesVegetarianFood(boolean value) { - - servesVegetarianFood_ = value; - bitField1_ |= 0x00000008; + public Builder setPaymentOptions(com.google.maps.places.v1.Place.PaymentOptions value) { + if (paymentOptionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + paymentOptions_ = value; + } else { + paymentOptionsBuilder_.setMessage(value); + } + bitField1_ |= 0x00100000; + onChanged(); + return this; + } + /** + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setPaymentOptions( + com.google.maps.places.v1.Place.PaymentOptions.Builder builderForValue) { + if (paymentOptionsBuilder_ == null) { + paymentOptions_ = builderForValue.build(); + } else { + paymentOptionsBuilder_.setMessage(builderForValue.build()); + } + bitField1_ |= 0x00100000; + onChanged(); + return this; + } + /** + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergePaymentOptions(com.google.maps.places.v1.Place.PaymentOptions value) { + if (paymentOptionsBuilder_ == null) { + if (((bitField1_ & 0x00100000) != 0) + && paymentOptions_ != null + && paymentOptions_ + != com.google.maps.places.v1.Place.PaymentOptions.getDefaultInstance()) { + getPaymentOptionsBuilder().mergeFrom(value); + } else { + paymentOptions_ = value; + } + } else { + paymentOptionsBuilder_.mergeFrom(value); + } + bitField1_ |= 0x00100000; onChanged(); return this; } /** - * - * - *
-     * Specifies if the place serves vegetarian food.
-     * 
- * - * optional bool serves_vegetarian_food = 45; - * - * @return This builder for chaining. + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearServesVegetarianFood() { - bitField1_ = (bitField1_ & ~0x00000008); - servesVegetarianFood_ = false; + public Builder clearPaymentOptions() { + bitField1_ = (bitField1_ & ~0x00100000); + paymentOptions_ = null; + if (paymentOptionsBuilder_ != null) { + paymentOptionsBuilder_.dispose(); + paymentOptionsBuilder_ = null; + } onChanged(); return this; } + /** + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.PaymentOptions.Builder getPaymentOptionsBuilder() { + bitField1_ |= 0x00100000; + onChanged(); + return getPaymentOptionsFieldBuilder().getBuilder(); + } + /** + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.Place.PaymentOptionsOrBuilder getPaymentOptionsOrBuilder() { + if (paymentOptionsBuilder_ != null) { + return paymentOptionsBuilder_.getMessageOrBuilder(); + } else { + return paymentOptions_ == null + ? com.google.maps.places.v1.Place.PaymentOptions.getDefaultInstance() + : paymentOptions_; + } + } + /** + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.PaymentOptions, + com.google.maps.places.v1.Place.PaymentOptions.Builder, + com.google.maps.places.v1.Place.PaymentOptionsOrBuilder> + getPaymentOptionsFieldBuilder() { + if (paymentOptionsBuilder_ == null) { + paymentOptionsBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.PaymentOptions, + com.google.maps.places.v1.Place.PaymentOptions.Builder, + com.google.maps.places.v1.Place.PaymentOptionsOrBuilder>( + getPaymentOptions(), getParentForChildren(), isClean()); + paymentOptions_ = null; + } + return paymentOptionsBuilder_; + } - private com.google.maps.places.v1.Place.OpeningHours currentOpeningHours_; + private com.google.maps.places.v1.Place.ParkingOptions parkingOptions_; private com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours, - com.google.maps.places.v1.Place.OpeningHours.Builder, - com.google.maps.places.v1.Place.OpeningHoursOrBuilder> - currentOpeningHoursBuilder_; + com.google.maps.places.v1.Place.ParkingOptions, + com.google.maps.places.v1.Place.ParkingOptions.Builder, + com.google.maps.places.v1.Place.ParkingOptionsOrBuilder> + parkingOptionsBuilder_; /** * * *
-     * The hours of operation for the next seven days (including today). The time
-     * period starts at midnight on the date of the request and ends at 11:59 pm
-     * six days later. This field includes the special_days subfield of all hours,
-     * set for dates that have exceptional hours.
+     * Output only. Options of parking provided by the place.
      * 
* - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return Whether the currentOpeningHours field is set. + * @return Whether the parkingOptions field is set. */ - public boolean hasCurrentOpeningHours() { - return ((bitField1_ & 0x00000010) != 0); + public boolean hasParkingOptions() { + return ((bitField1_ & 0x00200000) != 0); } /** * * *
-     * The hours of operation for the next seven days (including today). The time
-     * period starts at midnight on the date of the request and ends at 11:59 pm
-     * six days later. This field includes the special_days subfield of all hours,
-     * set for dates that have exceptional hours.
+     * Output only. Options of parking provided by the place.
      * 
* - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The currentOpeningHours. + * @return The parkingOptions. */ - public com.google.maps.places.v1.Place.OpeningHours getCurrentOpeningHours() { - if (currentOpeningHoursBuilder_ == null) { - return currentOpeningHours_ == null - ? com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance() - : currentOpeningHours_; + public com.google.maps.places.v1.Place.ParkingOptions getParkingOptions() { + if (parkingOptionsBuilder_ == null) { + return parkingOptions_ == null + ? com.google.maps.places.v1.Place.ParkingOptions.getDefaultInstance() + : parkingOptions_; } else { - return currentOpeningHoursBuilder_.getMessage(); + return parkingOptionsBuilder_.getMessage(); } } /** * * *
-     * The hours of operation for the next seven days (including today). The time
-     * period starts at midnight on the date of the request and ends at 11:59 pm
-     * six days later. This field includes the special_days subfield of all hours,
-     * set for dates that have exceptional hours.
+     * Output only. Options of parking provided by the place.
      * 
* - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setCurrentOpeningHours(com.google.maps.places.v1.Place.OpeningHours value) { - if (currentOpeningHoursBuilder_ == null) { + public Builder setParkingOptions(com.google.maps.places.v1.Place.ParkingOptions value) { + if (parkingOptionsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - currentOpeningHours_ = value; + parkingOptions_ = value; } else { - currentOpeningHoursBuilder_.setMessage(value); + parkingOptionsBuilder_.setMessage(value); } - bitField1_ |= 0x00000010; + bitField1_ |= 0x00200000; onChanged(); return this; } @@ -20896,22 +26330,21 @@ public Builder setCurrentOpeningHours(com.google.maps.places.v1.Place.OpeningHou * * *
-     * The hours of operation for the next seven days (including today). The time
-     * period starts at midnight on the date of the request and ends at 11:59 pm
-     * six days later. This field includes the special_days subfield of all hours,
-     * set for dates that have exceptional hours.
+     * Output only. Options of parking provided by the place.
      * 
* - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setCurrentOpeningHours( - com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { - if (currentOpeningHoursBuilder_ == null) { - currentOpeningHours_ = builderForValue.build(); + public Builder setParkingOptions( + com.google.maps.places.v1.Place.ParkingOptions.Builder builderForValue) { + if (parkingOptionsBuilder_ == null) { + parkingOptions_ = builderForValue.build(); } else { - currentOpeningHoursBuilder_.setMessage(builderForValue.build()); + parkingOptionsBuilder_.setMessage(builderForValue.build()); } - bitField1_ |= 0x00000010; + bitField1_ |= 0x00200000; onChanged(); return this; } @@ -20919,28 +26352,27 @@ public Builder setCurrentOpeningHours( * * *
-     * The hours of operation for the next seven days (including today). The time
-     * period starts at midnight on the date of the request and ends at 11:59 pm
-     * six days later. This field includes the special_days subfield of all hours,
-     * set for dates that have exceptional hours.
+     * Output only. Options of parking provided by the place.
      * 
* - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder mergeCurrentOpeningHours(com.google.maps.places.v1.Place.OpeningHours value) { - if (currentOpeningHoursBuilder_ == null) { - if (((bitField1_ & 0x00000010) != 0) - && currentOpeningHours_ != null - && currentOpeningHours_ - != com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance()) { - getCurrentOpeningHoursBuilder().mergeFrom(value); + public Builder mergeParkingOptions(com.google.maps.places.v1.Place.ParkingOptions value) { + if (parkingOptionsBuilder_ == null) { + if (((bitField1_ & 0x00200000) != 0) + && parkingOptions_ != null + && parkingOptions_ + != com.google.maps.places.v1.Place.ParkingOptions.getDefaultInstance()) { + getParkingOptionsBuilder().mergeFrom(value); } else { - currentOpeningHours_ = value; + parkingOptions_ = value; } } else { - currentOpeningHoursBuilder_.mergeFrom(value); + parkingOptionsBuilder_.mergeFrom(value); } - bitField1_ |= 0x00000010; + bitField1_ |= 0x00200000; onChanged(); return this; } @@ -20948,20 +26380,19 @@ public Builder mergeCurrentOpeningHours(com.google.maps.places.v1.Place.OpeningH * * *
-     * The hours of operation for the next seven days (including today). The time
-     * period starts at midnight on the date of the request and ends at 11:59 pm
-     * six days later. This field includes the special_days subfield of all hours,
-     * set for dates that have exceptional hours.
+     * Output only. Options of parking provided by the place.
      * 
* - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearCurrentOpeningHours() { - bitField1_ = (bitField1_ & ~0x00000010); - currentOpeningHours_ = null; - if (currentOpeningHoursBuilder_ != null) { - currentOpeningHoursBuilder_.dispose(); - currentOpeningHoursBuilder_ = null; + public Builder clearParkingOptions() { + bitField1_ = (bitField1_ & ~0x00200000); + parkingOptions_ = null; + if (parkingOptionsBuilder_ != null) { + parkingOptionsBuilder_.dispose(); + parkingOptionsBuilder_ = null; } onChanged(); return this; @@ -20970,192 +26401,160 @@ public Builder clearCurrentOpeningHours() { * * *
-     * The hours of operation for the next seven days (including today). The time
-     * period starts at midnight on the date of the request and ends at 11:59 pm
-     * six days later. This field includes the special_days subfield of all hours,
-     * set for dates that have exceptional hours.
+     * Output only. Options of parking provided by the place.
      * 
* - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.OpeningHours.Builder getCurrentOpeningHoursBuilder() { - bitField1_ |= 0x00000010; + public com.google.maps.places.v1.Place.ParkingOptions.Builder getParkingOptionsBuilder() { + bitField1_ |= 0x00200000; onChanged(); - return getCurrentOpeningHoursFieldBuilder().getBuilder(); + return getParkingOptionsFieldBuilder().getBuilder(); } /** * * *
-     * The hours of operation for the next seven days (including today). The time
-     * period starts at midnight on the date of the request and ends at 11:59 pm
-     * six days later. This field includes the special_days subfield of all hours,
-     * set for dates that have exceptional hours.
+     * Output only. Options of parking provided by the place.
      * 
* - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.OpeningHoursOrBuilder getCurrentOpeningHoursOrBuilder() { - if (currentOpeningHoursBuilder_ != null) { - return currentOpeningHoursBuilder_.getMessageOrBuilder(); + public com.google.maps.places.v1.Place.ParkingOptionsOrBuilder getParkingOptionsOrBuilder() { + if (parkingOptionsBuilder_ != null) { + return parkingOptionsBuilder_.getMessageOrBuilder(); } else { - return currentOpeningHours_ == null - ? com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance() - : currentOpeningHours_; + return parkingOptions_ == null + ? com.google.maps.places.v1.Place.ParkingOptions.getDefaultInstance() + : parkingOptions_; } } /** * * *
-     * The hours of operation for the next seven days (including today). The time
-     * period starts at midnight on the date of the request and ends at 11:59 pm
-     * six days later. This field includes the special_days subfield of all hours,
-     * set for dates that have exceptional hours.
+     * Output only. Options of parking provided by the place.
      * 
* - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ private com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours, - com.google.maps.places.v1.Place.OpeningHours.Builder, - com.google.maps.places.v1.Place.OpeningHoursOrBuilder> - getCurrentOpeningHoursFieldBuilder() { - if (currentOpeningHoursBuilder_ == null) { - currentOpeningHoursBuilder_ = + com.google.maps.places.v1.Place.ParkingOptions, + com.google.maps.places.v1.Place.ParkingOptions.Builder, + com.google.maps.places.v1.Place.ParkingOptionsOrBuilder> + getParkingOptionsFieldBuilder() { + if (parkingOptionsBuilder_ == null) { + parkingOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours, - com.google.maps.places.v1.Place.OpeningHours.Builder, - com.google.maps.places.v1.Place.OpeningHoursOrBuilder>( - getCurrentOpeningHours(), getParentForChildren(), isClean()); - currentOpeningHours_ = null; + com.google.maps.places.v1.Place.ParkingOptions, + com.google.maps.places.v1.Place.ParkingOptions.Builder, + com.google.maps.places.v1.Place.ParkingOptionsOrBuilder>( + getParkingOptions(), getParentForChildren(), isClean()); + parkingOptions_ = null; } - return currentOpeningHoursBuilder_; + return parkingOptionsBuilder_; } - private java.util.List - currentSecondaryOpeningHours_ = java.util.Collections.emptyList(); + private java.util.List subDestinations_ = + java.util.Collections.emptyList(); - private void ensureCurrentSecondaryOpeningHoursIsMutable() { - if (!((bitField1_ & 0x00000020) != 0)) { - currentSecondaryOpeningHours_ = - new java.util.ArrayList( - currentSecondaryOpeningHours_); - bitField1_ |= 0x00000020; + private void ensureSubDestinationsIsMutable() { + if (!((bitField1_ & 0x00400000) != 0)) { + subDestinations_ = + new java.util.ArrayList( + subDestinations_); + bitField1_ |= 0x00400000; } } private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours, - com.google.maps.places.v1.Place.OpeningHours.Builder, - com.google.maps.places.v1.Place.OpeningHoursOrBuilder> - currentSecondaryOpeningHoursBuilder_; + com.google.maps.places.v1.Place.SubDestination, + com.google.maps.places.v1.Place.SubDestination.Builder, + com.google.maps.places.v1.Place.SubDestinationOrBuilder> + subDestinationsBuilder_; /** * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public java.util.List - getCurrentSecondaryOpeningHoursList() { - if (currentSecondaryOpeningHoursBuilder_ == null) { - return java.util.Collections.unmodifiableList(currentSecondaryOpeningHours_); + public java.util.List getSubDestinationsList() { + if (subDestinationsBuilder_ == null) { + return java.util.Collections.unmodifiableList(subDestinations_); } else { - return currentSecondaryOpeningHoursBuilder_.getMessageList(); + return subDestinationsBuilder_.getMessageList(); } } /** * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public int getCurrentSecondaryOpeningHoursCount() { - if (currentSecondaryOpeningHoursBuilder_ == null) { - return currentSecondaryOpeningHours_.size(); + public int getSubDestinationsCount() { + if (subDestinationsBuilder_ == null) { + return subDestinations_.size(); } else { - return currentSecondaryOpeningHoursBuilder_.getCount(); + return subDestinationsBuilder_.getCount(); } } /** * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.maps.places.v1.Place.OpeningHours getCurrentSecondaryOpeningHours(int index) { - if (currentSecondaryOpeningHoursBuilder_ == null) { - return currentSecondaryOpeningHours_.get(index); + public com.google.maps.places.v1.Place.SubDestination getSubDestinations(int index) { + if (subDestinationsBuilder_ == null) { + return subDestinations_.get(index); } else { - return currentSecondaryOpeningHoursBuilder_.getMessage(index); + return subDestinationsBuilder_.getMessage(index); } } /** * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder setCurrentSecondaryOpeningHours( - int index, com.google.maps.places.v1.Place.OpeningHours value) { - if (currentSecondaryOpeningHoursBuilder_ == null) { + public Builder setSubDestinations( + int index, com.google.maps.places.v1.Place.SubDestination value) { + if (subDestinationsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureCurrentSecondaryOpeningHoursIsMutable(); - currentSecondaryOpeningHours_.set(index, value); + ensureSubDestinationsIsMutable(); + subDestinations_.set(index, value); onChanged(); } else { - currentSecondaryOpeningHoursBuilder_.setMessage(index, value); + subDestinationsBuilder_.setMessage(index, value); } return this; } @@ -21163,28 +26562,21 @@ public Builder setCurrentSecondaryOpeningHours( * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder setCurrentSecondaryOpeningHours( - int index, com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { - if (currentSecondaryOpeningHoursBuilder_ == null) { - ensureCurrentSecondaryOpeningHoursIsMutable(); - currentSecondaryOpeningHours_.set(index, builderForValue.build()); + public Builder setSubDestinations( + int index, com.google.maps.places.v1.Place.SubDestination.Builder builderForValue) { + if (subDestinationsBuilder_ == null) { + ensureSubDestinationsIsMutable(); + subDestinations_.set(index, builderForValue.build()); onChanged(); } else { - currentSecondaryOpeningHoursBuilder_.setMessage(index, builderForValue.build()); + subDestinationsBuilder_.setMessage(index, builderForValue.build()); } return this; } @@ -21192,31 +26584,23 @@ public Builder setCurrentSecondaryOpeningHours( * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addCurrentSecondaryOpeningHours( - com.google.maps.places.v1.Place.OpeningHours value) { - if (currentSecondaryOpeningHoursBuilder_ == null) { + public Builder addSubDestinations(com.google.maps.places.v1.Place.SubDestination value) { + if (subDestinationsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureCurrentSecondaryOpeningHoursIsMutable(); - currentSecondaryOpeningHours_.add(value); + ensureSubDestinationsIsMutable(); + subDestinations_.add(value); onChanged(); } else { - currentSecondaryOpeningHoursBuilder_.addMessage(value); + subDestinationsBuilder_.addMessage(value); } return this; } @@ -21224,31 +26608,24 @@ public Builder addCurrentSecondaryOpeningHours( * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addCurrentSecondaryOpeningHours( - int index, com.google.maps.places.v1.Place.OpeningHours value) { - if (currentSecondaryOpeningHoursBuilder_ == null) { + public Builder addSubDestinations( + int index, com.google.maps.places.v1.Place.SubDestination value) { + if (subDestinationsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureCurrentSecondaryOpeningHoursIsMutable(); - currentSecondaryOpeningHours_.add(index, value); + ensureSubDestinationsIsMutable(); + subDestinations_.add(index, value); onChanged(); } else { - currentSecondaryOpeningHoursBuilder_.addMessage(index, value); + subDestinationsBuilder_.addMessage(index, value); } return this; } @@ -21256,28 +26633,21 @@ public Builder addCurrentSecondaryOpeningHours( * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addCurrentSecondaryOpeningHours( - com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { - if (currentSecondaryOpeningHoursBuilder_ == null) { - ensureCurrentSecondaryOpeningHoursIsMutable(); - currentSecondaryOpeningHours_.add(builderForValue.build()); + public Builder addSubDestinations( + com.google.maps.places.v1.Place.SubDestination.Builder builderForValue) { + if (subDestinationsBuilder_ == null) { + ensureSubDestinationsIsMutable(); + subDestinations_.add(builderForValue.build()); onChanged(); } else { - currentSecondaryOpeningHoursBuilder_.addMessage(builderForValue.build()); + subDestinationsBuilder_.addMessage(builderForValue.build()); } return this; } @@ -21285,28 +26655,21 @@ public Builder addCurrentSecondaryOpeningHours( * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addCurrentSecondaryOpeningHours( - int index, com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { - if (currentSecondaryOpeningHoursBuilder_ == null) { - ensureCurrentSecondaryOpeningHoursIsMutable(); - currentSecondaryOpeningHours_.add(index, builderForValue.build()); + public Builder addSubDestinations( + int index, com.google.maps.places.v1.Place.SubDestination.Builder builderForValue) { + if (subDestinationsBuilder_ == null) { + ensureSubDestinationsIsMutable(); + subDestinations_.add(index, builderForValue.build()); onChanged(); } else { - currentSecondaryOpeningHoursBuilder_.addMessage(index, builderForValue.build()); + subDestinationsBuilder_.addMessage(index, builderForValue.build()); } return this; } @@ -21314,29 +26677,21 @@ public Builder addCurrentSecondaryOpeningHours( * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder addAllCurrentSecondaryOpeningHours( - java.lang.Iterable values) { - if (currentSecondaryOpeningHoursBuilder_ == null) { - ensureCurrentSecondaryOpeningHoursIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, currentSecondaryOpeningHours_); + public Builder addAllSubDestinations( + java.lang.Iterable values) { + if (subDestinationsBuilder_ == null) { + ensureSubDestinationsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, subDestinations_); onChanged(); } else { - currentSecondaryOpeningHoursBuilder_.addAllMessages(values); + subDestinationsBuilder_.addAllMessages(values); } return this; } @@ -21344,27 +26699,20 @@ public Builder addAllCurrentSecondaryOpeningHours( * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder clearCurrentSecondaryOpeningHours() { - if (currentSecondaryOpeningHoursBuilder_ == null) { - currentSecondaryOpeningHours_ = java.util.Collections.emptyList(); - bitField1_ = (bitField1_ & ~0x00000020); + public Builder clearSubDestinations() { + if (subDestinationsBuilder_ == null) { + subDestinations_ = java.util.Collections.emptyList(); + bitField1_ = (bitField1_ & ~0x00400000); onChanged(); } else { - currentSecondaryOpeningHoursBuilder_.clear(); + subDestinationsBuilder_.clear(); } return this; } @@ -21372,27 +26720,20 @@ public Builder clearCurrentSecondaryOpeningHours() { * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public Builder removeCurrentSecondaryOpeningHours(int index) { - if (currentSecondaryOpeningHoursBuilder_ == null) { - ensureCurrentSecondaryOpeningHoursIsMutable(); - currentSecondaryOpeningHours_.remove(index); + public Builder removeSubDestinations(int index) { + if (subDestinationsBuilder_ == null) { + ensureSubDestinationsIsMutable(); + subDestinations_.remove(index); onChanged(); } else { - currentSecondaryOpeningHoursBuilder_.remove(index); + subDestinationsBuilder_.remove(index); } return this; } @@ -21400,681 +26741,604 @@ public Builder removeCurrentSecondaryOpeningHours(int index) { * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.maps.places.v1.Place.OpeningHours.Builder - getCurrentSecondaryOpeningHoursBuilder(int index) { - return getCurrentSecondaryOpeningHoursFieldBuilder().getBuilder(index); + public com.google.maps.places.v1.Place.SubDestination.Builder getSubDestinationsBuilder( + int index) { + return getSubDestinationsFieldBuilder().getBuilder(index); } /** - * - * - *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     *
+     *
+     * 
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.maps.places.v1.Place.OpeningHoursOrBuilder - getCurrentSecondaryOpeningHoursOrBuilder(int index) { - if (currentSecondaryOpeningHoursBuilder_ == null) { - return currentSecondaryOpeningHours_.get(index); + public com.google.maps.places.v1.Place.SubDestinationOrBuilder getSubDestinationsOrBuilder( + int index) { + if (subDestinationsBuilder_ == null) { + return subDestinations_.get(index); } else { - return currentSecondaryOpeningHoursBuilder_.getMessageOrBuilder(index); + return subDestinationsBuilder_.getMessageOrBuilder(index); } } /** * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public java.util.List - getCurrentSecondaryOpeningHoursOrBuilderList() { - if (currentSecondaryOpeningHoursBuilder_ != null) { - return currentSecondaryOpeningHoursBuilder_.getMessageOrBuilderList(); + public java.util.List + getSubDestinationsOrBuilderList() { + if (subDestinationsBuilder_ != null) { + return subDestinationsBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(currentSecondaryOpeningHours_); + return java.util.Collections.unmodifiableList(subDestinations_); } } /** * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.maps.places.v1.Place.OpeningHours.Builder - addCurrentSecondaryOpeningHoursBuilder() { - return getCurrentSecondaryOpeningHoursFieldBuilder() - .addBuilder(com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance()); + public com.google.maps.places.v1.Place.SubDestination.Builder addSubDestinationsBuilder() { + return getSubDestinationsFieldBuilder() + .addBuilder(com.google.maps.places.v1.Place.SubDestination.getDefaultInstance()); } /** * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public com.google.maps.places.v1.Place.OpeningHours.Builder - addCurrentSecondaryOpeningHoursBuilder(int index) { - return getCurrentSecondaryOpeningHoursFieldBuilder() - .addBuilder(index, com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance()); + public com.google.maps.places.v1.Place.SubDestination.Builder addSubDestinationsBuilder( + int index) { + return getSubDestinationsFieldBuilder() + .addBuilder(index, com.google.maps.places.v1.Place.SubDestination.getDefaultInstance()); } /** * * *
-     * Contains an array of entries for the next seven days including information
-     * about secondary hours of a business. Secondary hours are different from a
-     * business's main hours. For example, a restaurant can specify drive through
-     * hours or delivery hours as its secondary hours. This field populates the
-     * type subfield, which draws from a predefined list of opening hours types
-     * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-     * place. This field includes the special_days subfield of all hours, set for
-     * dates that have exceptional hours.
+     * Output only. A list of sub destinations related to the place.
      * 
* * - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - public java.util.List - getCurrentSecondaryOpeningHoursBuilderList() { - return getCurrentSecondaryOpeningHoursFieldBuilder().getBuilderList(); + public java.util.List + getSubDestinationsBuilderList() { + return getSubDestinationsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours, - com.google.maps.places.v1.Place.OpeningHours.Builder, - com.google.maps.places.v1.Place.OpeningHoursOrBuilder> - getCurrentSecondaryOpeningHoursFieldBuilder() { - if (currentSecondaryOpeningHoursBuilder_ == null) { - currentSecondaryOpeningHoursBuilder_ = + com.google.maps.places.v1.Place.SubDestination, + com.google.maps.places.v1.Place.SubDestination.Builder, + com.google.maps.places.v1.Place.SubDestinationOrBuilder> + getSubDestinationsFieldBuilder() { + if (subDestinationsBuilder_ == null) { + subDestinationsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours, - com.google.maps.places.v1.Place.OpeningHours.Builder, - com.google.maps.places.v1.Place.OpeningHoursOrBuilder>( - currentSecondaryOpeningHours_, - ((bitField1_ & 0x00000020) != 0), + com.google.maps.places.v1.Place.SubDestination, + com.google.maps.places.v1.Place.SubDestination.Builder, + com.google.maps.places.v1.Place.SubDestinationOrBuilder>( + subDestinations_, + ((bitField1_ & 0x00400000) != 0), getParentForChildren(), isClean()); - currentSecondaryOpeningHours_ = null; - } - return currentSecondaryOpeningHoursBuilder_; - } - - private java.util.List secondaryOpeningHours_ = - java.util.Collections.emptyList(); - - private void ensureSecondaryOpeningHoursIsMutable() { - if (!((bitField1_ & 0x00000040) != 0)) { - secondaryOpeningHours_ = - new java.util.ArrayList( - secondaryOpeningHours_); - bitField1_ |= 0x00000040; + subDestinations_ = null; } + return subDestinationsBuilder_; } - private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours, - com.google.maps.places.v1.Place.OpeningHours.Builder, - com.google.maps.places.v1.Place.OpeningHoursOrBuilder> - secondaryOpeningHoursBuilder_; - + private com.google.maps.places.v1.Place.AccessibilityOptions accessibilityOptions_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.AccessibilityOptions, + com.google.maps.places.v1.Place.AccessibilityOptions.Builder, + com.google.maps.places.v1.Place.AccessibilityOptionsOrBuilder> + accessibilityOptionsBuilder_; /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. Information about the accessibility options a place offers.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the accessibilityOptions field is set. */ - public java.util.List - getSecondaryOpeningHoursList() { - if (secondaryOpeningHoursBuilder_ == null) { - return java.util.Collections.unmodifiableList(secondaryOpeningHours_); - } else { - return secondaryOpeningHoursBuilder_.getMessageList(); - } + public boolean hasAccessibilityOptions() { + return ((bitField1_ & 0x00800000) != 0); } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. Information about the accessibility options a place offers.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The accessibilityOptions. */ - public int getSecondaryOpeningHoursCount() { - if (secondaryOpeningHoursBuilder_ == null) { - return secondaryOpeningHours_.size(); + public com.google.maps.places.v1.Place.AccessibilityOptions getAccessibilityOptions() { + if (accessibilityOptionsBuilder_ == null) { + return accessibilityOptions_ == null + ? com.google.maps.places.v1.Place.AccessibilityOptions.getDefaultInstance() + : accessibilityOptions_; } else { - return secondaryOpeningHoursBuilder_.getCount(); + return accessibilityOptionsBuilder_.getMessage(); } } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. Information about the accessibility options a place offers.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.OpeningHours getSecondaryOpeningHours(int index) { - if (secondaryOpeningHoursBuilder_ == null) { - return secondaryOpeningHours_.get(index); + public Builder setAccessibilityOptions( + com.google.maps.places.v1.Place.AccessibilityOptions value) { + if (accessibilityOptionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + accessibilityOptions_ = value; } else { - return secondaryOpeningHoursBuilder_.getMessage(index); + accessibilityOptionsBuilder_.setMessage(value); } + bitField1_ |= 0x00800000; + onChanged(); + return this; } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. Information about the accessibility options a place offers.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setSecondaryOpeningHours( - int index, com.google.maps.places.v1.Place.OpeningHours value) { - if (secondaryOpeningHoursBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSecondaryOpeningHoursIsMutable(); - secondaryOpeningHours_.set(index, value); - onChanged(); + public Builder setAccessibilityOptions( + com.google.maps.places.v1.Place.AccessibilityOptions.Builder builderForValue) { + if (accessibilityOptionsBuilder_ == null) { + accessibilityOptions_ = builderForValue.build(); } else { - secondaryOpeningHoursBuilder_.setMessage(index, value); + accessibilityOptionsBuilder_.setMessage(builderForValue.build()); } + bitField1_ |= 0x00800000; + onChanged(); return this; } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. Information about the accessibility options a place offers.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setSecondaryOpeningHours( - int index, com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { - if (secondaryOpeningHoursBuilder_ == null) { - ensureSecondaryOpeningHoursIsMutable(); - secondaryOpeningHours_.set(index, builderForValue.build()); - onChanged(); + public Builder mergeAccessibilityOptions( + com.google.maps.places.v1.Place.AccessibilityOptions value) { + if (accessibilityOptionsBuilder_ == null) { + if (((bitField1_ & 0x00800000) != 0) + && accessibilityOptions_ != null + && accessibilityOptions_ + != com.google.maps.places.v1.Place.AccessibilityOptions.getDefaultInstance()) { + getAccessibilityOptionsBuilder().mergeFrom(value); + } else { + accessibilityOptions_ = value; + } } else { - secondaryOpeningHoursBuilder_.setMessage(index, builderForValue.build()); + accessibilityOptionsBuilder_.mergeFrom(value); } + bitField1_ |= 0x00800000; + onChanged(); return this; } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. Information about the accessibility options a place offers.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder addSecondaryOpeningHours(com.google.maps.places.v1.Place.OpeningHours value) { - if (secondaryOpeningHoursBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSecondaryOpeningHoursIsMutable(); - secondaryOpeningHours_.add(value); - onChanged(); - } else { - secondaryOpeningHoursBuilder_.addMessage(value); + public Builder clearAccessibilityOptions() { + bitField1_ = (bitField1_ & ~0x00800000); + accessibilityOptions_ = null; + if (accessibilityOptionsBuilder_ != null) { + accessibilityOptionsBuilder_.dispose(); + accessibilityOptionsBuilder_ = null; } + onChanged(); return this; } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. Information about the accessibility options a place offers.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder addSecondaryOpeningHours( - int index, com.google.maps.places.v1.Place.OpeningHours value) { - if (secondaryOpeningHoursBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSecondaryOpeningHoursIsMutable(); - secondaryOpeningHours_.add(index, value); - onChanged(); - } else { - secondaryOpeningHoursBuilder_.addMessage(index, value); - } - return this; + public com.google.maps.places.v1.Place.AccessibilityOptions.Builder + getAccessibilityOptionsBuilder() { + bitField1_ |= 0x00800000; + onChanged(); + return getAccessibilityOptionsFieldBuilder().getBuilder(); } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. Information about the accessibility options a place offers.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder addSecondaryOpeningHours( - com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { - if (secondaryOpeningHoursBuilder_ == null) { - ensureSecondaryOpeningHoursIsMutable(); - secondaryOpeningHours_.add(builderForValue.build()); - onChanged(); + public com.google.maps.places.v1.Place.AccessibilityOptionsOrBuilder + getAccessibilityOptionsOrBuilder() { + if (accessibilityOptionsBuilder_ != null) { + return accessibilityOptionsBuilder_.getMessageOrBuilder(); } else { - secondaryOpeningHoursBuilder_.addMessage(builderForValue.build()); + return accessibilityOptions_ == null + ? com.google.maps.places.v1.Place.AccessibilityOptions.getDefaultInstance() + : accessibilityOptions_; } - return this; } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. Information about the accessibility options a place offers.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder addSecondaryOpeningHours( - int index, com.google.maps.places.v1.Place.OpeningHours.Builder builderForValue) { - if (secondaryOpeningHoursBuilder_ == null) { - ensureSecondaryOpeningHoursIsMutable(); - secondaryOpeningHours_.add(index, builderForValue.build()); - onChanged(); - } else { - secondaryOpeningHoursBuilder_.addMessage(index, builderForValue.build()); + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.AccessibilityOptions, + com.google.maps.places.v1.Place.AccessibilityOptions.Builder, + com.google.maps.places.v1.Place.AccessibilityOptionsOrBuilder> + getAccessibilityOptionsFieldBuilder() { + if (accessibilityOptionsBuilder_ == null) { + accessibilityOptionsBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Place.AccessibilityOptions, + com.google.maps.places.v1.Place.AccessibilityOptions.Builder, + com.google.maps.places.v1.Place.AccessibilityOptionsOrBuilder>( + getAccessibilityOptions(), getParentForChildren(), isClean()); + accessibilityOptions_ = null; } - return this; + return accessibilityOptionsBuilder_; } + + private com.google.maps.places.v1.FuelOptions fuelOptions_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.FuelOptions, + com.google.maps.places.v1.FuelOptions.Builder, + com.google.maps.places.v1.FuelOptionsOrBuilder> + fuelOptionsBuilder_; /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. The most recent information about fuel options in a gas
+     * station. This information is updated regularly.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the fuelOptions field is set. */ - public Builder addAllSecondaryOpeningHours( - java.lang.Iterable values) { - if (secondaryOpeningHoursBuilder_ == null) { - ensureSecondaryOpeningHoursIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, secondaryOpeningHours_); - onChanged(); - } else { - secondaryOpeningHoursBuilder_.addAllMessages(values); - } - return this; + public boolean hasFuelOptions() { + return ((bitField1_ & 0x01000000) != 0); } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. The most recent information about fuel options in a gas
+     * station. This information is updated regularly.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The fuelOptions. */ - public Builder clearSecondaryOpeningHours() { - if (secondaryOpeningHoursBuilder_ == null) { - secondaryOpeningHours_ = java.util.Collections.emptyList(); - bitField1_ = (bitField1_ & ~0x00000040); - onChanged(); + public com.google.maps.places.v1.FuelOptions getFuelOptions() { + if (fuelOptionsBuilder_ == null) { + return fuelOptions_ == null + ? com.google.maps.places.v1.FuelOptions.getDefaultInstance() + : fuelOptions_; } else { - secondaryOpeningHoursBuilder_.clear(); + return fuelOptionsBuilder_.getMessage(); } - return this; } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. The most recent information about fuel options in a gas
+     * station. This information is updated regularly.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder removeSecondaryOpeningHours(int index) { - if (secondaryOpeningHoursBuilder_ == null) { - ensureSecondaryOpeningHoursIsMutable(); - secondaryOpeningHours_.remove(index); - onChanged(); + public Builder setFuelOptions(com.google.maps.places.v1.FuelOptions value) { + if (fuelOptionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + fuelOptions_ = value; } else { - secondaryOpeningHoursBuilder_.remove(index); + fuelOptionsBuilder_.setMessage(value); } + bitField1_ |= 0x01000000; + onChanged(); return this; } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. The most recent information about fuel options in a gas
+     * station. This information is updated regularly.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.OpeningHours.Builder getSecondaryOpeningHoursBuilder( - int index) { - return getSecondaryOpeningHoursFieldBuilder().getBuilder(index); + public Builder setFuelOptions(com.google.maps.places.v1.FuelOptions.Builder builderForValue) { + if (fuelOptionsBuilder_ == null) { + fuelOptions_ = builderForValue.build(); + } else { + fuelOptionsBuilder_.setMessage(builderForValue.build()); + } + bitField1_ |= 0x01000000; + onChanged(); + return this; } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. The most recent information about fuel options in a gas
+     * station. This information is updated regularly.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.OpeningHoursOrBuilder getSecondaryOpeningHoursOrBuilder( - int index) { - if (secondaryOpeningHoursBuilder_ == null) { - return secondaryOpeningHours_.get(index); + public Builder mergeFuelOptions(com.google.maps.places.v1.FuelOptions value) { + if (fuelOptionsBuilder_ == null) { + if (((bitField1_ & 0x01000000) != 0) + && fuelOptions_ != null + && fuelOptions_ != com.google.maps.places.v1.FuelOptions.getDefaultInstance()) { + getFuelOptionsBuilder().mergeFrom(value); + } else { + fuelOptions_ = value; + } } else { - return secondaryOpeningHoursBuilder_.getMessageOrBuilder(index); + fuelOptionsBuilder_.mergeFrom(value); } + bitField1_ |= 0x01000000; + onChanged(); + return this; } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. The most recent information about fuel options in a gas
+     * station. This information is updated regularly.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.util.List - getSecondaryOpeningHoursOrBuilderList() { - if (secondaryOpeningHoursBuilder_ != null) { - return secondaryOpeningHoursBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(secondaryOpeningHours_); + public Builder clearFuelOptions() { + bitField1_ = (bitField1_ & ~0x01000000); + fuelOptions_ = null; + if (fuelOptionsBuilder_ != null) { + fuelOptionsBuilder_.dispose(); + fuelOptionsBuilder_ = null; } + onChanged(); + return this; } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. The most recent information about fuel options in a gas
+     * station. This information is updated regularly.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.OpeningHours.Builder addSecondaryOpeningHoursBuilder() { - return getSecondaryOpeningHoursFieldBuilder() - .addBuilder(com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance()); + public com.google.maps.places.v1.FuelOptions.Builder getFuelOptionsBuilder() { + bitField1_ |= 0x01000000; + onChanged(); + return getFuelOptionsFieldBuilder().getBuilder(); } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. The most recent information about fuel options in a gas
+     * station. This information is updated regularly.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.OpeningHours.Builder addSecondaryOpeningHoursBuilder( - int index) { - return getSecondaryOpeningHoursFieldBuilder() - .addBuilder(index, com.google.maps.places.v1.Place.OpeningHours.getDefaultInstance()); + public com.google.maps.places.v1.FuelOptionsOrBuilder getFuelOptionsOrBuilder() { + if (fuelOptionsBuilder_ != null) { + return fuelOptionsBuilder_.getMessageOrBuilder(); + } else { + return fuelOptions_ == null + ? com.google.maps.places.v1.FuelOptions.getDefaultInstance() + : fuelOptions_; + } } /** * * *
-     * Contains an array of entries for information about regular secondary hours
-     * of a business. Secondary hours are different from a business's main hours.
-     * For example, a restaurant can specify drive through hours or delivery hours
-     * as its secondary hours. This field populates the type subfield, which draws
-     * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-     * PICKUP, or TAKEOUT) based on the types of the place.
+     * Output only. The most recent information about fuel options in a gas
+     * station. This information is updated regularly.
      * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public java.util.List - getSecondaryOpeningHoursBuilderList() { - return getSecondaryOpeningHoursFieldBuilder().getBuilderList(); - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours, - com.google.maps.places.v1.Place.OpeningHours.Builder, - com.google.maps.places.v1.Place.OpeningHoursOrBuilder> - getSecondaryOpeningHoursFieldBuilder() { - if (secondaryOpeningHoursBuilder_ == null) { - secondaryOpeningHoursBuilder_ = - new com.google.protobuf.RepeatedFieldBuilderV3< - com.google.maps.places.v1.Place.OpeningHours, - com.google.maps.places.v1.Place.OpeningHours.Builder, - com.google.maps.places.v1.Place.OpeningHoursOrBuilder>( - secondaryOpeningHours_, - ((bitField1_ & 0x00000040) != 0), - getParentForChildren(), - isClean()); - secondaryOpeningHours_ = null; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.FuelOptions, + com.google.maps.places.v1.FuelOptions.Builder, + com.google.maps.places.v1.FuelOptionsOrBuilder> + getFuelOptionsFieldBuilder() { + if (fuelOptionsBuilder_ == null) { + fuelOptionsBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.FuelOptions, + com.google.maps.places.v1.FuelOptions.Builder, + com.google.maps.places.v1.FuelOptionsOrBuilder>( + getFuelOptions(), getParentForChildren(), isClean()); + fuelOptions_ = null; } - return secondaryOpeningHoursBuilder_; + return fuelOptionsBuilder_; } - private com.google.maps.places.v1.Place.EditorialSummary editorialSummary_; + private com.google.maps.places.v1.EVChargeOptions evChargeOptions_; private com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.EditorialSummary, - com.google.maps.places.v1.Place.EditorialSummary.Builder, - com.google.maps.places.v1.Place.EditorialSummaryOrBuilder> - editorialSummaryBuilder_; + com.google.maps.places.v1.EVChargeOptions, + com.google.maps.places.v1.EVChargeOptions.Builder, + com.google.maps.places.v1.EVChargeOptionsOrBuilder> + evChargeOptionsBuilder_; /** * * *
-     * Contains a summary of the place. A summary is comprised of a textual
-     * overview, and also includes the language code for these if applicable.
-     * Summary text must be presented as-is and can not be modified or altered.
+     * Output only. Information of ev charging options.
      * 
* - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return Whether the editorialSummary field is set. + * @return Whether the evChargeOptions field is set. */ - public boolean hasEditorialSummary() { - return ((bitField1_ & 0x00000080) != 0); + public boolean hasEvChargeOptions() { + return ((bitField1_ & 0x02000000) != 0); } /** * * *
-     * Contains a summary of the place. A summary is comprised of a textual
-     * overview, and also includes the language code for these if applicable.
-     * Summary text must be presented as-is and can not be modified or altered.
+     * Output only. Information of ev charging options.
      * 
* - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The editorialSummary. + * @return The evChargeOptions. */ - public com.google.maps.places.v1.Place.EditorialSummary getEditorialSummary() { - if (editorialSummaryBuilder_ == null) { - return editorialSummary_ == null - ? com.google.maps.places.v1.Place.EditorialSummary.getDefaultInstance() - : editorialSummary_; + public com.google.maps.places.v1.EVChargeOptions getEvChargeOptions() { + if (evChargeOptionsBuilder_ == null) { + return evChargeOptions_ == null + ? com.google.maps.places.v1.EVChargeOptions.getDefaultInstance() + : evChargeOptions_; } else { - return editorialSummaryBuilder_.getMessage(); + return evChargeOptionsBuilder_.getMessage(); } } /** * * *
-     * Contains a summary of the place. A summary is comprised of a textual
-     * overview, and also includes the language code for these if applicable.
-     * Summary text must be presented as-is and can not be modified or altered.
+     * Output only. Information of ev charging options.
      * 
* - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setEditorialSummary(com.google.maps.places.v1.Place.EditorialSummary value) { - if (editorialSummaryBuilder_ == null) { + public Builder setEvChargeOptions(com.google.maps.places.v1.EVChargeOptions value) { + if (evChargeOptionsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - editorialSummary_ = value; + evChargeOptions_ = value; } else { - editorialSummaryBuilder_.setMessage(value); + evChargeOptionsBuilder_.setMessage(value); } - bitField1_ |= 0x00000080; + bitField1_ |= 0x02000000; onChanged(); return this; } @@ -22082,21 +27346,21 @@ public Builder setEditorialSummary(com.google.maps.places.v1.Place.EditorialSumm * * *
-     * Contains a summary of the place. A summary is comprised of a textual
-     * overview, and also includes the language code for these if applicable.
-     * Summary text must be presented as-is and can not be modified or altered.
+     * Output only. Information of ev charging options.
      * 
* - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder setEditorialSummary( - com.google.maps.places.v1.Place.EditorialSummary.Builder builderForValue) { - if (editorialSummaryBuilder_ == null) { - editorialSummary_ = builderForValue.build(); + public Builder setEvChargeOptions( + com.google.maps.places.v1.EVChargeOptions.Builder builderForValue) { + if (evChargeOptionsBuilder_ == null) { + evChargeOptions_ = builderForValue.build(); } else { - editorialSummaryBuilder_.setMessage(builderForValue.build()); + evChargeOptionsBuilder_.setMessage(builderForValue.build()); } - bitField1_ |= 0x00000080; + bitField1_ |= 0x02000000; onChanged(); return this; } @@ -22104,27 +27368,26 @@ public Builder setEditorialSummary( * * *
-     * Contains a summary of the place. A summary is comprised of a textual
-     * overview, and also includes the language code for these if applicable.
-     * Summary text must be presented as-is and can not be modified or altered.
+     * Output only. Information of ev charging options.
      * 
* - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder mergeEditorialSummary(com.google.maps.places.v1.Place.EditorialSummary value) { - if (editorialSummaryBuilder_ == null) { - if (((bitField1_ & 0x00000080) != 0) - && editorialSummary_ != null - && editorialSummary_ - != com.google.maps.places.v1.Place.EditorialSummary.getDefaultInstance()) { - getEditorialSummaryBuilder().mergeFrom(value); + public Builder mergeEvChargeOptions(com.google.maps.places.v1.EVChargeOptions value) { + if (evChargeOptionsBuilder_ == null) { + if (((bitField1_ & 0x02000000) != 0) + && evChargeOptions_ != null + && evChargeOptions_ != com.google.maps.places.v1.EVChargeOptions.getDefaultInstance()) { + getEvChargeOptionsBuilder().mergeFrom(value); } else { - editorialSummary_ = value; + evChargeOptions_ = value; } } else { - editorialSummaryBuilder_.mergeFrom(value); + evChargeOptionsBuilder_.mergeFrom(value); } - bitField1_ |= 0x00000080; + bitField1_ |= 0x02000000; onChanged(); return this; } @@ -22132,19 +27395,19 @@ public Builder mergeEditorialSummary(com.google.maps.places.v1.Place.EditorialSu * * *
-     * Contains a summary of the place. A summary is comprised of a textual
-     * overview, and also includes the language code for these if applicable.
-     * Summary text must be presented as-is and can not be modified or altered.
+     * Output only. Information of ev charging options.
      * 
* - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public Builder clearEditorialSummary() { - bitField1_ = (bitField1_ & ~0x00000080); - editorialSummary_ = null; - if (editorialSummaryBuilder_ != null) { - editorialSummaryBuilder_.dispose(); - editorialSummaryBuilder_ = null; + public Builder clearEvChargeOptions() { + bitField1_ = (bitField1_ & ~0x02000000); + evChargeOptions_ = null; + if (evChargeOptionsBuilder_ != null) { + evChargeOptionsBuilder_.dispose(); + evChargeOptionsBuilder_ = null; } onChanged(); return this; @@ -22153,65 +27416,64 @@ public Builder clearEditorialSummary() { * * *
-     * Contains a summary of the place. A summary is comprised of a textual
-     * overview, and also includes the language code for these if applicable.
-     * Summary text must be presented as-is and can not be modified or altered.
+     * Output only. Information of ev charging options.
      * 
* - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.EditorialSummary.Builder getEditorialSummaryBuilder() { - bitField1_ |= 0x00000080; + public com.google.maps.places.v1.EVChargeOptions.Builder getEvChargeOptionsBuilder() { + bitField1_ |= 0x02000000; onChanged(); - return getEditorialSummaryFieldBuilder().getBuilder(); + return getEvChargeOptionsFieldBuilder().getBuilder(); } /** * * *
-     * Contains a summary of the place. A summary is comprised of a textual
-     * overview, and also includes the language code for these if applicable.
-     * Summary text must be presented as-is and can not be modified or altered.
+     * Output only. Information of ev charging options.
      * 
* - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - public com.google.maps.places.v1.Place.EditorialSummaryOrBuilder - getEditorialSummaryOrBuilder() { - if (editorialSummaryBuilder_ != null) { - return editorialSummaryBuilder_.getMessageOrBuilder(); + public com.google.maps.places.v1.EVChargeOptionsOrBuilder getEvChargeOptionsOrBuilder() { + if (evChargeOptionsBuilder_ != null) { + return evChargeOptionsBuilder_.getMessageOrBuilder(); } else { - return editorialSummary_ == null - ? com.google.maps.places.v1.Place.EditorialSummary.getDefaultInstance() - : editorialSummary_; + return evChargeOptions_ == null + ? com.google.maps.places.v1.EVChargeOptions.getDefaultInstance() + : evChargeOptions_; } } /** * * *
-     * Contains a summary of the place. A summary is comprised of a textual
-     * overview, and also includes the language code for these if applicable.
-     * Summary text must be presented as-is and can not be modified or altered.
+     * Output only. Information of ev charging options.
      * 
* - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ private com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.EditorialSummary, - com.google.maps.places.v1.Place.EditorialSummary.Builder, - com.google.maps.places.v1.Place.EditorialSummaryOrBuilder> - getEditorialSummaryFieldBuilder() { - if (editorialSummaryBuilder_ == null) { - editorialSummaryBuilder_ = + com.google.maps.places.v1.EVChargeOptions, + com.google.maps.places.v1.EVChargeOptions.Builder, + com.google.maps.places.v1.EVChargeOptionsOrBuilder> + getEvChargeOptionsFieldBuilder() { + if (evChargeOptionsBuilder_ == null) { + evChargeOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Place.EditorialSummary, - com.google.maps.places.v1.Place.EditorialSummary.Builder, - com.google.maps.places.v1.Place.EditorialSummaryOrBuilder>( - getEditorialSummary(), getParentForChildren(), isClean()); - editorialSummary_ = null; + com.google.maps.places.v1.EVChargeOptions, + com.google.maps.places.v1.EVChargeOptions.Builder, + com.google.maps.places.v1.EVChargeOptionsOrBuilder>( + getEvChargeOptions(), getParentForChildren(), isClean()); + evChargeOptions_ = null; } - return editorialSummaryBuilder_; + return evChargeOptionsBuilder_; } @java.lang.Override diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlaceName.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlaceName.java new file mode 100644 index 000000000000..a092a83a4f4c --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlaceName.java @@ -0,0 +1,168 @@ +/* + * Copyright 2023 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.maps.places.v1; + +import com.google.api.pathtemplate.PathTemplate; +import com.google.api.resourcenames.ResourceName; +import com.google.common.base.Preconditions; +import com.google.common.collect.ImmutableMap; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import javax.annotation.Generated; + +// AUTO-GENERATED DOCUMENTATION AND CLASS. +@Generated("by gapic-generator-java") +public class PlaceName implements ResourceName { + private static final PathTemplate PLACE_ID = + PathTemplate.createWithoutUrlEncoding("places/{place_id}"); + private volatile Map fieldValuesMap; + private final String placeId; + + @Deprecated + protected PlaceName() { + placeId = null; + } + + private PlaceName(Builder builder) { + placeId = Preconditions.checkNotNull(builder.getPlaceId()); + } + + public String getPlaceId() { + return placeId; + } + + public static Builder newBuilder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder(this); + } + + public static PlaceName of(String placeId) { + return newBuilder().setPlaceId(placeId).build(); + } + + public static String format(String placeId) { + return newBuilder().setPlaceId(placeId).build().toString(); + } + + public static PlaceName parse(String formattedString) { + if (formattedString.isEmpty()) { + return null; + } + Map matchMap = + PLACE_ID.validatedMatch( + formattedString, "PlaceName.parse: formattedString not in valid format"); + return of(matchMap.get("place_id")); + } + + public static List parseList(List formattedStrings) { + List list = new ArrayList<>(formattedStrings.size()); + for (String formattedString : formattedStrings) { + list.add(parse(formattedString)); + } + return list; + } + + public static List toStringList(List values) { + List list = new ArrayList<>(values.size()); + for (PlaceName value : values) { + if (value == null) { + list.add(""); + } else { + list.add(value.toString()); + } + } + return list; + } + + public static boolean isParsableFrom(String formattedString) { + return PLACE_ID.matches(formattedString); + } + + @Override + public Map getFieldValuesMap() { + if (fieldValuesMap == null) { + synchronized (this) { + if (fieldValuesMap == null) { + ImmutableMap.Builder fieldMapBuilder = ImmutableMap.builder(); + if (placeId != null) { + fieldMapBuilder.put("place_id", placeId); + } + fieldValuesMap = fieldMapBuilder.build(); + } + } + } + return fieldValuesMap; + } + + public String getFieldValue(String fieldName) { + return getFieldValuesMap().get(fieldName); + } + + @Override + public String toString() { + return PLACE_ID.instantiate("place_id", placeId); + } + + @Override + public boolean equals(Object o) { + if (o == this) { + return true; + } + if (o != null && getClass() == o.getClass()) { + PlaceName that = ((PlaceName) o); + return Objects.equals(this.placeId, that.placeId); + } + return false; + } + + @Override + public int hashCode() { + int h = 1; + h *= 1000003; + h ^= Objects.hashCode(placeId); + return h; + } + + /** Builder for places/{place_id}. */ + public static class Builder { + private String placeId; + + protected Builder() {} + + public String getPlaceId() { + return placeId; + } + + public Builder setPlaceId(String placeId) { + this.placeId = placeId; + return this; + } + + private Builder(PlaceName placeName) { + this.placeId = placeName.placeId; + } + + public PlaceName build() { + return new PlaceName(this); + } + } +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlaceOrBuilder.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlaceOrBuilder.java index d850e6136f8f..c260c2ce0da7 100644 --- a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlaceOrBuilder.java +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlaceOrBuilder.java @@ -27,10 +27,37 @@ public interface PlaceOrBuilder * * *
-   * Required. The unique identifier of a place.
+   * Output only. An ID representing this place which may be used to look up
+   * this place again (a.k.a. the API "resource" name: places/<place_id>).
    * 
* - * string id = 2 [(.google.api.field_behavior) = REQUIRED]; + * string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The name. + */ + java.lang.String getName(); + /** + * + * + *
+   * Output only. An ID representing this place which may be used to look up
+   * this place again (a.k.a. the API "resource" name: places/<place_id>).
+   * 
+ * + * string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for name. + */ + com.google.protobuf.ByteString getNameBytes(); + + /** + * + * + *
+   * Output only. The unique identifier of a place.
+   * 
+ * + * string id = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The id. */ @@ -39,10 +66,10 @@ public interface PlaceOrBuilder * * *
-   * Required. The unique identifier of a place.
+   * Output only. The unique identifier of a place.
    * 
* - * string id = 2 [(.google.api.field_behavior) = REQUIRED]; + * string id = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for id. */ @@ -52,11 +79,14 @@ public interface PlaceOrBuilder * * *
-   * The localized name of the place, suitable as a short human-readable
-   * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
+   * Output only. The localized name of the place, suitable as a short
+   * human-readable description. For example, "Google Sydney", "Starbucks",
+   * "Pyrmont", etc.
    * 
* - * .google.type.LocalizedText display_name = 31; + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return Whether the displayName field is set. */ @@ -65,11 +95,14 @@ public interface PlaceOrBuilder * * *
-   * The localized name of the place, suitable as a short human-readable
-   * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
+   * Output only. The localized name of the place, suitable as a short
+   * human-readable description. For example, "Google Sydney", "Starbucks",
+   * "Pyrmont", etc.
    * 
* - * .google.type.LocalizedText display_name = 31; + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The displayName. */ @@ -78,11 +111,14 @@ public interface PlaceOrBuilder * * *
-   * The localized name of the place, suitable as a short human-readable
-   * description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
+   * Output only. The localized name of the place, suitable as a short
+   * human-readable description. For example, "Google Sydney", "Starbucks",
+   * "Pyrmont", etc.
    * 
* - * .google.type.LocalizedText display_name = 31; + * + * .google.type.LocalizedText display_name = 31 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ com.google.type.LocalizedTextOrBuilder getDisplayNameOrBuilder(); @@ -90,11 +126,11 @@ public interface PlaceOrBuilder * * *
-   * A set of type tags for this result. For example, "political" and
-   * "locality".
+   * Output only. A set of type tags for this result. For example, "political"
+   * and "locality".
    * 
* - * repeated string types = 5; + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return A list containing the types. */ @@ -103,11 +139,11 @@ public interface PlaceOrBuilder * * *
-   * A set of type tags for this result. For example, "political" and
-   * "locality".
+   * Output only. A set of type tags for this result. For example, "political"
+   * and "locality".
    * 
* - * repeated string types = 5; + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The count of types. */ @@ -116,11 +152,11 @@ public interface PlaceOrBuilder * * *
-   * A set of type tags for this result. For example, "political" and
-   * "locality".
+   * Output only. A set of type tags for this result. For example, "political"
+   * and "locality".
    * 
* - * repeated string types = 5; + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param index The index of the element to return. * @return The types at the given index. @@ -130,11 +166,11 @@ public interface PlaceOrBuilder * * *
-   * A set of type tags for this result. For example, "political" and
-   * "locality".
+   * Output only. A set of type tags for this result. For example, "political"
+   * and "locality".
    * 
* - * repeated string types = 5; + * repeated string types = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param index The index of the value to return. * @return The bytes of the types at the given index. @@ -145,10 +181,11 @@ public interface PlaceOrBuilder * * *
-   * A human-readable phone number for the place, in national format.
+   * Output only. A human-readable phone number for the place, in national
+   * format.
    * 
* - * string national_phone_number = 7; + * string national_phone_number = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The nationalPhoneNumber. */ @@ -157,10 +194,11 @@ public interface PlaceOrBuilder * * *
-   * A human-readable phone number for the place, in national format.
+   * Output only. A human-readable phone number for the place, in national
+   * format.
    * 
* - * string national_phone_number = 7; + * string national_phone_number = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for nationalPhoneNumber. */ @@ -170,10 +208,12 @@ public interface PlaceOrBuilder * * *
-   * A human-readable phone number for the place, in international format.
+   * Output only. A human-readable phone number for the place, in international
+   * format.
    * 
* - * string international_phone_number = 8; + * string international_phone_number = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The internationalPhoneNumber. */ @@ -182,10 +222,12 @@ public interface PlaceOrBuilder * * *
-   * A human-readable phone number for the place, in international format.
+   * Output only. A human-readable phone number for the place, in international
+   * format.
    * 
* - * string international_phone_number = 8; + * string international_phone_number = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The bytes for internationalPhoneNumber. */ @@ -195,10 +237,10 @@ public interface PlaceOrBuilder * * *
-   * A full, human-readable address for this place.
+   * Output only. A full, human-readable address for this place.
    * 
* - * string formatted_address = 9; + * string formatted_address = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The formattedAddress. */ @@ -207,10 +249,10 @@ public interface PlaceOrBuilder * * *
-   * A full, human-readable address for this place.
+   * Output only. A full, human-readable address for this place.
    * 
* - * string formatted_address = 9; + * string formatted_address = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for formattedAddress. */ @@ -220,40 +262,48 @@ public interface PlaceOrBuilder * * *
-   * Repeated components for each locality level.
+   * Output only. Repeated components for each locality level.
    * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ java.util.List getAddressComponentsList(); /** * * *
-   * Repeated components for each locality level.
+   * Output only. Repeated components for each locality level.
    * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ com.google.maps.places.v1.Place.AddressComponent getAddressComponents(int index); /** * * *
-   * Repeated components for each locality level.
+   * Output only. Repeated components for each locality level.
    * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ int getAddressComponentsCount(); /** * * *
-   * Repeated components for each locality level.
+   * Output only. Repeated components for each locality level.
    * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ java.util.List getAddressComponentsOrBuilderList(); @@ -261,10 +311,12 @@ public interface PlaceOrBuilder * * *
-   * Repeated components for each locality level.
+   * Output only. Repeated components for each locality level.
    * 
* - * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10; + * + * repeated .google.maps.places.v1.Place.AddressComponent address_components = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOrBuilder( int index); @@ -273,10 +325,12 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Plus code of the place location lat/long.
+   * Output only. Plus code of the place location lat/long.
    * 
* - * .google.maps.places.v1.Place.PlusCode plus_code = 11; + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return Whether the plusCode field is set. */ @@ -285,10 +339,12 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Plus code of the place location lat/long.
+   * Output only. Plus code of the place location lat/long.
    * 
* - * .google.maps.places.v1.Place.PlusCode plus_code = 11; + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The plusCode. */ @@ -297,10 +353,12 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Plus code of the place location lat/long.
+   * Output only. Plus code of the place location lat/long.
    * 
* - * .google.maps.places.v1.Place.PlusCode plus_code = 11; + * + * .google.maps.places.v1.Place.PlusCode plus_code = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ com.google.maps.places.v1.Place.PlusCodeOrBuilder getPlusCodeOrBuilder(); @@ -308,10 +366,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * The position of this place.
+   * Output only. The position of this place.
    * 
* - * .google.type.LatLng location = 12; + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return Whether the location field is set. */ @@ -320,10 +378,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * The position of this place.
+   * Output only. The position of this place.
    * 
* - * .google.type.LatLng location = 12; + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The location. */ @@ -332,10 +390,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * The position of this place.
+   * Output only. The position of this place.
    * 
* - * .google.type.LatLng location = 12; + * .google.type.LatLng location = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; */ com.google.type.LatLngOrBuilder getLocationOrBuilder(); @@ -343,10 +401,12 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * A viewport suitable for displaying the place on an average-sized map.
+   * Output only. A viewport suitable for displaying the place on an
+   * average-sized map.
    * 
* - * .google.geo.type.Viewport viewport = 13; + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return Whether the viewport field is set. */ @@ -355,10 +415,12 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * A viewport suitable for displaying the place on an average-sized map.
+   * Output only. A viewport suitable for displaying the place on an
+   * average-sized map.
    * 
* - * .google.geo.type.Viewport viewport = 13; + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The viewport. */ @@ -367,10 +429,12 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * A viewport suitable for displaying the place on an average-sized map.
+   * Output only. A viewport suitable for displaying the place on an
+   * average-sized map.
    * 
* - * .google.geo.type.Viewport viewport = 13; + * .google.geo.type.Viewport viewport = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ com.google.geo.type.ViewportOrBuilder getViewportOrBuilder(); @@ -378,10 +442,11 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * A rating between 1.0 and 5.0, based on user reviews of this place.
+   * Output only. A rating between 1.0 and 5.0, based on user reviews of this
+   * place.
    * 
* - * double rating = 14; + * double rating = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The rating. */ @@ -391,10 +456,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * A URL providing more information about this place.
+   * Output only. A URL providing more information about this place.
    * 
* - * string google_maps_uri = 15; + * string google_maps_uri = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The googleMapsUri. */ @@ -403,10 +468,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * A URL providing more information about this place.
+   * Output only. A URL providing more information about this place.
    * 
* - * string google_maps_uri = 15; + * string google_maps_uri = 15 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for googleMapsUri. */ @@ -416,13 +481,13 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * The authoritative website for this place, e.g. a business' homepage.
-   * Note that for places that are part of a chain (e.g. an IKEA store), this
-   * will usually be the website for the individual store, not the overall
-   * chain.
+   * Output only. The authoritative website for this place, e.g. a business'
+   * homepage. Note that for places that are part of a chain (e.g. an IKEA
+   * store), this will usually be the website for the individual store, not the
+   * overall chain.
    * 
* - * string website_uri = 16; + * string website_uri = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The websiteUri. */ @@ -431,13 +496,13 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * The authoritative website for this place, e.g. a business' homepage.
-   * Note that for places that are part of a chain (e.g. an IKEA store), this
-   * will usually be the website for the individual store, not the overall
-   * chain.
+   * Output only. The authoritative website for this place, e.g. a business'
+   * homepage. Note that for places that are part of a chain (e.g. an IKEA
+   * store), this will usually be the website for the individual store, not the
+   * overall chain.
    * 
* - * string website_uri = 16; + * string website_uri = 16 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for websiteUri. */ @@ -447,99 +512,130 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * List of reviews about this place.
+   * Output only. List of reviews about this place.
    * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - java.util.List getReviewsList(); + java.util.List getReviewsList(); /** * * *
-   * List of reviews about this place.
+   * Output only. List of reviews about this place.
    * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - com.google.maps.places.v1.Place.Review getReviews(int index); + com.google.maps.places.v1.Review getReviews(int index); /** * * *
-   * List of reviews about this place.
+   * Output only. List of reviews about this place.
    * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ int getReviewsCount(); /** * * *
-   * List of reviews about this place.
+   * Output only. List of reviews about this place.
    * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - java.util.List - getReviewsOrBuilderList(); + java.util.List getReviewsOrBuilderList(); /** * * *
-   * List of reviews about this place.
+   * Output only. List of reviews about this place.
    * 
* - * repeated .google.maps.places.v1.Place.Review reviews = 20; + * + * repeated .google.maps.places.v1.Review reviews = 53 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - com.google.maps.places.v1.Place.ReviewOrBuilder getReviewsOrBuilder(int index); + com.google.maps.places.v1.ReviewOrBuilder getReviewsOrBuilder(int index); /** * * *
-   * The regular hours of operation.
+   * Output only. The regular hours of operation.
    * 
* - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return Whether the openingHours field is set. + * @return Whether the regularOpeningHours field is set. */ - boolean hasOpeningHours(); + boolean hasRegularOpeningHours(); /** * * *
-   * The regular hours of operation.
+   * Output only. The regular hours of operation.
    * 
* - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The openingHours. + * @return The regularOpeningHours. */ - com.google.maps.places.v1.Place.OpeningHours getOpeningHours(); + com.google.maps.places.v1.Place.OpeningHours getRegularOpeningHours(); /** * * *
-   * The regular hours of operation.
+   * Output only. The regular hours of operation.
    * 
* - * .google.maps.places.v1.Place.OpeningHours opening_hours = 21; + * + * .google.maps.places.v1.Place.OpeningHours regular_opening_hours = 21 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - com.google.maps.places.v1.Place.OpeningHoursOrBuilder getOpeningHoursOrBuilder(); + com.google.maps.places.v1.Place.OpeningHoursOrBuilder getRegularOpeningHoursOrBuilder(); /** * * *
-   * Number of minutes this place's timezone is currently offset from UTC.
-   * This is expressed in minutes to support timezones that are offset by
-   * fractions of an hour, e.g. X hours and 15 minutes.
+   * Output only. Number of minutes this place's timezone is currently offset
+   * from UTC. This is expressed in minutes to support timezones that are offset
+   * by fractions of an hour, e.g. X hours and 15 minutes.
+   * 
+ * + * optional int32 utc_offset_minutes = 22 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the utcOffsetMinutes field is set. + */ + boolean hasUtcOffsetMinutes(); + /** + * + * + *
+   * Output only. Number of minutes this place's timezone is currently offset
+   * from UTC. This is expressed in minutes to support timezones that are offset
+   * by fractions of an hour, e.g. X hours and 15 minutes.
    * 
* - * int32 utc_offset_minutes = 22; + * optional int32 utc_offset_minutes = 22 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The utcOffsetMinutes. */ @@ -549,10 +645,72 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * The place's address in adr microformat: http://microformats.org/wiki/adr.
+   * Output only. Information (including references) about photos of this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List getPhotosList(); + /** + * + * + *
+   * Output only. Information (including references) about photos of this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.Photo getPhotos(int index); + /** + * + * + *
+   * Output only. Information (including references) about photos of this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + int getPhotosCount(); + /** + * + * + *
+   * Output only. Information (including references) about photos of this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List getPhotosOrBuilderList(); + /** + * + * + *
+   * Output only. Information (including references) about photos of this place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Photo photos = 54 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.PhotoOrBuilder getPhotosOrBuilder(int index); + + /** + * + * + *
+   * Output only. The place's address in adr microformat:
+   * http://microformats.org/wiki/adr.
    * 
* - * string adr_format_address = 24; + * string adr_format_address = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The adrFormatAddress. */ @@ -561,10 +719,11 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * The place's address in adr microformat: http://microformats.org/wiki/adr.
+   * Output only. The place's address in adr microformat:
+   * http://microformats.org/wiki/adr.
    * 
* - * string adr_format_address = 24; + * string adr_format_address = 24 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for adrFormatAddress. */ @@ -574,10 +733,12 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * The business status for the place.
+   * Output only. The business status for the place.
    * 
* - * .google.maps.places.v1.Place.BusinessStatus business_status = 25; + * + * .google.maps.places.v1.Place.BusinessStatus business_status = 25 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The enum numeric value on the wire for businessStatus. */ @@ -586,10 +747,12 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * The business status for the place.
+   * Output only. The business status for the place.
    * 
* - * .google.maps.places.v1.Place.BusinessStatus business_status = 25; + * + * .google.maps.places.v1.Place.BusinessStatus business_status = 25 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The businessStatus. */ @@ -599,10 +762,12 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Price level of the place.
+   * Output only. Price level of the place.
    * 
* - * .google.maps.places.v1.PriceLevel price_level = 26; + * + * .google.maps.places.v1.PriceLevel price_level = 26 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The enum numeric value on the wire for priceLevel. */ @@ -611,10 +776,12 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Price level of the place.
+   * Output only. Price level of the place.
    * 
* - * .google.maps.places.v1.PriceLevel price_level = 26; + * + * .google.maps.places.v1.PriceLevel price_level = 26 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The priceLevel. */ @@ -624,40 +791,48 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * A set of data provider that must be shown with this result.
+   * Output only. A set of data provider that must be shown with this result.
    * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ java.util.List getAttributionsList(); /** * * *
-   * A set of data provider that must be shown with this result.
+   * Output only. A set of data provider that must be shown with this result.
    * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ com.google.maps.places.v1.Place.Attribution getAttributions(int index); /** * * *
-   * A set of data provider that must be shown with this result.
+   * Output only. A set of data provider that must be shown with this result.
    * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ int getAttributionsCount(); /** * * *
-   * A set of data provider that must be shown with this result.
+   * Output only. A set of data provider that must be shown with this result.
    * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ java.util.List getAttributionsOrBuilderList(); @@ -665,10 +840,12 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * A set of data provider that must be shown with this result.
+   * Output only. A set of data provider that must be shown with this result.
    * 
* - * repeated .google.maps.places.v1.Place.Attribution attributions = 27; + * + * repeated .google.maps.places.v1.Place.Attribution attributions = 27 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ com.google.maps.places.v1.Place.AttributionOrBuilder getAttributionsOrBuilder(int index); @@ -676,10 +853,26 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * The total number of reviews (with or without text) for this place.
+   * Output only. The total number of reviews (with or without text) for this
+   * place.
+   * 
+ * + * optional int32 user_rating_count = 28 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the userRatingCount field is set. + */ + boolean hasUserRatingCount(); + /** + * + * + *
+   * Output only. The total number of reviews (with or without text) for this
+   * place.
    * 
* - * int32 user_rating_count = 28; + * optional int32 user_rating_count = 28 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The userRatingCount. */ @@ -689,11 +882,11 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * A truncated URL to an v2 icon mask. User can access different icon type by
-   * appending type suffix to the end (eg, ".svg" or ".png").
+   * Output only. A truncated URL to an v2 icon mask. User can access different
+   * icon type by appending type suffix to the end (eg, ".svg" or ".png").
    * 
* - * string icon_mask_base_uri = 29; + * string icon_mask_base_uri = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The iconMaskBaseUri. */ @@ -702,11 +895,11 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * A truncated URL to an v2 icon mask. User can access different icon type by
-   * appending type suffix to the end (eg, ".svg" or ".png").
+   * Output only. A truncated URL to an v2 icon mask. User can access different
+   * icon type by appending type suffix to the end (eg, ".svg" or ".png").
    * 
* - * string icon_mask_base_uri = 29; + * string icon_mask_base_uri = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for iconMaskBaseUri. */ @@ -716,10 +909,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Background color for icon_mask in hex format, e.g. #909CE1.
+   * Output only. Background color for icon_mask in hex format, e.g. #909CE1.
    * 
* - * string icon_background_color = 30; + * string icon_background_color = 30 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The iconBackgroundColor. */ @@ -728,10 +921,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Background color for icon_mask in hex format, e.g. #909CE1.
+   * Output only. Background color for icon_mask in hex format, e.g. #909CE1.
    * 
* - * string icon_background_color = 30; + * string icon_background_color = 30 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for iconBackgroundColor. */ @@ -741,10 +934,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the business supports takeout.
+   * Output only. Specifies if the business supports takeout.
    * 
* - * optional bool takeout = 33; + * optional bool takeout = 33 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return Whether the takeout field is set. */ @@ -753,10 +946,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the business supports takeout.
+   * Output only. Specifies if the business supports takeout.
    * 
* - * optional bool takeout = 33; + * optional bool takeout = 33 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The takeout. */ @@ -766,10 +959,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the business supports delivery.
+   * Output only. Specifies if the business supports delivery.
    * 
* - * optional bool delivery = 34; + * optional bool delivery = 34 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return Whether the delivery field is set. */ @@ -778,10 +971,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the business supports delivery.
+   * Output only. Specifies if the business supports delivery.
    * 
* - * optional bool delivery = 34; + * optional bool delivery = 34 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The delivery. */ @@ -791,10 +984,11 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the business supports indoor or outdoor seating options.
+   * Output only. Specifies if the business supports indoor or outdoor seating
+   * options.
    * 
* - * optional bool dine_in = 35; + * optional bool dine_in = 35 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return Whether the dineIn field is set. */ @@ -803,10 +997,11 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the business supports indoor or outdoor seating options.
+   * Output only. Specifies if the business supports indoor or outdoor seating
+   * options.
    * 
* - * optional bool dine_in = 35; + * optional bool dine_in = 35 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The dineIn. */ @@ -816,10 +1011,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the business supports curbside pickup.
+   * Output only. Specifies if the business supports curbside pickup.
    * 
* - * optional bool curbside_pickup = 36; + * optional bool curbside_pickup = 36 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return Whether the curbsidePickup field is set. */ @@ -828,10 +1023,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the business supports curbside pickup.
+   * Output only. Specifies if the business supports curbside pickup.
    * 
* - * optional bool curbside_pickup = 36; + * optional bool curbside_pickup = 36 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The curbsidePickup. */ @@ -841,35 +1036,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place has an entrance that is wheelchair-accessible.
-   * 
- * - * optional bool wheelchair_accessible_entrance = 37; - * - * @return Whether the wheelchairAccessibleEntrance field is set. - */ - boolean hasWheelchairAccessibleEntrance(); - /** - * - * - *
-   * Specifies if the place has an entrance that is wheelchair-accessible.
-   * 
- * - * optional bool wheelchair_accessible_entrance = 37; - * - * @return The wheelchairAccessibleEntrance. - */ - boolean getWheelchairAccessibleEntrance(); - - /** - * - * - *
-   * Specifies if the place supports reservations.
+   * Output only. Specifies if the place supports reservations.
    * 
* - * optional bool reservable = 38; + * optional bool reservable = 38 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return Whether the reservable field is set. */ @@ -878,10 +1048,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place supports reservations.
+   * Output only. Specifies if the place supports reservations.
    * 
* - * optional bool reservable = 38; + * optional bool reservable = 38 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The reservable. */ @@ -891,10 +1061,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place serves breakfast.
+   * Output only. Specifies if the place serves breakfast.
    * 
* - * optional bool serves_breakfast = 39; + * optional bool serves_breakfast = 39 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return Whether the servesBreakfast field is set. */ @@ -903,10 +1073,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place serves breakfast.
+   * Output only. Specifies if the place serves breakfast.
    * 
* - * optional bool serves_breakfast = 39; + * optional bool serves_breakfast = 39 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The servesBreakfast. */ @@ -916,10 +1086,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place serves lunch.
+   * Output only. Specifies if the place serves lunch.
    * 
* - * optional bool serves_lunch = 40; + * optional bool serves_lunch = 40 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return Whether the servesLunch field is set. */ @@ -928,10 +1098,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place serves lunch.
+   * Output only. Specifies if the place serves lunch.
    * 
* - * optional bool serves_lunch = 40; + * optional bool serves_lunch = 40 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The servesLunch. */ @@ -941,10 +1111,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place serves dinner.
+   * Output only. Specifies if the place serves dinner.
    * 
* - * optional bool serves_dinner = 41; + * optional bool serves_dinner = 41 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return Whether the servesDinner field is set. */ @@ -953,10 +1123,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place serves dinner.
+   * Output only. Specifies if the place serves dinner.
    * 
* - * optional bool serves_dinner = 41; + * optional bool serves_dinner = 41 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The servesDinner. */ @@ -966,10 +1136,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place serves beer.
+   * Output only. Specifies if the place serves beer.
    * 
* - * optional bool serves_beer = 42; + * optional bool serves_beer = 42 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return Whether the servesBeer field is set. */ @@ -978,10 +1148,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place serves beer.
+   * Output only. Specifies if the place serves beer.
    * 
* - * optional bool serves_beer = 42; + * optional bool serves_beer = 42 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The servesBeer. */ @@ -991,10 +1161,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place serves wine.
+   * Output only. Specifies if the place serves wine.
    * 
* - * optional bool serves_wine = 43; + * optional bool serves_wine = 43 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return Whether the servesWine field is set. */ @@ -1003,10 +1173,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place serves wine.
+   * Output only. Specifies if the place serves wine.
    * 
* - * optional bool serves_wine = 43; + * optional bool serves_wine = 43 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The servesWine. */ @@ -1016,10 +1186,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place serves brunch.
+   * Output only. Specifies if the place serves brunch.
    * 
* - * optional bool serves_brunch = 44; + * optional bool serves_brunch = 44 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return Whether the servesBrunch field is set. */ @@ -1028,10 +1198,10 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place serves brunch.
+   * Output only. Specifies if the place serves brunch.
    * 
* - * optional bool serves_brunch = 44; + * optional bool serves_brunch = 44 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The servesBrunch. */ @@ -1041,10 +1211,11 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place serves vegetarian food.
+   * Output only. Specifies if the place serves vegetarian food.
    * 
* - * optional bool serves_vegetarian_food = 45; + * optional bool serves_vegetarian_food = 45 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return Whether the servesVegetarianFood field is set. */ @@ -1053,10 +1224,11 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Specifies if the place serves vegetarian food.
+   * Output only. Specifies if the place serves vegetarian food.
    * 
* - * optional bool serves_vegetarian_food = 45; + * optional bool serves_vegetarian_food = 45 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The servesVegetarianFood. */ @@ -1066,13 +1238,15 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * The hours of operation for the next seven days (including today). The time
-   * period starts at midnight on the date of the request and ends at 11:59 pm
-   * six days later. This field includes the special_days subfield of all hours,
-   * set for dates that have exceptional hours.
+   * Output only. The hours of operation for the next seven days (including
+   * today). The time period starts at midnight on the date of the request and
+   * ends at 11:59 pm six days later. This field includes the special_days
+   * subfield of all hours, set for dates that have exceptional hours.
    * 
* - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return Whether the currentOpeningHours field is set. */ @@ -1081,13 +1255,15 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * The hours of operation for the next seven days (including today). The time
-   * period starts at midnight on the date of the request and ends at 11:59 pm
-   * six days later. This field includes the special_days subfield of all hours,
-   * set for dates that have exceptional hours.
+   * Output only. The hours of operation for the next seven days (including
+   * today). The time period starts at midnight on the date of the request and
+   * ends at 11:59 pm six days later. This field includes the special_days
+   * subfield of all hours, set for dates that have exceptional hours.
    * 
* - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The currentOpeningHours. */ @@ -1096,13 +1272,15 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * The hours of operation for the next seven days (including today). The time
-   * period starts at midnight on the date of the request and ends at 11:59 pm
-   * six days later. This field includes the special_days subfield of all hours,
-   * set for dates that have exceptional hours.
+   * Output only. The hours of operation for the next seven days (including
+   * today). The time period starts at midnight on the date of the request and
+   * ends at 11:59 pm six days later. This field includes the special_days
+   * subfield of all hours, set for dates that have exceptional hours.
    * 
* - * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46; + * + * .google.maps.places.v1.Place.OpeningHours current_opening_hours = 46 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ com.google.maps.places.v1.Place.OpeningHoursOrBuilder getCurrentOpeningHoursOrBuilder(); @@ -1110,212 +1288,771 @@ com.google.maps.places.v1.Place.AddressComponentOrBuilder getAddressComponentsOr * * *
-   * Contains an array of entries for the next seven days including information
-   * about secondary hours of a business. Secondary hours are different from a
+   * Output only. Contains an array of entries for the next seven days including
+   * information about secondary hours of a business. Secondary hours are
+   * different from a business's main hours. For example, a restaurant can
+   * specify drive through hours or delivery hours as its secondary hours. This
+   * field populates the type subfield, which draws from a predefined list of
+   * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+   * the types of the place. This field includes the special_days subfield of
+   * all hours, set for dates that have exceptional hours.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List + getCurrentSecondaryOpeningHoursList(); + /** + * + * + *
+   * Output only. Contains an array of entries for the next seven days including
+   * information about secondary hours of a business. Secondary hours are
+   * different from a business's main hours. For example, a restaurant can
+   * specify drive through hours or delivery hours as its secondary hours. This
+   * field populates the type subfield, which draws from a predefined list of
+   * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+   * the types of the place. This field includes the special_days subfield of
+   * all hours, set for dates that have exceptional hours.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.Place.OpeningHours getCurrentSecondaryOpeningHours(int index); + /** + * + * + *
+   * Output only. Contains an array of entries for the next seven days including
+   * information about secondary hours of a business. Secondary hours are
+   * different from a business's main hours. For example, a restaurant can
+   * specify drive through hours or delivery hours as its secondary hours. This
+   * field populates the type subfield, which draws from a predefined list of
+   * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+   * the types of the place. This field includes the special_days subfield of
+   * all hours, set for dates that have exceptional hours.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + int getCurrentSecondaryOpeningHoursCount(); + /** + * + * + *
+   * Output only. Contains an array of entries for the next seven days including
+   * information about secondary hours of a business. Secondary hours are
+   * different from a business's main hours. For example, a restaurant can
+   * specify drive through hours or delivery hours as its secondary hours. This
+   * field populates the type subfield, which draws from a predefined list of
+   * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+   * the types of the place. This field includes the special_days subfield of
+   * all hours, set for dates that have exceptional hours.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List + getCurrentSecondaryOpeningHoursOrBuilderList(); + /** + * + * + *
+   * Output only. Contains an array of entries for the next seven days including
+   * information about secondary hours of a business. Secondary hours are
+   * different from a business's main hours. For example, a restaurant can
+   * specify drive through hours or delivery hours as its secondary hours. This
+   * field populates the type subfield, which draws from a predefined list of
+   * opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+   * the types of the place. This field includes the special_days subfield of
+   * all hours, set for dates that have exceptional hours.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.Place.OpeningHoursOrBuilder getCurrentSecondaryOpeningHoursOrBuilder( + int index); + + /** + * + * + *
+   * Output only. Contains an array of entries for information about regular
+   * secondary hours of a business. Secondary hours are different from a
    * business's main hours. For example, a restaurant can specify drive through
    * hours or delivery hours as its secondary hours. This field populates the
    * type subfield, which draws from a predefined list of opening hours types
    * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-   * place. This field includes the special_days subfield of all hours, set for
-   * dates that have exceptional hours.
+   * place.
    * 
* - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ java.util.List - getCurrentSecondaryOpeningHoursList(); + getRegularSecondaryOpeningHoursList(); /** * * *
-   * Contains an array of entries for the next seven days including information
-   * about secondary hours of a business. Secondary hours are different from a
+   * Output only. Contains an array of entries for information about regular
+   * secondary hours of a business. Secondary hours are different from a
    * business's main hours. For example, a restaurant can specify drive through
    * hours or delivery hours as its secondary hours. This field populates the
    * type subfield, which draws from a predefined list of opening hours types
    * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-   * place. This field includes the special_days subfield of all hours, set for
-   * dates that have exceptional hours.
+   * place.
    * 
* - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - com.google.maps.places.v1.Place.OpeningHours getCurrentSecondaryOpeningHours(int index); + com.google.maps.places.v1.Place.OpeningHours getRegularSecondaryOpeningHours(int index); /** * * *
-   * Contains an array of entries for the next seven days including information
-   * about secondary hours of a business. Secondary hours are different from a
+   * Output only. Contains an array of entries for information about regular
+   * secondary hours of a business. Secondary hours are different from a
    * business's main hours. For example, a restaurant can specify drive through
    * hours or delivery hours as its secondary hours. This field populates the
    * type subfield, which draws from a predefined list of opening hours types
    * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-   * place. This field includes the special_days subfield of all hours, set for
-   * dates that have exceptional hours.
+   * place.
    * 
* - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - int getCurrentSecondaryOpeningHoursCount(); + int getRegularSecondaryOpeningHoursCount(); /** * * *
-   * Contains an array of entries for the next seven days including information
-   * about secondary hours of a business. Secondary hours are different from a
+   * Output only. Contains an array of entries for information about regular
+   * secondary hours of a business. Secondary hours are different from a
    * business's main hours. For example, a restaurant can specify drive through
    * hours or delivery hours as its secondary hours. This field populates the
    * type subfield, which draws from a predefined list of opening hours types
    * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-   * place. This field includes the special_days subfield of all hours, set for
-   * dates that have exceptional hours.
+   * place.
    * 
* - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ java.util.List - getCurrentSecondaryOpeningHoursOrBuilderList(); + getRegularSecondaryOpeningHoursOrBuilderList(); /** * * *
-   * Contains an array of entries for the next seven days including information
-   * about secondary hours of a business. Secondary hours are different from a
+   * Output only. Contains an array of entries for information about regular
+   * secondary hours of a business. Secondary hours are different from a
    * business's main hours. For example, a restaurant can specify drive through
    * hours or delivery hours as its secondary hours. This field populates the
    * type subfield, which draws from a predefined list of opening hours types
    * (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-   * place. This field includes the special_days subfield of all hours, set for
-   * dates that have exceptional hours.
+   * place.
    * 
* - * repeated .google.maps.places.v1.Place.OpeningHours current_secondary_opening_hours = 47; + * + * repeated .google.maps.places.v1.Place.OpeningHours regular_secondary_opening_hours = 49 [(.google.api.field_behavior) = OUTPUT_ONLY]; * */ - com.google.maps.places.v1.Place.OpeningHoursOrBuilder getCurrentSecondaryOpeningHoursOrBuilder( + com.google.maps.places.v1.Place.OpeningHoursOrBuilder getRegularSecondaryOpeningHoursOrBuilder( int index); /** * * *
-   * Contains an array of entries for information about regular secondary hours
-   * of a business. Secondary hours are different from a business's main hours.
-   * For example, a restaurant can specify drive through hours or delivery hours
-   * as its secondary hours. This field populates the type subfield, which draws
-   * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-   * PICKUP, or TAKEOUT) based on the types of the place.
+   * Output only. Contains a summary of the place. A summary is comprised of a
+   * textual overview, and also includes the language code for these if
+   * applicable. Summary text must be presented as-is and can not be modified or
+   * altered.
+   * 
+ * + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the editorialSummary field is set. + */ + boolean hasEditorialSummary(); + /** + * + * + *
+   * Output only. Contains a summary of the place. A summary is comprised of a
+   * textual overview, and also includes the language code for these if
+   * applicable. Summary text must be presented as-is and can not be modified or
+   * altered.
+   * 
+ * + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The editorialSummary. + */ + com.google.type.LocalizedText getEditorialSummary(); + /** + * + * + *
+   * Output only. Contains a summary of the place. A summary is comprised of a
+   * textual overview, and also includes the language code for these if
+   * applicable. Summary text must be presented as-is and can not be modified or
+   * altered.
+   * 
+ * + * + * .google.type.LocalizedText editorial_summary = 52 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.type.LocalizedTextOrBuilder getEditorialSummaryOrBuilder(); + + /** + * + * + *
+   * Output only. Place provides outdoor seating.
    * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * optional bool outdoor_seating = 55 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the outdoorSeating field is set. */ - java.util.List getSecondaryOpeningHoursList(); + boolean hasOutdoorSeating(); /** * * *
-   * Contains an array of entries for information about regular secondary hours
-   * of a business. Secondary hours are different from a business's main hours.
-   * For example, a restaurant can specify drive through hours or delivery hours
-   * as its secondary hours. This field populates the type subfield, which draws
-   * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-   * PICKUP, or TAKEOUT) based on the types of the place.
+   * Output only. Place provides outdoor seating.
    * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * optional bool outdoor_seating = 55 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The outdoorSeating. */ - com.google.maps.places.v1.Place.OpeningHours getSecondaryOpeningHours(int index); + boolean getOutdoorSeating(); + /** * * *
-   * Contains an array of entries for information about regular secondary hours
-   * of a business. Secondary hours are different from a business's main hours.
-   * For example, a restaurant can specify drive through hours or delivery hours
-   * as its secondary hours. This field populates the type subfield, which draws
-   * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-   * PICKUP, or TAKEOUT) based on the types of the place.
+   * Output only. Place provides live music.
    * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * optional bool live_music = 56 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the liveMusic field is set. */ - int getSecondaryOpeningHoursCount(); + boolean hasLiveMusic(); /** * * *
-   * Contains an array of entries for information about regular secondary hours
-   * of a business. Secondary hours are different from a business's main hours.
-   * For example, a restaurant can specify drive through hours or delivery hours
-   * as its secondary hours. This field populates the type subfield, which draws
-   * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-   * PICKUP, or TAKEOUT) based on the types of the place.
+   * Output only. Place provides live music.
    * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * optional bool live_music = 56 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The liveMusic. */ - java.util.List - getSecondaryOpeningHoursOrBuilderList(); + boolean getLiveMusic(); + /** * * *
-   * Contains an array of entries for information about regular secondary hours
-   * of a business. Secondary hours are different from a business's main hours.
-   * For example, a restaurant can specify drive through hours or delivery hours
-   * as its secondary hours. This field populates the type subfield, which draws
-   * from a predefined list of opening hours types (such as DRIVE_THROUGH,
-   * PICKUP, or TAKEOUT) based on the types of the place.
+   * Output only. Place has a children's menu.
    * 
* - * repeated .google.maps.places.v1.Place.OpeningHours secondary_opening_hours = 49; + * optional bool menu_for_children = 57 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the menuForChildren field is set. */ - com.google.maps.places.v1.Place.OpeningHoursOrBuilder getSecondaryOpeningHoursOrBuilder( - int index); + boolean hasMenuForChildren(); + /** + * + * + *
+   * Output only. Place has a children's menu.
+   * 
+ * + * optional bool menu_for_children = 57 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The menuForChildren. + */ + boolean getMenuForChildren(); /** * * *
-   * Contains a summary of the place. A summary is comprised of a textual
-   * overview, and also includes the language code for these if applicable.
-   * Summary text must be presented as-is and can not be modified or altered.
+   * Output only. Place serves cocktails.
    * 
* - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; + * optional bool serves_cocktails = 58 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return Whether the editorialSummary field is set. + * @return Whether the servesCocktails field is set. */ - boolean hasEditorialSummary(); + boolean hasServesCocktails(); /** * * *
-   * Contains a summary of the place. A summary is comprised of a textual
-   * overview, and also includes the language code for these if applicable.
-   * Summary text must be presented as-is and can not be modified or altered.
+   * Output only. Place serves cocktails.
    * 
* - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; + * optional bool serves_cocktails = 58 [(.google.api.field_behavior) = OUTPUT_ONLY]; * - * @return The editorialSummary. + * @return The servesCocktails. + */ + boolean getServesCocktails(); + + /** + * + * + *
+   * Output only. Place serves dessert.
+   * 
+ * + * optional bool serves_dessert = 59 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the servesDessert field is set. + */ + boolean hasServesDessert(); + /** + * + * + *
+   * Output only. Place serves dessert.
+   * 
+ * + * optional bool serves_dessert = 59 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesDessert. + */ + boolean getServesDessert(); + + /** + * + * + *
+   * Output only. Place serves coffee.
+   * 
+ * + * optional bool serves_coffee = 60 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the servesCoffee field is set. + */ + boolean hasServesCoffee(); + /** + * + * + *
+   * Output only. Place serves coffee.
+   * 
+ * + * optional bool serves_coffee = 60 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The servesCoffee. + */ + boolean getServesCoffee(); + + /** + * + * + *
+   * Output only. Place is good for children.
+   * 
+ * + * optional bool good_for_children = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the goodForChildren field is set. + */ + boolean hasGoodForChildren(); + /** + * + * + *
+   * Output only. Place is good for children.
+   * 
+ * + * optional bool good_for_children = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The goodForChildren. + */ + boolean getGoodForChildren(); + + /** + * + * + *
+   * Output only. Place allows dogs.
+   * 
+ * + * optional bool allows_dogs = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the allowsDogs field is set. + */ + boolean hasAllowsDogs(); + /** + * + * + *
+   * Output only. Place allows dogs.
+   * 
+ * + * optional bool allows_dogs = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The allowsDogs. + */ + boolean getAllowsDogs(); + + /** + * + * + *
+   * Output only. Place has restroom.
+   * 
+ * + * optional bool restroom = 64 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the restroom field is set. + */ + boolean hasRestroom(); + /** + * + * + *
+   * Output only. Place has restroom.
+   * 
+ * + * optional bool restroom = 64 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The restroom. + */ + boolean getRestroom(); + + /** + * + * + *
+   * Output only. Place accommodates groups.
+   * 
+ * + * optional bool good_for_groups = 65 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the goodForGroups field is set. + */ + boolean hasGoodForGroups(); + /** + * + * + *
+   * Output only. Place accommodates groups.
+   * 
+ * + * optional bool good_for_groups = 65 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The goodForGroups. + */ + boolean getGoodForGroups(); + + /** + * + * + *
+   * Output only. Place is suitable for watching sports.
+   * 
+ * + * optional bool good_for_watching_sports = 66 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the goodForWatchingSports field is set. + */ + boolean hasGoodForWatchingSports(); + /** + * + * + *
+   * Output only. Place is suitable for watching sports.
+   * 
+ * + * optional bool good_for_watching_sports = 66 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The goodForWatchingSports. + */ + boolean getGoodForWatchingSports(); + + /** + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the paymentOptions field is set. + */ + boolean hasPaymentOptions(); + /** + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The paymentOptions. + */ + com.google.maps.places.v1.Place.PaymentOptions getPaymentOptions(); + /** + * + * .google.maps.places.v1.Place.PaymentOptions payment_options = 67 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.Place.PaymentOptionsOrBuilder getPaymentOptionsOrBuilder(); + + /** + * + * + *
+   * Output only. Options of parking provided by the place.
+   * 
+ * + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the parkingOptions field is set. + */ + boolean hasParkingOptions(); + /** + * + * + *
+   * Output only. Options of parking provided by the place.
+   * 
+ * + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The parkingOptions. + */ + com.google.maps.places.v1.Place.ParkingOptions getParkingOptions(); + /** + * + * + *
+   * Output only. Options of parking provided by the place.
+   * 
+ * + * + * .google.maps.places.v1.Place.ParkingOptions parking_options = 70 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.Place.ParkingOptionsOrBuilder getParkingOptionsOrBuilder(); + + /** + * + * + *
+   * Output only. A list of sub destinations related to the place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List getSubDestinationsList(); + /** + * + * + *
+   * Output only. A list of sub destinations related to the place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.Place.SubDestination getSubDestinations(int index); + /** + * + * + *
+   * Output only. A list of sub destinations related to the place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + int getSubDestinationsCount(); + /** + * + * + *
+   * Output only. A list of sub destinations related to the place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + java.util.List + getSubDestinationsOrBuilderList(); + /** + * + * + *
+   * Output only. A list of sub destinations related to the place.
+   * 
+ * + * + * repeated .google.maps.places.v1.Place.SubDestination sub_destinations = 71 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.Place.SubDestinationOrBuilder getSubDestinationsOrBuilder(int index); + + /** + * + * + *
+   * Output only. Information about the accessibility options a place offers.
+   * 
+ * + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the accessibilityOptions field is set. */ - com.google.maps.places.v1.Place.EditorialSummary getEditorialSummary(); + boolean hasAccessibilityOptions(); /** * * *
-   * Contains a summary of the place. A summary is comprised of a textual
-   * overview, and also includes the language code for these if applicable.
-   * Summary text must be presented as-is and can not be modified or altered.
+   * Output only. Information about the accessibility options a place offers.
    * 
* - * .google.maps.places.v1.Place.EditorialSummary editorial_summary = 48; + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The accessibilityOptions. + */ + com.google.maps.places.v1.Place.AccessibilityOptions getAccessibilityOptions(); + /** + * + * + *
+   * Output only. Information about the accessibility options a place offers.
+   * 
+ * + * + * optional .google.maps.places.v1.Place.AccessibilityOptions accessibility_options = 72 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.Place.AccessibilityOptionsOrBuilder getAccessibilityOptionsOrBuilder(); + + /** + * + * + *
+   * Output only. The most recent information about fuel options in a gas
+   * station. This information is updated regularly.
+   * 
+ * + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the fuelOptions field is set. + */ + boolean hasFuelOptions(); + /** + * + * + *
+   * Output only. The most recent information about fuel options in a gas
+   * station. This information is updated regularly.
+   * 
+ * + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The fuelOptions. + */ + com.google.maps.places.v1.FuelOptions getFuelOptions(); + /** + * + * + *
+   * Output only. The most recent information about fuel options in a gas
+   * station. This information is updated regularly.
+   * 
+ * + * + * .google.maps.places.v1.FuelOptions fuel_options = 78 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.FuelOptionsOrBuilder getFuelOptionsOrBuilder(); + + /** + * + * + *
+   * Output only. Information of ev charging options.
+   * 
+ * + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the evChargeOptions field is set. + */ + boolean hasEvChargeOptions(); + /** + * + * + *
+   * Output only. Information of ev charging options.
+   * 
+ * + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The evChargeOptions. + */ + com.google.maps.places.v1.EVChargeOptions getEvChargeOptions(); + /** + * + * + *
+   * Output only. Information of ev charging options.
+   * 
+ * + * + * .google.maps.places.v1.EVChargeOptions ev_charge_options = 79 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ - com.google.maps.places.v1.Place.EditorialSummaryOrBuilder getEditorialSummaryOrBuilder(); + com.google.maps.places.v1.EVChargeOptionsOrBuilder getEvChargeOptionsOrBuilder(); } diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlaceProto.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlaceProto.java index bf5f2afbfb44..5313cfa2783e 100644 --- a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlaceProto.java +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlaceProto.java @@ -39,22 +39,18 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_maps_places_v1_Place_PlusCode_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_google_maps_places_v1_Place_PlusCode_fieldAccessorTable; - static final com.google.protobuf.Descriptors.Descriptor - internal_static_google_maps_places_v1_Place_Review_descriptor; - static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_google_maps_places_v1_Place_Review_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_maps_places_v1_Place_OpeningHours_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_google_maps_places_v1_Place_OpeningHours_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor - internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_descriptor; + internal_static_google_maps_places_v1_Place_OpeningHours_Period_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_fieldAccessorTable; + internal_static_google_maps_places_v1_Place_OpeningHours_Period_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor - internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_OpeningHoursPoint_descriptor; + internal_static_google_maps_places_v1_Place_OpeningHours_Period_Point_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_OpeningHoursPoint_fieldAccessorTable; + internal_static_google_maps_places_v1_Place_OpeningHours_Period_Point_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_maps_places_v1_Place_OpeningHours_SpecialDay_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable @@ -64,9 +60,21 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_google_maps_places_v1_Place_Attribution_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor - internal_static_google_maps_places_v1_Place_EditorialSummary_descriptor; + internal_static_google_maps_places_v1_Place_PaymentOptions_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_maps_places_v1_Place_PaymentOptions_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_maps_places_v1_Place_ParkingOptions_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_maps_places_v1_Place_ParkingOptions_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_maps_places_v1_Place_SubDestination_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_maps_places_v1_Place_SubDestination_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_maps_places_v1_Place_AccessibilityOptions_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_google_maps_places_v1_Place_EditorialSummary_fieldAccessorTable; + internal_static_google_maps_places_v1_Place_AccessibilityOptions_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { return descriptor; @@ -78,114 +86,171 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { java.lang.String[] descriptorData = { "\n!google/maps/places/v1/place.proto\022\025goo" + "gle.maps.places.v1\032\037google/api/field_beh" - + "avior.proto\032\036google/geo/type/viewport.pr" - + "oto\032\037google/protobuf/timestamp.proto\032\026go" - + "ogle/type/date.proto\032\030google/type/latlng" - + ".proto\032 google/type/localized_text.proto" - + "\"\264\033\n\005Place\022\017\n\002id\030\002 \001(\tB\003\340A\002\0220\n\014display_n" - + "ame\030\037 \001(\0132\032.google.type.LocalizedText\022\r\n" - + "\005types\030\005 \003(\t\022\035\n\025national_phone_number\030\007 " - + "\001(\t\022\"\n\032international_phone_number\030\010 \001(\t\022" - + "\031\n\021formatted_address\030\t \001(\t\022I\n\022address_co" - + "mponents\030\n \003(\0132-.google.maps.places.v1.P" - + "lace.AddressComponent\0228\n\tplus_code\030\013 \001(\013" - + "2%.google.maps.places.v1.Place.PlusCode\022" - + "%\n\010location\030\014 \001(\0132\023.google.type.LatLng\022+" - + "\n\010viewport\030\r \001(\0132\031.google.geo.type.Viewp" - + "ort\022\016\n\006rating\030\016 \001(\001\022\027\n\017google_maps_uri\030\017" - + " \001(\t\022\023\n\013website_uri\030\020 \001(\t\0224\n\007reviews\030\024 \003" - + "(\0132#.google.maps.places.v1.Place.Review\022" - + "@\n\ropening_hours\030\025 \001(\0132).google.maps.pla" - + "ces.v1.Place.OpeningHours\022\032\n\022utc_offset_" - + "minutes\030\026 \001(\005\022\032\n\022adr_format_address\030\030 \001(" - + "\t\022D\n\017business_status\030\031 \001(\0162+.google.maps" - + ".places.v1.Place.BusinessStatus\0226\n\013price" - + "_level\030\032 \001(\0162!.google.maps.places.v1.Pri" - + "ceLevel\022>\n\014attributions\030\033 \003(\0132(.google.m" - + "aps.places.v1.Place.Attribution\022\031\n\021user_" - + "rating_count\030\034 \001(\005\022\032\n\022icon_mask_base_uri" - + "\030\035 \001(\t\022\035\n\025icon_background_color\030\036 \001(\t\022\024\n" - + "\007takeout\030! \001(\010H\000\210\001\001\022\025\n\010delivery\030\" \001(\010H\001\210" - + "\001\001\022\024\n\007dine_in\030# \001(\010H\002\210\001\001\022\034\n\017curbside_pic" - + "kup\030$ \001(\010H\003\210\001\001\022+\n\036wheelchair_accessible_" - + "entrance\030% \001(\010H\004\210\001\001\022\027\n\nreservable\030& \001(\010H" - + "\005\210\001\001\022\035\n\020serves_breakfast\030\' \001(\010H\006\210\001\001\022\031\n\014s" - + "erves_lunch\030( \001(\010H\007\210\001\001\022\032\n\rserves_dinner\030" - + ") \001(\010H\010\210\001\001\022\030\n\013serves_beer\030* \001(\010H\t\210\001\001\022\030\n\013" - + "serves_wine\030+ \001(\010H\n\210\001\001\022\032\n\rserves_brunch\030" - + ", \001(\010H\013\210\001\001\022#\n\026serves_vegetarian_food\030- \001" - + "(\010H\014\210\001\001\022H\n\025current_opening_hours\030. \001(\0132)" - + ".google.maps.places.v1.Place.OpeningHour" - + "s\022R\n\037current_secondary_opening_hours\030/ \003" - + "(\0132).google.maps.places.v1.Place.Opening" - + "Hours\022J\n\027secondary_opening_hours\0301 \003(\0132)" - + ".google.maps.places.v1.Place.OpeningHour" - + "s\022H\n\021editorial_summary\0300 \001(\0132-.google.ma" - + "ps.places.v1.Place.EditorialSummary\032_\n\020A" - + "ddressComponent\022\021\n\tlong_text\030\001 \001(\t\022\022\n\nsh" - + "ort_text\030\002 \001(\t\022\r\n\005types\030\003 \003(\t\022\025\n\rlanguag" - + "e_code\030\004 \001(\t\0326\n\010PlusCode\022\023\n\013global_code\030" - + "\001 \001(\t\022\025\n\rcompound_code\030\002 \001(\t\032\221\002\n\006Review\022" - + "0\n\014publish_time\030\001 \001(\0132\032.google.protobuf." - + "Timestamp\022)\n!relative_publish_time_descr" - + "iption\030\002 \001(\t\022(\n\004text\030\t \001(\0132\032.google.type" - + ".LocalizedText\022\016\n\006author\030\004 \001(\t\022\022\n\nauthor" - + "_uri\030\005 \001(\t\022\030\n\020author_photo_uri\030\006 \001(\t\022\016\n\006" - + "rating\030\007 \001(\001\022\036\n\026original_language_code\030\n" - + " \001(\t\022\022\n\ntranslated\030\013 \001(\010\032\357\007\n\014OpeningHour" - + "s\022\020\n\010open_now\030\001 \001(\010\022M\n\007periods\030\002 \003(\0132<.g" + + "avior.proto\032\031google/api/resource.proto\032\036" + + "google/geo/type/viewport.proto\032\'google/m" + + "aps/places/v1/ev_charging.proto\032(google/" + + "maps/places/v1/fuel_options.proto\032!googl" + + "e/maps/places/v1/photo.proto\032\"google/map" + + "s/places/v1/review.proto\032\026google/type/da" + + "te.proto\032\030google/type/latlng.proto\032 goog" + + "le/type/localized_text.proto\"\303*\n\005Place\022\022" + + "\n\004name\030\001 \001(\tB\004\342A\001\003\022\020\n\002id\030\002 \001(\tB\004\342A\001\003\0226\n\014" + + "display_name\030\037 \001(\0132\032.google.type.Localiz" + + "edTextB\004\342A\001\003\022\023\n\005types\030\005 \003(\tB\004\342A\001\003\022#\n\025nat" + + "ional_phone_number\030\007 \001(\tB\004\342A\001\003\022(\n\032intern" + + "ational_phone_number\030\010 \001(\tB\004\342A\001\003\022\037\n\021form" + + "atted_address\030\t \001(\tB\004\342A\001\003\022O\n\022address_com" + + "ponents\030\n \003(\0132-.google.maps.places.v1.Pl" + + "ace.AddressComponentB\004\342A\001\003\022>\n\tplus_code\030" + + "\013 \001(\0132%.google.maps.places.v1.Place.Plus" + + "CodeB\004\342A\001\003\022+\n\010location\030\014 \001(\0132\023.google.ty" + + "pe.LatLngB\004\342A\001\003\0221\n\010viewport\030\r \001(\0132\031.goog" + + "le.geo.type.ViewportB\004\342A\001\003\022\024\n\006rating\030\016 \001" + + "(\001B\004\342A\001\003\022\035\n\017google_maps_uri\030\017 \001(\tB\004\342A\001\003\022" + + "\031\n\013website_uri\030\020 \001(\tB\004\342A\001\003\0224\n\007reviews\0305 " + + "\003(\0132\035.google.maps.places.v1.ReviewB\004\342A\001\003" + + "\022N\n\025regular_opening_hours\030\025 \001(\0132).google" + + ".maps.places.v1.Place.OpeningHoursB\004\342A\001\003" + + "\022%\n\022utc_offset_minutes\030\026 \001(\005B\004\342A\001\003H\000\210\001\001\022" + + "2\n\006photos\0306 \003(\0132\034.google.maps.places.v1." + + "PhotoB\004\342A\001\003\022 \n\022adr_format_address\030\030 \001(\tB" + + "\004\342A\001\003\022J\n\017business_status\030\031 \001(\0162+.google." + + "maps.places.v1.Place.BusinessStatusB\004\342A\001" + + "\003\022<\n\013price_level\030\032 \001(\0162!.google.maps.pla" + + "ces.v1.PriceLevelB\004\342A\001\003\022D\n\014attributions\030" + + "\033 \003(\0132(.google.maps.places.v1.Place.Attr" + + "ibutionB\004\342A\001\003\022$\n\021user_rating_count\030\034 \001(\005" + + "B\004\342A\001\003H\001\210\001\001\022 \n\022icon_mask_base_uri\030\035 \001(\tB" + + "\004\342A\001\003\022#\n\025icon_background_color\030\036 \001(\tB\004\342A" + + "\001\003\022\032\n\007takeout\030! \001(\010B\004\342A\001\003H\002\210\001\001\022\033\n\010delive" + + "ry\030\" \001(\010B\004\342A\001\003H\003\210\001\001\022\032\n\007dine_in\030# \001(\010B\004\342A" + + "\001\003H\004\210\001\001\022\"\n\017curbside_pickup\030$ \001(\010B\004\342A\001\003H\005" + + "\210\001\001\022\035\n\nreservable\030& \001(\010B\004\342A\001\003H\006\210\001\001\022#\n\020se" + + "rves_breakfast\030\' \001(\010B\004\342A\001\003H\007\210\001\001\022\037\n\014serve" + + "s_lunch\030( \001(\010B\004\342A\001\003H\010\210\001\001\022 \n\rserves_dinne" + + "r\030) \001(\010B\004\342A\001\003H\t\210\001\001\022\036\n\013serves_beer\030* \001(\010B" + + "\004\342A\001\003H\n\210\001\001\022\036\n\013serves_wine\030+ \001(\010B\004\342A\001\003H\013\210" + + "\001\001\022 \n\rserves_brunch\030, \001(\010B\004\342A\001\003H\014\210\001\001\022)\n\026" + + "serves_vegetarian_food\030- \001(\010B\004\342A\001\003H\r\210\001\001\022" + + "N\n\025current_opening_hours\030. \001(\0132).google." + + "maps.places.v1.Place.OpeningHoursB\004\342A\001\003\022" + + "X\n\037current_secondary_opening_hours\030/ \003(\013" + + "2).google.maps.places.v1.Place.OpeningHo" + + "ursB\004\342A\001\003\022X\n\037regular_secondary_opening_h" + + "ours\0301 \003(\0132).google.maps.places.v1.Place" + + ".OpeningHoursB\004\342A\001\003\022;\n\021editorial_summary" + + "\0304 \001(\0132\032.google.type.LocalizedTextB\004\342A\001\003" + + "\022\"\n\017outdoor_seating\0307 \001(\010B\004\342A\001\003H\016\210\001\001\022\035\n\n" + + "live_music\0308 \001(\010B\004\342A\001\003H\017\210\001\001\022$\n\021menu_for_" + + "children\0309 \001(\010B\004\342A\001\003H\020\210\001\001\022#\n\020serves_cock" + + "tails\030: \001(\010B\004\342A\001\003H\021\210\001\001\022!\n\016serves_dessert" + + "\030; \001(\010B\004\342A\001\003H\022\210\001\001\022 \n\rserves_coffee\030< \001(\010" + + "B\004\342A\001\003H\023\210\001\001\022$\n\021good_for_children\030> \001(\010B\004" + + "\342A\001\003H\024\210\001\001\022\036\n\013allows_dogs\030? \001(\010B\004\342A\001\003H\025\210\001" + + "\001\022\033\n\010restroom\030@ \001(\010B\004\342A\001\003H\026\210\001\001\022\"\n\017good_f" + + "or_groups\030A \001(\010B\004\342A\001\003H\027\210\001\001\022+\n\030good_for_w" + + "atching_sports\030B \001(\010B\004\342A\001\003H\030\210\001\001\022J\n\017payme" + + "nt_options\030C \001(\0132+.google.maps.places.v1" + + ".Place.PaymentOptionsB\004\342A\001\003\022J\n\017parking_o" + + "ptions\030F \001(\0132+.google.maps.places.v1.Pla" + + "ce.ParkingOptionsB\004\342A\001\003\022K\n\020sub_destinati" + + "ons\030G \003(\0132+.google.maps.places.v1.Place." + + "SubDestinationB\004\342A\001\003\022[\n\025accessibility_op" + + "tions\030H \001(\01321.google.maps.places.v1.Plac" + + "e.AccessibilityOptionsB\004\342A\001\003H\031\210\001\001\022>\n\014fue" + + "l_options\030N \001(\0132\".google.maps.places.v1." + + "FuelOptionsB\004\342A\001\003\022G\n\021ev_charge_options\030O" + + " \001(\0132&.google.maps.places.v1.EVChargeOpt" + + "ionsB\004\342A\001\003\032w\n\020AddressComponent\022\027\n\tlong_t" + + "ext\030\001 \001(\tB\004\342A\001\003\022\030\n\nshort_text\030\002 \001(\tB\004\342A\001" + + "\003\022\023\n\005types\030\003 \003(\tB\004\342A\001\003\022\033\n\rlanguage_code\030" + + "\004 \001(\tB\004\342A\001\003\032B\n\010PlusCode\022\031\n\013global_code\030\001" + + " \001(\tB\004\342A\001\003\022\033\n\rcompound_code\030\002 \001(\tB\004\342A\001\003\032" + + "\342\007\n\014OpeningHours\022\033\n\010open_now\030\001 \001(\010B\004\342A\001\003" + + "H\000\210\001\001\022G\n\007periods\030\002 \003(\01320.google.maps.pla" + + "ces.v1.Place.OpeningHours.PeriodB\004\342A\001\003\022\"" + + "\n\024weekday_descriptions\030\003 \003(\tB\004\342A\001\003\022`\n\024se" + + "condary_hours_type\030\004 \001(\0162<.google.maps.p" + + "laces.v1.Place.OpeningHours.SecondaryHou" + + "rsTypeB\004\342A\001\003\022P\n\014special_days\030\005 \003(\01324.goo" + + "gle.maps.places.v1.Place.OpeningHours.Sp" + + "ecialDayB\004\342A\001\003\032\323\002\n\006Period\022J\n\004open\030\001 \001(\0132" + + "6.google.maps.places.v1.Place.OpeningHou" + + "rs.Period.PointB\004\342A\001\003\022K\n\005close\030\002 \001(\01326.g" + "oogle.maps.places.v1.Place.OpeningHours." - + "OpeningHoursPeriod\022\034\n\024weekday_descriptio" - + "ns\030\003 \003(\t\022X\n\023secondary_hour_type\030\004 \001(\0162;." - + "google.maps.places.v1.Place.OpeningHours" - + ".SecondaryHourType\022J\n\014special_days\030\005 \003(\013" - + "24.google.maps.places.v1.Place.OpeningHo" - + "urs.SpecialDay\032\216\003\n\022OpeningHoursPeriod\022\\\n" - + "\004open\030\001 \001(\0132N.google.maps.places.v1.Plac" - + "e.OpeningHours.OpeningHoursPeriod.Openin" - + "gHoursPoint\022]\n\005close\030\002 \001(\0132N.google.maps" - + ".places.v1.Place.OpeningHours.OpeningHou" - + "rsPeriod.OpeningHoursPoint\032\272\001\n\021OpeningHo" - + "ursPoint\022\020\n\003day\030\001 \001(\005H\000\210\001\001\022\021\n\004hour\030\002 \001(\005" - + "H\001\210\001\001\022\023\n\006minute\030\003 \001(\005H\002\210\001\001\022\033\n\017date_depre" - + "cated\030\004 \001(\tB\002\030\001\022\037\n\004date\030\006 \001(\0132\021.google.t" - + "ype.Date\022\021\n\ttruncated\030\005 \001(\010B\006\n\004_dayB\007\n\005_" - + "hourB\t\n\007_minute\032-\n\nSpecialDay\022\037\n\004date\030\001 " - + "\001(\0132\021.google.type.Date\"\371\001\n\021SecondaryHour" - + "Type\022#\n\037SECONDARY_HOUR_TYPE_UNSPECIFIED\020" - + "\000\022\021\n\rDRIVE_THROUGH\020\001\022\016\n\nHAPPY_HOUR\020\002\022\014\n\010" - + "DELIVERY\020\003\022\013\n\007TAKEOUT\020\004\022\013\n\007KITCHEN\020\005\022\r\n\t" - + "BREAKFAST\020\006\022\t\n\005LUNCH\020\007\022\n\n\006DINNER\020\010\022\n\n\006BR" - + "UNCH\020\t\022\n\n\006PICKUP\020\n\022\n\n\006ACCESS\020\013\022\020\n\014SENIOR" - + "_HOURS\020\014\022\030\n\024ONLINE_SERVICE_HOURS\020\r\0325\n\013At" - + "tribution\022\020\n\010provider\030\001 \001(\t\022\024\n\014provider_" - + "uri\030\002 \001(\t\032@\n\020EditorialSummary\022,\n\010overvie" - + "w\030\001 \001(\0132\032.google.type.LocalizedText\"r\n\016B" - + "usinessStatus\022\037\n\033BUSINESS_STATUS_UNSPECI" - + "FIED\020\000\022\017\n\013OPERATIONAL\020\001\022\026\n\022CLOSED_TEMPOR" - + "ARILY\020\002\022\026\n\022CLOSED_PERMANENTLY\020\003B\n\n\010_take" - + "outB\013\n\t_deliveryB\n\n\010_dine_inB\022\n\020_curbsid" - + "e_pickupB!\n\037_wheelchair_accessible_entra" - + "nceB\r\n\013_reservableB\023\n\021_serves_breakfastB" - + "\017\n\r_serves_lunchB\020\n\016_serves_dinnerB\016\n\014_s" - + "erves_beerB\016\n\014_serves_wineB\020\n\016_serves_br" - + "unchB\031\n\027_serves_vegetarian_food*u\n\nPrice" - + "Level\022\033\n\027PRICE_LEVEL_UNSPECIFIED\020\000\022\010\n\004FR" - + "EE\020\001\022\017\n\013INEXPENSIVE\020\002\022\014\n\010MODERATE\020\003\022\r\n\tE" - + "XPENSIVE\020\004\022\022\n\016VERY_EXPENSIVE\020\005B\242\001\n\031com.g" - + "oogle.maps.places.v1B\nPlaceProtoP\001Z;goog" - + "le.golang.org/genproto/googleapis/maps/p" - + "laces/v1;places\370\001\001\242\002\006GMPSV1\252\002\025Google.Map" - + "s.Places.V1\312\002\025Google\\Maps\\Places\\V1b\006pro" - + "to3" + + "Period.PointB\004\342A\001\003\032\257\001\n\005Point\022\026\n\003day\030\001 \001(" + + "\005B\004\342A\001\003H\000\210\001\001\022\027\n\004hour\030\002 \001(\005B\004\342A\001\003H\001\210\001\001\022\031\n" + + "\006minute\030\003 \001(\005B\004\342A\001\003H\002\210\001\001\022%\n\004date\030\006 \001(\0132\021" + + ".google.type.DateB\004\342A\001\003\022\027\n\ttruncated\030\005 \001" + + "(\010B\004\342A\001\003B\006\n\004_dayB\007\n\005_hourB\t\n\007_minute\0323\n\n" + + "SpecialDay\022%\n\004date\030\001 \001(\0132\021.google.type.D" + + "ateB\004\342A\001\003\"\373\001\n\022SecondaryHoursType\022$\n SECO" + + "NDARY_HOURS_TYPE_UNSPECIFIED\020\000\022\021\n\rDRIVE_" + + "THROUGH\020\001\022\016\n\nHAPPY_HOUR\020\002\022\014\n\010DELIVERY\020\003\022" + + "\013\n\007TAKEOUT\020\004\022\013\n\007KITCHEN\020\005\022\r\n\tBREAKFAST\020\006" + + "\022\t\n\005LUNCH\020\007\022\n\n\006DINNER\020\010\022\n\n\006BRUNCH\020\t\022\n\n\006P" + + "ICKUP\020\n\022\n\n\006ACCESS\020\013\022\020\n\014SENIOR_HOURS\020\014\022\030\n" + + "\024ONLINE_SERVICE_HOURS\020\rB\013\n\t_open_now\032A\n\013" + + "Attribution\022\026\n\010provider\030\001 \001(\tB\004\342A\001\003\022\032\n\014p" + + "rovider_uri\030\002 \001(\tB\004\342A\001\003\032\346\001\n\016PaymentOptio" + + "ns\022!\n\024accepts_credit_cards\030\001 \001(\010H\000\210\001\001\022 \n" + + "\023accepts_debit_cards\030\002 \001(\010H\001\210\001\001\022\036\n\021accep" + + "ts_cash_only\030\003 \001(\010H\002\210\001\001\022\030\n\013accepts_nfc\030\004" + + " \001(\010H\003\210\001\001B\027\n\025_accepts_credit_cardsB\026\n\024_a" + + "ccepts_debit_cardsB\024\n\022_accepts_cash_only" + + "B\016\n\014_accepts_nfc\032\216\003\n\016ParkingOptions\022\035\n\020f" + + "ree_parking_lot\030\001 \001(\010H\000\210\001\001\022\035\n\020paid_parki" + + "ng_lot\030\002 \001(\010H\001\210\001\001\022 \n\023free_street_parking" + + "\030\003 \001(\010H\002\210\001\001\022 \n\023paid_street_parking\030\004 \001(\010" + + "H\003\210\001\001\022\032\n\rvalet_parking\030\005 \001(\010H\004\210\001\001\022 \n\023fre" + + "e_garage_parking\030\006 \001(\010H\005\210\001\001\022 \n\023paid_gara" + + "ge_parking\030\007 \001(\010H\006\210\001\001B\023\n\021_free_parking_l" + + "otB\023\n\021_paid_parking_lotB\026\n\024_free_street_" + + "parkingB\026\n\024_paid_street_parkingB\020\n\016_vale" + + "t_parkingB\026\n\024_free_garage_parkingB\026\n\024_pa" + + "id_garage_parking\032L\n\016SubDestination\022.\n\004n" + + "ame\030\001 \001(\tB \372A\035\n\033places.googleapis.com/Pl" + + "ace\022\n\n\002id\030\002 \001(\t\032f\n\024AccessibilityOptions\022" + + "+\n\036wheelchair_accessible_entrance\030\002 \001(\010H" + + "\000\210\001\001B!\n\037_wheelchair_accessible_entrance\"" + + "r\n\016BusinessStatus\022\037\n\033BUSINESS_STATUS_UNS" + + "PECIFIED\020\000\022\017\n\013OPERATIONAL\020\001\022\026\n\022CLOSED_TE" + + "MPORARILY\020\002\022\026\n\022CLOSED_PERMANENTLY\020\003:B\352A?" + + "\n\033places.googleapis.com/Place\022\021places/{p" + + "lace_id}*\006places2\005placeB\025\n\023_utc_offset_m" + + "inutesB\024\n\022_user_rating_countB\n\n\010_takeout" + + "B\013\n\t_deliveryB\n\n\010_dine_inB\022\n\020_curbside_p" + + "ickupB\r\n\013_reservableB\023\n\021_serves_breakfas" + + "tB\017\n\r_serves_lunchB\020\n\016_serves_dinnerB\016\n\014" + + "_serves_beerB\016\n\014_serves_wineB\020\n\016_serves_" + + "brunchB\031\n\027_serves_vegetarian_foodB\022\n\020_ou" + + "tdoor_seatingB\r\n\013_live_musicB\024\n\022_menu_fo" + + "r_childrenB\023\n\021_serves_cocktailsB\021\n\017_serv" + + "es_dessertB\020\n\016_serves_coffeeB\024\n\022_good_fo" + + "r_childrenB\016\n\014_allows_dogsB\013\n\t_restroomB" + + "\022\n\020_good_for_groupsB\033\n\031_good_for_watchin" + + "g_sportsB\030\n\026_accessibility_options*\261\001\n\nP" + + "riceLevel\022\033\n\027PRICE_LEVEL_UNSPECIFIED\020\000\022\024" + + "\n\020PRICE_LEVEL_FREE\020\001\022\033\n\027PRICE_LEVEL_INEX" + + "PENSIVE\020\002\022\030\n\024PRICE_LEVEL_MODERATE\020\003\022\031\n\025P" + + "RICE_LEVEL_EXPENSIVE\020\004\022\036\n\032PRICE_LEVEL_VE" + + "RY_EXPENSIVE\020\005B\236\001\n\031com.google.maps.place" + + "s.v1B\nPlaceProtoP\001Z7cloud.google.com/go/" + + "maps/places/apiv1/placespb;placespb\370\001\001\242\002" + + "\006GMPSV1\252\002\025Google.Maps.Places.V1\312\002\025Google" + + "\\Maps\\Places\\V1b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] { com.google.api.FieldBehaviorProto.getDescriptor(), + com.google.api.ResourceProto.getDescriptor(), com.google.geo.type.ViewportProto.getDescriptor(), - com.google.protobuf.TimestampProto.getDescriptor(), + com.google.maps.places.v1.EvChargingProto.getDescriptor(), + com.google.maps.places.v1.FuelOptionsProto.getDescriptor(), + com.google.maps.places.v1.PhotoProto.getDescriptor(), + com.google.maps.places.v1.ReviewProto.getDescriptor(), com.google.type.DateProto.getDescriptor(), com.google.type.LatLngProto.getDescriptor(), com.google.type.LocalizedTextProto.getDescriptor(), @@ -196,6 +261,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_maps_places_v1_Place_descriptor, new java.lang.String[] { + "Name", "Id", "DisplayName", "Types", @@ -210,8 +276,9 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "GoogleMapsUri", "WebsiteUri", "Reviews", - "OpeningHours", + "RegularOpeningHours", "UtcOffsetMinutes", + "Photos", "AdrFormatAddress", "BusinessStatus", "PriceLevel", @@ -223,7 +290,6 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Delivery", "DineIn", "CurbsidePickup", - "WheelchairAccessibleEntrance", "Reservable", "ServesBreakfast", "ServesLunch", @@ -234,13 +300,31 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ServesVegetarianFood", "CurrentOpeningHours", "CurrentSecondaryOpeningHours", - "SecondaryOpeningHours", + "RegularSecondaryOpeningHours", "EditorialSummary", + "OutdoorSeating", + "LiveMusic", + "MenuForChildren", + "ServesCocktails", + "ServesDessert", + "ServesCoffee", + "GoodForChildren", + "AllowsDogs", + "Restroom", + "GoodForGroups", + "GoodForWatchingSports", + "PaymentOptions", + "ParkingOptions", + "SubDestinations", + "AccessibilityOptions", + "FuelOptions", + "EvChargeOptions", + "UtcOffsetMinutes", + "UserRatingCount", "Takeout", "Delivery", "DineIn", "CurbsidePickup", - "WheelchairAccessibleEntrance", "Reservable", "ServesBreakfast", "ServesLunch", @@ -249,6 +333,18 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ServesWine", "ServesBrunch", "ServesVegetarianFood", + "OutdoorSeating", + "LiveMusic", + "MenuForChildren", + "ServesCocktails", + "ServesDessert", + "ServesCoffee", + "GoodForChildren", + "AllowsDogs", + "Restroom", + "GoodForGroups", + "GoodForWatchingSports", + "AccessibilityOptions", }); internal_static_google_maps_places_v1_Place_AddressComponent_descriptor = internal_static_google_maps_places_v1_Place_descriptor.getNestedTypes().get(0); @@ -266,55 +362,36 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "GlobalCode", "CompoundCode", }); - internal_static_google_maps_places_v1_Place_Review_descriptor = - internal_static_google_maps_places_v1_Place_descriptor.getNestedTypes().get(2); - internal_static_google_maps_places_v1_Place_Review_fieldAccessorTable = - new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_google_maps_places_v1_Place_Review_descriptor, - new java.lang.String[] { - "PublishTime", - "RelativePublishTimeDescription", - "Text", - "Author", - "AuthorUri", - "AuthorPhotoUri", - "Rating", - "OriginalLanguageCode", - "Translated", - }); internal_static_google_maps_places_v1_Place_OpeningHours_descriptor = - internal_static_google_maps_places_v1_Place_descriptor.getNestedTypes().get(3); + internal_static_google_maps_places_v1_Place_descriptor.getNestedTypes().get(2); internal_static_google_maps_places_v1_Place_OpeningHours_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_maps_places_v1_Place_OpeningHours_descriptor, new java.lang.String[] { - "OpenNow", "Periods", "WeekdayDescriptions", "SecondaryHourType", "SpecialDays", + "OpenNow", + "Periods", + "WeekdayDescriptions", + "SecondaryHoursType", + "SpecialDays", + "OpenNow", }); - internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_descriptor = + internal_static_google_maps_places_v1_Place_OpeningHours_Period_descriptor = internal_static_google_maps_places_v1_Place_OpeningHours_descriptor.getNestedTypes().get(0); - internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_fieldAccessorTable = + internal_static_google_maps_places_v1_Place_OpeningHours_Period_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_descriptor, + internal_static_google_maps_places_v1_Place_OpeningHours_Period_descriptor, new java.lang.String[] { "Open", "Close", }); - internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_OpeningHoursPoint_descriptor = - internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_descriptor + internal_static_google_maps_places_v1_Place_OpeningHours_Period_Point_descriptor = + internal_static_google_maps_places_v1_Place_OpeningHours_Period_descriptor .getNestedTypes() .get(0); - internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_OpeningHoursPoint_fieldAccessorTable = + internal_static_google_maps_places_v1_Place_OpeningHours_Period_Point_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_google_maps_places_v1_Place_OpeningHours_OpeningHoursPeriod_OpeningHoursPoint_descriptor, + internal_static_google_maps_places_v1_Place_OpeningHours_Period_Point_descriptor, new java.lang.String[] { - "Day", - "Hour", - "Minute", - "DateDeprecated", - "Date", - "Truncated", - "Day", - "Hour", - "Minute", + "Day", "Hour", "Minute", "Date", "Truncated", "Day", "Hour", "Minute", }); internal_static_google_maps_places_v1_Place_OpeningHours_SpecialDay_descriptor = internal_static_google_maps_places_v1_Place_OpeningHours_descriptor.getNestedTypes().get(1); @@ -325,29 +402,79 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Date", }); internal_static_google_maps_places_v1_Place_Attribution_descriptor = - internal_static_google_maps_places_v1_Place_descriptor.getNestedTypes().get(4); + internal_static_google_maps_places_v1_Place_descriptor.getNestedTypes().get(3); internal_static_google_maps_places_v1_Place_Attribution_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_maps_places_v1_Place_Attribution_descriptor, new java.lang.String[] { "Provider", "ProviderUri", }); - internal_static_google_maps_places_v1_Place_EditorialSummary_descriptor = + internal_static_google_maps_places_v1_Place_PaymentOptions_descriptor = + internal_static_google_maps_places_v1_Place_descriptor.getNestedTypes().get(4); + internal_static_google_maps_places_v1_Place_PaymentOptions_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_Place_PaymentOptions_descriptor, + new java.lang.String[] { + "AcceptsCreditCards", + "AcceptsDebitCards", + "AcceptsCashOnly", + "AcceptsNfc", + "AcceptsCreditCards", + "AcceptsDebitCards", + "AcceptsCashOnly", + "AcceptsNfc", + }); + internal_static_google_maps_places_v1_Place_ParkingOptions_descriptor = internal_static_google_maps_places_v1_Place_descriptor.getNestedTypes().get(5); - internal_static_google_maps_places_v1_Place_EditorialSummary_fieldAccessorTable = + internal_static_google_maps_places_v1_Place_ParkingOptions_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_Place_ParkingOptions_descriptor, + new java.lang.String[] { + "FreeParkingLot", + "PaidParkingLot", + "FreeStreetParking", + "PaidStreetParking", + "ValetParking", + "FreeGarageParking", + "PaidGarageParking", + "FreeParkingLot", + "PaidParkingLot", + "FreeStreetParking", + "PaidStreetParking", + "ValetParking", + "FreeGarageParking", + "PaidGarageParking", + }); + internal_static_google_maps_places_v1_Place_SubDestination_descriptor = + internal_static_google_maps_places_v1_Place_descriptor.getNestedTypes().get(6); + internal_static_google_maps_places_v1_Place_SubDestination_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_Place_SubDestination_descriptor, + new java.lang.String[] { + "Name", "Id", + }); + internal_static_google_maps_places_v1_Place_AccessibilityOptions_descriptor = + internal_static_google_maps_places_v1_Place_descriptor.getNestedTypes().get(7); + internal_static_google_maps_places_v1_Place_AccessibilityOptions_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_google_maps_places_v1_Place_EditorialSummary_descriptor, + internal_static_google_maps_places_v1_Place_AccessibilityOptions_descriptor, new java.lang.String[] { - "Overview", + "WheelchairAccessibleEntrance", "WheelchairAccessibleEntrance", }); com.google.protobuf.ExtensionRegistry registry = com.google.protobuf.ExtensionRegistry.newInstance(); registry.add(com.google.api.FieldBehaviorProto.fieldBehavior); + registry.add(com.google.api.ResourceProto.resource); + registry.add(com.google.api.ResourceProto.resourceReference); com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor( descriptor, registry); com.google.api.FieldBehaviorProto.getDescriptor(); + com.google.api.ResourceProto.getDescriptor(); com.google.geo.type.ViewportProto.getDescriptor(); - com.google.protobuf.TimestampProto.getDescriptor(); + com.google.maps.places.v1.EvChargingProto.getDescriptor(); + com.google.maps.places.v1.FuelOptionsProto.getDescriptor(); + com.google.maps.places.v1.PhotoProto.getDescriptor(); + com.google.maps.places.v1.ReviewProto.getDescriptor(); com.google.type.DateProto.getDescriptor(); com.google.type.LatLngProto.getDescriptor(); com.google.type.LocalizedTextProto.getDescriptor(); diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlacesServiceProto.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlacesServiceProto.java index 5ffa1ada3750..1b6c3b99752d 100644 --- a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlacesServiceProto.java +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PlacesServiceProto.java @@ -28,17 +28,21 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r } static final com.google.protobuf.Descriptors.Descriptor - internal_static_google_maps_places_v1_Int32Range_descriptor; + internal_static_google_maps_places_v1_SearchNearbyRequest_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_google_maps_places_v1_Int32Range_fieldAccessorTable; + internal_static_google_maps_places_v1_SearchNearbyRequest_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor - internal_static_google_maps_places_v1_SearchTextRequest_descriptor; + internal_static_google_maps_places_v1_SearchNearbyRequest_LocationRestriction_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_google_maps_places_v1_SearchTextRequest_fieldAccessorTable; + internal_static_google_maps_places_v1_SearchNearbyRequest_LocationRestriction_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_maps_places_v1_SearchNearbyResponse_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_maps_places_v1_SearchNearbyResponse_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor - internal_static_google_maps_places_v1_SearchTextRequest_Location_descriptor; + internal_static_google_maps_places_v1_SearchTextRequest_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_google_maps_places_v1_SearchTextRequest_Location_fieldAccessorTable; + internal_static_google_maps_places_v1_SearchTextRequest_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_maps_places_v1_SearchTextRequest_LocationBias_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable @@ -51,6 +55,18 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_maps_places_v1_SearchTextResponse_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_google_maps_places_v1_SearchTextResponse_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_maps_places_v1_GetPhotoMediaRequest_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_maps_places_v1_GetPhotoMediaRequest_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_maps_places_v1_PhotoMedia_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_maps_places_v1_PhotoMedia_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_maps_places_v1_GetPlaceRequest_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_maps_places_v1_GetPlaceRequest_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { return descriptor; @@ -63,48 +79,78 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "\n*google/maps/places/v1/places_service.p" + "roto\022\025google.maps.places.v1\032\034google/api/" + "annotations.proto\032\027google/api/client.pro" - + "to\032\037google/api/field_behavior.proto\032\036goo" - + "gle/geo/type/viewport.proto\032$google/maps" - + "/places/v1/geometry.proto\032!google/maps/p" - + "laces/v1/place.proto\"@\n\nInt32Range\022\020\n\003mi" - + "n\030\001 \001(\005H\000\210\001\001\022\020\n\003max\030\002 \001(\005H\001\210\001\001B\006\n\004_minB\006" - + "\n\004_max\"\200\010\n\021SearchTextRequest\022\027\n\ntext_que" - + "ry\030\001 \001(\tB\003\340A\002\022\025\n\rlanguage_code\030\002 \001(\t\022\023\n\013" - + "region_code\030\003 \001(\t\022P\n\017rank_preference\030\004 \001" - + "(\01627.google.maps.places.v1.SearchTextReq" - + "uest.RankPreference\022G\n\010location\030\005 \001(\01321." - + "google.maps.places.v1.SearchTextRequest." - + "LocationB\002\030\001\022\025\n\rincluded_type\030\006 \001(\t\022\020\n\010o" - + "pen_now\030\007 \001(\010\022:\n\013price_range\030\010 \001(\0132!.goo" - + "gle.maps.places.v1.Int32RangeB\002\030\001\022\022\n\nmin" - + "_rating\030\t \001(\001\022\030\n\020max_result_count\030\n \001(\005\022" - + "7\n\014price_levels\030\013 \003(\0162!.google.maps.plac" - + "es.v1.PriceLevel\022\035\n\025strict_type_filterin" - + "g\030\014 \001(\010\022L\n\rlocation_bias\030\r \001(\01325.google." - + "maps.places.v1.SearchTextRequest.Locatio" - + "nBias\022Z\n\024location_restriction\030\016 \001(\0132<.go" - + "ogle.maps.places.v1.SearchTextRequest.Lo" - + "cationRestriction\032^\n\010Location\022.\n\trectang" - + "le\030\001 \001(\0132\031.google.geo.type.ViewportH\000\022\032\n" - + "\022strict_restriction\030\002 \001(\010B\006\n\004type\032w\n\014Loc" - + "ationBias\022.\n\trectangle\030\001 \001(\0132\031.google.ge" - + "o.type.ViewportH\000\022/\n\006circle\030\002 \001(\0132\035.goog" - + "le.maps.places.v1.CircleH\000B\006\n\004type\032M\n\023Lo" - + "cationRestriction\022.\n\trectangle\030\001 \001(\0132\031.g" - + "oogle.geo.type.ViewportH\000B\006\n\004type\"N\n\016Ran" - + "kPreference\022\037\n\033RANK_PREFERENCE_UNSPECIFI" - + "ED\020\000\022\014\n\010DISTANCE\020\001\022\r\n\tRELEVANCE\020\002\"B\n\022Sea" - + "rchTextResponse\022,\n\006places\030\001 \003(\0132\034.google" - + ".maps.places.v1.Place2\241\001\n\006Places\022}\n\nSear" - + "chText\022(.google.maps.places.v1.SearchTex" - + "tRequest\032).google.maps.places.v1.SearchT" - + "extResponse\"\032\202\323\344\223\002\024\"\017/v1/Text:search:\001*\032" - + "\030\312A\025places.googleapis.comB\252\001\n\031com.google" - + ".maps.places.v1B\022PlacesServiceProtoP\001Z;g" - + "oogle.golang.org/genproto/googleapis/map" - + "s/places/v1;places\370\001\001\242\002\006GMPSV1\252\002\025Google." - + "Maps.Places.V1\312\002\025Google\\Maps\\Places\\V1b\006" - + "proto3" + + "to\032\037google/api/field_behavior.proto\032\031goo" + + "gle/api/resource.proto\032\036google/geo/type/" + + "viewport.proto\032$google/maps/places/v1/ge" + + "ometry.proto\032!google/maps/places/v1/plac" + + "e.proto\"\244\004\n\023SearchNearbyRequest\022\025\n\rlangu" + + "age_code\030\001 \001(\t\022\023\n\013region_code\030\002 \001(\t\022\026\n\016i" + + "ncluded_types\030\003 \003(\t\022\026\n\016excluded_types\030\004 " + + "\003(\t\022\036\n\026included_primary_types\030\005 \003(\t\022\036\n\026e" + + "xcluded_primary_types\030\006 \003(\t\022\030\n\020max_resul" + + "t_count\030\007 \001(\005\022b\n\024location_restriction\030\010 " + + "\001(\0132>.google.maps.places.v1.SearchNearby" + + "Request.LocationRestrictionB\004\342A\001\002\022R\n\017ran" + + "k_preference\030\t \001(\01629.google.maps.places." + + "v1.SearchNearbyRequest.RankPreference\032N\n" + + "\023LocationRestriction\022/\n\006circle\030\002 \001(\0132\035.g" + + "oogle.maps.places.v1.CircleH\000B\006\n\004type\"O\n" + + "\016RankPreference\022\037\n\033RANK_PREFERENCE_UNSPE" + + "CIFIED\020\000\022\014\n\010DISTANCE\020\001\022\016\n\nPOPULARITY\020\002\"D" + + "\n\024SearchNearbyResponse\022,\n\006places\030\001 \003(\0132\034" + + ".google.maps.places.v1.Place\"\234\006\n\021SearchT" + + "extRequest\022\030\n\ntext_query\030\001 \001(\tB\004\342A\001\002\022\025\n\r" + + "language_code\030\002 \001(\t\022\023\n\013region_code\030\003 \001(\t" + + "\022P\n\017rank_preference\030\004 \001(\01627.google.maps." + + "places.v1.SearchTextRequest.RankPreferen" + + "ce\022\025\n\rincluded_type\030\006 \001(\t\022\020\n\010open_now\030\007 " + + "\001(\010\022\022\n\nmin_rating\030\t \001(\001\022\030\n\020max_result_co" + + "unt\030\n \001(\005\0227\n\014price_levels\030\013 \003(\0162!.google" + + ".maps.places.v1.PriceLevel\022\035\n\025strict_typ" + + "e_filtering\030\014 \001(\010\022L\n\rlocation_bias\030\r \001(\013" + + "25.google.maps.places.v1.SearchTextReque" + + "st.LocationBias\022Z\n\024location_restriction\030" + + "\016 \001(\0132<.google.maps.places.v1.SearchText" + + "Request.LocationRestriction\032w\n\014LocationB" + + "ias\022.\n\trectangle\030\001 \001(\0132\031.google.geo.type" + + ".ViewportH\000\022/\n\006circle\030\002 \001(\0132\035.google.map" + + "s.places.v1.CircleH\000B\006\n\004type\032M\n\023Location" + + "Restriction\022.\n\trectangle\030\001 \001(\0132\031.google." + + "geo.type.ViewportH\000B\006\n\004type\"N\n\016RankPrefe" + + "rence\022\037\n\033RANK_PREFERENCE_UNSPECIFIED\020\000\022\014" + + "\n\010DISTANCE\020\001\022\r\n\tRELEVANCE\020\002\"B\n\022SearchTex" + + "tResponse\022,\n\006places\030\001 \003(\0132\034.google.maps." + + "places.v1.Place\"\252\001\n\024GetPhotoMediaRequest" + + "\0227\n\004name\030\001 \001(\tB)\342A\001\002\372A\"\n places.googleap" + + "is.com/PhotoMedia\022\032\n\014max_width_px\030\002 \001(\005B" + + "\004\342A\001\001\022\033\n\rmax_height_px\030\003 \001(\005B\004\342A\001\001\022 \n\022sk" + + "ip_http_redirect\030\004 \001(\010B\004\342A\001\001\"\237\001\n\nPhotoMe" + + "dia\022\014\n\004name\030\001 \001(\t\022\021\n\tphoto_uri\030\002 \001(\t:p\352A" + + "m\n places.googleapis.com/PhotoMedia\0220pla" + + "ces/{place_id}/photos/{photo_reference}/" + + "media*\013photoMedias2\nphotoMedia\"}\n\017GetPla" + + "ceRequest\0222\n\004name\030\001 \001(\tB$\342A\001\002\372A\035\n\033places" + + ".googleapis.com/Place\022\033\n\rlanguage_code\030\002" + + " \001(\tB\004\342A\001\001\022\031\n\013region_code\030\003 \001(\tB\004\342A\001\0012\301\004" + + "\n\006Places\022\213\001\n\014SearchNearby\022*.google.maps." + + "places.v1.SearchNearbyRequest\032+.google.m" + + "aps.places.v1.SearchNearbyResponse\"\"\202\323\344\223" + + "\002\034\"\027/v1/places:searchNearby:\001*\022\203\001\n\nSearc" + + "hText\022(.google.maps.places.v1.SearchText" + + "Request\032).google.maps.places.v1.SearchTe" + + "xtResponse\" \202\323\344\223\002\032\"\025/v1/places:searchTex" + + "t:\001*\022\222\001\n\rGetPhotoMedia\022+.google.maps.pla" + + "ces.v1.GetPhotoMediaRequest\032!.google.map" + + "s.places.v1.PhotoMedia\"1\332A\004name\202\323\344\223\002$\022\"/" + + "v1/{name=places/*/photos/*/media}\022t\n\010Get" + + "Place\022&.google.maps.places.v1.GetPlaceRe" + + "quest\032\034.google.maps.places.v1.Place\"\"\332A\004" + + "name\202\323\344\223\002\025\022\023/v1/{name=places/*}\032\030\312A\025plac" + + "es.googleapis.comB\246\001\n\031com.google.maps.pl" + + "aces.v1B\022PlacesServiceProtoP\001Z7cloud.goo" + + "gle.com/go/maps/places/apiv1/placespb;pl" + + "acespb\370\001\001\242\002\006GMPSV1\252\002\025Google.Maps.Places." + + "V1\312\002\025Google\\Maps\\Places\\V1b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -113,20 +159,47 @@ 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.ResourceProto.getDescriptor(), com.google.geo.type.ViewportProto.getDescriptor(), com.google.maps.places.v1.GeometryProto.getDescriptor(), com.google.maps.places.v1.PlaceProto.getDescriptor(), }); - internal_static_google_maps_places_v1_Int32Range_descriptor = + internal_static_google_maps_places_v1_SearchNearbyRequest_descriptor = getDescriptor().getMessageTypes().get(0); - internal_static_google_maps_places_v1_Int32Range_fieldAccessorTable = + internal_static_google_maps_places_v1_SearchNearbyRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_google_maps_places_v1_Int32Range_descriptor, + internal_static_google_maps_places_v1_SearchNearbyRequest_descriptor, new java.lang.String[] { - "Min", "Max", "Min", "Max", + "LanguageCode", + "RegionCode", + "IncludedTypes", + "ExcludedTypes", + "IncludedPrimaryTypes", + "ExcludedPrimaryTypes", + "MaxResultCount", + "LocationRestriction", + "RankPreference", }); - internal_static_google_maps_places_v1_SearchTextRequest_descriptor = + internal_static_google_maps_places_v1_SearchNearbyRequest_LocationRestriction_descriptor = + internal_static_google_maps_places_v1_SearchNearbyRequest_descriptor + .getNestedTypes() + .get(0); + internal_static_google_maps_places_v1_SearchNearbyRequest_LocationRestriction_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_SearchNearbyRequest_LocationRestriction_descriptor, + new java.lang.String[] { + "Circle", "Type", + }); + internal_static_google_maps_places_v1_SearchNearbyResponse_descriptor = getDescriptor().getMessageTypes().get(1); + internal_static_google_maps_places_v1_SearchNearbyResponse_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_SearchNearbyResponse_descriptor, + new java.lang.String[] { + "Places", + }); + internal_static_google_maps_places_v1_SearchTextRequest_descriptor = + getDescriptor().getMessageTypes().get(2); internal_static_google_maps_places_v1_SearchTextRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_maps_places_v1_SearchTextRequest_descriptor, @@ -135,10 +208,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "LanguageCode", "RegionCode", "RankPreference", - "Location", "IncludedType", "OpenNow", - "PriceRange", "MinRating", "MaxResultCount", "PriceLevels", @@ -146,16 +217,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "LocationBias", "LocationRestriction", }); - internal_static_google_maps_places_v1_SearchTextRequest_Location_descriptor = - internal_static_google_maps_places_v1_SearchTextRequest_descriptor.getNestedTypes().get(0); - internal_static_google_maps_places_v1_SearchTextRequest_Location_fieldAccessorTable = - new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_google_maps_places_v1_SearchTextRequest_Location_descriptor, - new java.lang.String[] { - "Rectangle", "StrictRestriction", "Type", - }); internal_static_google_maps_places_v1_SearchTextRequest_LocationBias_descriptor = - internal_static_google_maps_places_v1_SearchTextRequest_descriptor.getNestedTypes().get(1); + internal_static_google_maps_places_v1_SearchTextRequest_descriptor.getNestedTypes().get(0); internal_static_google_maps_places_v1_SearchTextRequest_LocationBias_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_maps_places_v1_SearchTextRequest_LocationBias_descriptor, @@ -163,7 +226,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Rectangle", "Circle", "Type", }); internal_static_google_maps_places_v1_SearchTextRequest_LocationRestriction_descriptor = - internal_static_google_maps_places_v1_SearchTextRequest_descriptor.getNestedTypes().get(2); + internal_static_google_maps_places_v1_SearchTextRequest_descriptor.getNestedTypes().get(1); internal_static_google_maps_places_v1_SearchTextRequest_LocationRestriction_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_maps_places_v1_SearchTextRequest_LocationRestriction_descriptor, @@ -171,23 +234,51 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Rectangle", "Type", }); internal_static_google_maps_places_v1_SearchTextResponse_descriptor = - getDescriptor().getMessageTypes().get(2); + getDescriptor().getMessageTypes().get(3); internal_static_google_maps_places_v1_SearchTextResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_maps_places_v1_SearchTextResponse_descriptor, new java.lang.String[] { "Places", }); + internal_static_google_maps_places_v1_GetPhotoMediaRequest_descriptor = + getDescriptor().getMessageTypes().get(4); + internal_static_google_maps_places_v1_GetPhotoMediaRequest_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_GetPhotoMediaRequest_descriptor, + new java.lang.String[] { + "Name", "MaxWidthPx", "MaxHeightPx", "SkipHttpRedirect", + }); + internal_static_google_maps_places_v1_PhotoMedia_descriptor = + getDescriptor().getMessageTypes().get(5); + internal_static_google_maps_places_v1_PhotoMedia_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_PhotoMedia_descriptor, + new java.lang.String[] { + "Name", "PhotoUri", + }); + internal_static_google_maps_places_v1_GetPlaceRequest_descriptor = + getDescriptor().getMessageTypes().get(6); + internal_static_google_maps_places_v1_GetPlaceRequest_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_GetPlaceRequest_descriptor, + new java.lang.String[] { + "Name", "LanguageCode", "RegionCode", + }); com.google.protobuf.ExtensionRegistry registry = com.google.protobuf.ExtensionRegistry.newInstance(); registry.add(com.google.api.ClientProto.defaultHost); registry.add(com.google.api.FieldBehaviorProto.fieldBehavior); registry.add(com.google.api.AnnotationsProto.http); + registry.add(com.google.api.ClientProto.methodSignature); + registry.add(com.google.api.ResourceProto.resource); + registry.add(com.google.api.ResourceProto.resourceReference); com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor( descriptor, registry); com.google.api.AnnotationsProto.getDescriptor(); com.google.api.ClientProto.getDescriptor(); com.google.api.FieldBehaviorProto.getDescriptor(); + com.google.api.ResourceProto.getDescriptor(); com.google.geo.type.ViewportProto.getDescriptor(); com.google.maps.places.v1.GeometryProto.getDescriptor(); com.google.maps.places.v1.PlaceProto.getDescriptor(); diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PriceLevel.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PriceLevel.java index f26894a05017..cd50b74da649 100644 --- a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PriceLevel.java +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/PriceLevel.java @@ -38,8 +38,16 @@ public enum PriceLevel implements com.google.protobuf.ProtocolMessageEnum { * PRICE_LEVEL_UNSPECIFIED = 0; */ PRICE_LEVEL_UNSPECIFIED(0), - /** FREE = 1; */ - FREE(1), + /** + * + * + *
+   * Place provides free services.
+   * 
+ * + * PRICE_LEVEL_FREE = 1; + */ + PRICE_LEVEL_FREE(1), /** * * @@ -47,9 +55,9 @@ public enum PriceLevel implements com.google.protobuf.ProtocolMessageEnum { * Place provides inexpensive services. *
* - * INEXPENSIVE = 2; + * PRICE_LEVEL_INEXPENSIVE = 2; */ - INEXPENSIVE(2), + PRICE_LEVEL_INEXPENSIVE(2), /** * * @@ -57,9 +65,9 @@ public enum PriceLevel implements com.google.protobuf.ProtocolMessageEnum { * Place provides moderately priced services. *
* - * MODERATE = 3; + * PRICE_LEVEL_MODERATE = 3; */ - MODERATE(3), + PRICE_LEVEL_MODERATE(3), /** * * @@ -67,19 +75,19 @@ public enum PriceLevel implements com.google.protobuf.ProtocolMessageEnum { * Place provides expensive services. * * - * EXPENSIVE = 4; + * PRICE_LEVEL_EXPENSIVE = 4; */ - EXPENSIVE(4), + PRICE_LEVEL_EXPENSIVE(4), /** * * *
-   * Place provides very expensive services.
+   * Place provides very expensive service s.
    * 
* - * VERY_EXPENSIVE = 5; + * PRICE_LEVEL_VERY_EXPENSIVE = 5; */ - VERY_EXPENSIVE(5), + PRICE_LEVEL_VERY_EXPENSIVE(5), UNRECOGNIZED(-1), ; @@ -93,8 +101,16 @@ public enum PriceLevel implements com.google.protobuf.ProtocolMessageEnum { * PRICE_LEVEL_UNSPECIFIED = 0; */ public static final int PRICE_LEVEL_UNSPECIFIED_VALUE = 0; - /** FREE = 1; */ - public static final int FREE_VALUE = 1; + /** + * + * + *
+   * Place provides free services.
+   * 
+ * + * PRICE_LEVEL_FREE = 1; + */ + public static final int PRICE_LEVEL_FREE_VALUE = 1; /** * * @@ -102,9 +118,9 @@ public enum PriceLevel implements com.google.protobuf.ProtocolMessageEnum { * Place provides inexpensive services. * * - * INEXPENSIVE = 2; + * PRICE_LEVEL_INEXPENSIVE = 2; */ - public static final int INEXPENSIVE_VALUE = 2; + public static final int PRICE_LEVEL_INEXPENSIVE_VALUE = 2; /** * * @@ -112,9 +128,9 @@ public enum PriceLevel implements com.google.protobuf.ProtocolMessageEnum { * Place provides moderately priced services. * * - * MODERATE = 3; + * PRICE_LEVEL_MODERATE = 3; */ - public static final int MODERATE_VALUE = 3; + public static final int PRICE_LEVEL_MODERATE_VALUE = 3; /** * * @@ -122,19 +138,19 @@ public enum PriceLevel implements com.google.protobuf.ProtocolMessageEnum { * Place provides expensive services. * * - * EXPENSIVE = 4; + * PRICE_LEVEL_EXPENSIVE = 4; */ - public static final int EXPENSIVE_VALUE = 4; + public static final int PRICE_LEVEL_EXPENSIVE_VALUE = 4; /** * * *
-   * Place provides very expensive services.
+   * Place provides very expensive service s.
    * 
* - * VERY_EXPENSIVE = 5; + * PRICE_LEVEL_VERY_EXPENSIVE = 5; */ - public static final int VERY_EXPENSIVE_VALUE = 5; + public static final int PRICE_LEVEL_VERY_EXPENSIVE_VALUE = 5; public final int getNumber() { if (this == UNRECOGNIZED) { @@ -163,15 +179,15 @@ public static PriceLevel forNumber(int value) { case 0: return PRICE_LEVEL_UNSPECIFIED; case 1: - return FREE; + return PRICE_LEVEL_FREE; case 2: - return INEXPENSIVE; + return PRICE_LEVEL_INEXPENSIVE; case 3: - return MODERATE; + return PRICE_LEVEL_MODERATE; case 4: - return EXPENSIVE; + return PRICE_LEVEL_EXPENSIVE; case 5: - return VERY_EXPENSIVE; + return PRICE_LEVEL_VERY_EXPENSIVE; default: return null; } diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Review.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Review.java new file mode 100644 index 000000000000..e70ca7f208f5 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/Review.java @@ -0,0 +1,2076 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/review.proto + +package com.google.maps.places.v1; + +/** + * + * + *
+ * Information about a review of a place.
+ * 
+ * + * Protobuf type {@code google.maps.places.v1.Review} + */ +public final class Review extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.Review) + ReviewOrBuilder { + private static final long serialVersionUID = 0L; + // Use Review.newBuilder() to construct. + private Review(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private Review() { + name_ = ""; + relativePublishTimeDescription_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new Review(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.ReviewProto + .internal_static_google_maps_places_v1_Review_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.ReviewProto + .internal_static_google_maps_places_v1_Review_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Review.class, com.google.maps.places.v1.Review.Builder.class); + } + + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + /** + * + * + *
+   * Output only. A reference representing this place review which may be used
+   * to look up this place review again (a.k.a. the API "resource" name:
+   * places/{place_id}/reviews/{review}).
+   * 
+ * + * string name = 1 [(.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. A reference representing this place review which may be used
+   * to look up this place review again (a.k.a. the API "resource" name:
+   * places/{place_id}/reviews/{review}).
+   * 
+ * + * string name = 1 [(.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 final int RELATIVE_PUBLISH_TIME_DESCRIPTION_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object relativePublishTimeDescription_ = ""; + /** + * + * + *
+   * Output only. A string of formatted recent time, expressing the review time
+   * relative to the current time in a form appropriate for the language and
+   * country.
+   * 
+ * + * + * string relative_publish_time_description = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The relativePublishTimeDescription. + */ + @java.lang.Override + public java.lang.String getRelativePublishTimeDescription() { + java.lang.Object ref = relativePublishTimeDescription_; + 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(); + relativePublishTimeDescription_ = s; + return s; + } + } + /** + * + * + *
+   * Output only. A string of formatted recent time, expressing the review time
+   * relative to the current time in a form appropriate for the language and
+   * country.
+   * 
+ * + * + * string relative_publish_time_description = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for relativePublishTimeDescription. + */ + @java.lang.Override + public com.google.protobuf.ByteString getRelativePublishTimeDescriptionBytes() { + java.lang.Object ref = relativePublishTimeDescription_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + relativePublishTimeDescription_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int TEXT_FIELD_NUMBER = 9; + private com.google.type.LocalizedText text_; + /** + * + * + *
+   * Output only. The localized text of the review.
+   * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the text field is set. + */ + @java.lang.Override + public boolean hasText() { + return text_ != null; + } + /** + * + * + *
+   * Output only. The localized text of the review.
+   * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The text. + */ + @java.lang.Override + public com.google.type.LocalizedText getText() { + return text_ == null ? com.google.type.LocalizedText.getDefaultInstance() : text_; + } + /** + * + * + *
+   * Output only. The localized text of the review.
+   * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + @java.lang.Override + public com.google.type.LocalizedTextOrBuilder getTextOrBuilder() { + return text_ == null ? com.google.type.LocalizedText.getDefaultInstance() : text_; + } + + public static final int ORIGINAL_TEXT_FIELD_NUMBER = 12; + private com.google.type.LocalizedText originalText_; + /** + * + * + *
+   * Output only. The review text in its original language.
+   * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the originalText field is set. + */ + @java.lang.Override + public boolean hasOriginalText() { + return originalText_ != null; + } + /** + * + * + *
+   * Output only. The review text in its original language.
+   * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The originalText. + */ + @java.lang.Override + public com.google.type.LocalizedText getOriginalText() { + return originalText_ == null + ? com.google.type.LocalizedText.getDefaultInstance() + : originalText_; + } + /** + * + * + *
+   * Output only. The review text in its original language.
+   * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.type.LocalizedTextOrBuilder getOriginalTextOrBuilder() { + return originalText_ == null + ? com.google.type.LocalizedText.getDefaultInstance() + : originalText_; + } + + public static final int RATING_FIELD_NUMBER = 7; + private double rating_ = 0D; + /** + * + * + *
+   * Output only. A number between 1.0 and 5.0, a.k.a. the number of stars.
+   * 
+ * + * double rating = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The rating. + */ + @java.lang.Override + public double getRating() { + return rating_; + } + + public static final int AUTHOR_ATTRIBUTION_FIELD_NUMBER = 13; + private com.google.maps.places.v1.AuthorAttribution authorAttribution_; + /** + * + * + *
+   * Output only. This review's author.
+   * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the authorAttribution field is set. + */ + @java.lang.Override + public boolean hasAuthorAttribution() { + return authorAttribution_ != null; + } + /** + * + * + *
+   * Output only. This review's author.
+   * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The authorAttribution. + */ + @java.lang.Override + public com.google.maps.places.v1.AuthorAttribution getAuthorAttribution() { + return authorAttribution_ == null + ? com.google.maps.places.v1.AuthorAttribution.getDefaultInstance() + : authorAttribution_; + } + /** + * + * + *
+   * Output only. This review's author.
+   * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.AuthorAttributionOrBuilder getAuthorAttributionOrBuilder() { + return authorAttribution_ == null + ? com.google.maps.places.v1.AuthorAttribution.getDefaultInstance() + : authorAttribution_; + } + + public static final int PUBLISH_TIME_FIELD_NUMBER = 14; + private com.google.protobuf.Timestamp publishTime_; + /** + * + * + *
+   * Output only. Timestamp for the review.
+   * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the publishTime field is set. + */ + @java.lang.Override + public boolean hasPublishTime() { + return publishTime_ != null; + } + /** + * + * + *
+   * Output only. Timestamp for the review.
+   * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The publishTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getPublishTime() { + return publishTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : publishTime_; + } + /** + * + * + *
+   * Output only. Timestamp for the review.
+   * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getPublishTimeOrBuilder() { + return publishTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : publishTime_; + } + + 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.GeneratedMessageV3.isStringEmpty(name_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(relativePublishTimeDescription_)) { + com.google.protobuf.GeneratedMessageV3.writeString( + output, 2, relativePublishTimeDescription_); + } + if (java.lang.Double.doubleToRawLongBits(rating_) != 0) { + output.writeDouble(7, rating_); + } + if (text_ != null) { + output.writeMessage(9, getText()); + } + if (originalText_ != null) { + output.writeMessage(12, getOriginalText()); + } + if (authorAttribution_ != null) { + output.writeMessage(13, getAuthorAttribution()); + } + if (publishTime_ != null) { + output.writeMessage(14, getPublishTime()); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(relativePublishTimeDescription_)) { + size += + com.google.protobuf.GeneratedMessageV3.computeStringSize( + 2, relativePublishTimeDescription_); + } + if (java.lang.Double.doubleToRawLongBits(rating_) != 0) { + size += com.google.protobuf.CodedOutputStream.computeDoubleSize(7, rating_); + } + if (text_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(9, getText()); + } + if (originalText_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, getOriginalText()); + } + if (authorAttribution_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(13, getAuthorAttribution()); + } + if (publishTime_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, getPublishTime()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.maps.places.v1.Review)) { + return super.equals(obj); + } + com.google.maps.places.v1.Review other = (com.google.maps.places.v1.Review) obj; + + if (!getName().equals(other.getName())) return false; + if (!getRelativePublishTimeDescription().equals(other.getRelativePublishTimeDescription())) + return false; + if (hasText() != other.hasText()) return false; + if (hasText()) { + if (!getText().equals(other.getText())) return false; + } + if (hasOriginalText() != other.hasOriginalText()) return false; + if (hasOriginalText()) { + if (!getOriginalText().equals(other.getOriginalText())) return false; + } + if (java.lang.Double.doubleToLongBits(getRating()) + != java.lang.Double.doubleToLongBits(other.getRating())) return false; + if (hasAuthorAttribution() != other.hasAuthorAttribution()) return false; + if (hasAuthorAttribution()) { + if (!getAuthorAttribution().equals(other.getAuthorAttribution())) return false; + } + if (hasPublishTime() != other.hasPublishTime()) return false; + if (hasPublishTime()) { + if (!getPublishTime().equals(other.getPublishTime())) 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) + RELATIVE_PUBLISH_TIME_DESCRIPTION_FIELD_NUMBER; + hash = (53 * hash) + getRelativePublishTimeDescription().hashCode(); + if (hasText()) { + hash = (37 * hash) + TEXT_FIELD_NUMBER; + hash = (53 * hash) + getText().hashCode(); + } + if (hasOriginalText()) { + hash = (37 * hash) + ORIGINAL_TEXT_FIELD_NUMBER; + hash = (53 * hash) + getOriginalText().hashCode(); + } + hash = (37 * hash) + RATING_FIELD_NUMBER; + hash = + (53 * hash) + + com.google.protobuf.Internal.hashLong(java.lang.Double.doubleToLongBits(getRating())); + if (hasAuthorAttribution()) { + hash = (37 * hash) + AUTHOR_ATTRIBUTION_FIELD_NUMBER; + hash = (53 * hash) + getAuthorAttribution().hashCode(); + } + if (hasPublishTime()) { + hash = (37 * hash) + PUBLISH_TIME_FIELD_NUMBER; + hash = (53 * hash) + getPublishTime().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.Review parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Review parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Review parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Review parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Review parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.Review parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.Review parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Review parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.Review parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Review parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.Review parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.Review parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.maps.places.v1.Review 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+   * Information about a review of a place.
+   * 
+ * + * Protobuf type {@code google.maps.places.v1.Review} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.Review) + com.google.maps.places.v1.ReviewOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.ReviewProto + .internal_static_google_maps_places_v1_Review_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.ReviewProto + .internal_static_google_maps_places_v1_Review_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.Review.class, + com.google.maps.places.v1.Review.Builder.class); + } + + // Construct using com.google.maps.places.v1.Review.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + relativePublishTimeDescription_ = ""; + text_ = null; + if (textBuilder_ != null) { + textBuilder_.dispose(); + textBuilder_ = null; + } + originalText_ = null; + if (originalTextBuilder_ != null) { + originalTextBuilder_.dispose(); + originalTextBuilder_ = null; + } + rating_ = 0D; + authorAttribution_ = null; + if (authorAttributionBuilder_ != null) { + authorAttributionBuilder_.dispose(); + authorAttributionBuilder_ = null; + } + publishTime_ = null; + if (publishTimeBuilder_ != null) { + publishTimeBuilder_.dispose(); + publishTimeBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.ReviewProto + .internal_static_google_maps_places_v1_Review_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.Review getDefaultInstanceForType() { + return com.google.maps.places.v1.Review.getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.Review build() { + com.google.maps.places.v1.Review result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.Review buildPartial() { + com.google.maps.places.v1.Review result = new com.google.maps.places.v1.Review(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.maps.places.v1.Review result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.relativePublishTimeDescription_ = relativePublishTimeDescription_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.text_ = textBuilder_ == null ? text_ : textBuilder_.build(); + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.originalText_ = + originalTextBuilder_ == null ? originalText_ : originalTextBuilder_.build(); + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.rating_ = rating_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.authorAttribution_ = + authorAttributionBuilder_ == null + ? authorAttribution_ + : authorAttributionBuilder_.build(); + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.publishTime_ = + publishTimeBuilder_ == null ? publishTime_ : publishTimeBuilder_.build(); + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.Review) { + return mergeFrom((com.google.maps.places.v1.Review) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.maps.places.v1.Review other) { + if (other == com.google.maps.places.v1.Review.getDefaultInstance()) return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getRelativePublishTimeDescription().isEmpty()) { + relativePublishTimeDescription_ = other.relativePublishTimeDescription_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (other.hasText()) { + mergeText(other.getText()); + } + if (other.hasOriginalText()) { + mergeOriginalText(other.getOriginalText()); + } + if (other.getRating() != 0D) { + setRating(other.getRating()); + } + if (other.hasAuthorAttribution()) { + mergeAuthorAttribution(other.getAuthorAttribution()); + } + if (other.hasPublishTime()) { + mergePublishTime(other.getPublishTime()); + } + 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: + { + relativePublishTimeDescription_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 57: + { + rating_ = input.readDouble(); + bitField0_ |= 0x00000010; + break; + } // case 57 + case 74: + { + input.readMessage(getTextFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000004; + break; + } // case 74 + case 98: + { + input.readMessage(getOriginalTextFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000008; + break; + } // case 98 + case 106: + { + input.readMessage( + getAuthorAttributionFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000020; + break; + } // case 106 + case 114: + { + input.readMessage(getPublishTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000040; + break; + } // case 114 + 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_ = ""; + /** + * + * + *
+     * Output only. A reference representing this place review which may be used
+     * to look up this place review again (a.k.a. the API "resource" name:
+     * places/{place_id}/reviews/{review}).
+     * 
+ * + * string name = 1 [(.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; + } + } + /** + * + * + *
+     * Output only. A reference representing this place review which may be used
+     * to look up this place review again (a.k.a. the API "resource" name:
+     * places/{place_id}/reviews/{review}).
+     * 
+ * + * string name = 1 [(.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; + } + } + /** + * + * + *
+     * Output only. A reference representing this place review which may be used
+     * to look up this place review again (a.k.a. the API "resource" name:
+     * places/{place_id}/reviews/{review}).
+     * 
+ * + * string name = 1 [(.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; + } + /** + * + * + *
+     * Output only. A reference representing this place review which may be used
+     * to look up this place review again (a.k.a. the API "resource" name:
+     * places/{place_id}/reviews/{review}).
+     * 
+ * + * string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearName() { + name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A reference representing this place review which may be used
+     * to look up this place review again (a.k.a. the API "resource" name:
+     * places/{place_id}/reviews/{review}).
+     * 
+ * + * string name = 1 [(.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 relativePublishTimeDescription_ = ""; + /** + * + * + *
+     * Output only. A string of formatted recent time, expressing the review time
+     * relative to the current time in a form appropriate for the language and
+     * country.
+     * 
+ * + * + * string relative_publish_time_description = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The relativePublishTimeDescription. + */ + public java.lang.String getRelativePublishTimeDescription() { + java.lang.Object ref = relativePublishTimeDescription_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + relativePublishTimeDescription_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Output only. A string of formatted recent time, expressing the review time
+     * relative to the current time in a form appropriate for the language and
+     * country.
+     * 
+ * + * + * string relative_publish_time_description = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for relativePublishTimeDescription. + */ + public com.google.protobuf.ByteString getRelativePublishTimeDescriptionBytes() { + java.lang.Object ref = relativePublishTimeDescription_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + relativePublishTimeDescription_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Output only. A string of formatted recent time, expressing the review time
+     * relative to the current time in a form appropriate for the language and
+     * country.
+     * 
+ * + * + * string relative_publish_time_description = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The relativePublishTimeDescription to set. + * @return This builder for chaining. + */ + public Builder setRelativePublishTimeDescription(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + relativePublishTimeDescription_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A string of formatted recent time, expressing the review time
+     * relative to the current time in a form appropriate for the language and
+     * country.
+     * 
+ * + * + * string relative_publish_time_description = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return This builder for chaining. + */ + public Builder clearRelativePublishTimeDescription() { + relativePublishTimeDescription_ = getDefaultInstance().getRelativePublishTimeDescription(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A string of formatted recent time, expressing the review time
+     * relative to the current time in a form appropriate for the language and
+     * country.
+     * 
+ * + * + * string relative_publish_time_description = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The bytes for relativePublishTimeDescription to set. + * @return This builder for chaining. + */ + public Builder setRelativePublishTimeDescriptionBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + relativePublishTimeDescription_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private com.google.type.LocalizedText text_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LocalizedText, + com.google.type.LocalizedText.Builder, + com.google.type.LocalizedTextOrBuilder> + textBuilder_; + /** + * + * + *
+     * Output only. The localized text of the review.
+     * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the text field is set. + */ + public boolean hasText() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * + * + *
+     * Output only. The localized text of the review.
+     * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The text. + */ + public com.google.type.LocalizedText getText() { + if (textBuilder_ == null) { + return text_ == null ? com.google.type.LocalizedText.getDefaultInstance() : text_; + } else { + return textBuilder_.getMessage(); + } + } + /** + * + * + *
+     * Output only. The localized text of the review.
+     * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setText(com.google.type.LocalizedText value) { + if (textBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + text_ = value; + } else { + textBuilder_.setMessage(value); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The localized text of the review.
+     * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setText(com.google.type.LocalizedText.Builder builderForValue) { + if (textBuilder_ == null) { + text_ = builderForValue.build(); + } else { + textBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The localized text of the review.
+     * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeText(com.google.type.LocalizedText value) { + if (textBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0) + && text_ != null + && text_ != com.google.type.LocalizedText.getDefaultInstance()) { + getTextBuilder().mergeFrom(value); + } else { + text_ = value; + } + } else { + textBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The localized text of the review.
+     * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearText() { + bitField0_ = (bitField0_ & ~0x00000004); + text_ = null; + if (textBuilder_ != null) { + textBuilder_.dispose(); + textBuilder_ = null; + } + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The localized text of the review.
+     * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.type.LocalizedText.Builder getTextBuilder() { + bitField0_ |= 0x00000004; + onChanged(); + return getTextFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * Output only. The localized text of the review.
+     * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.type.LocalizedTextOrBuilder getTextOrBuilder() { + if (textBuilder_ != null) { + return textBuilder_.getMessageOrBuilder(); + } else { + return text_ == null ? com.google.type.LocalizedText.getDefaultInstance() : text_; + } + } + /** + * + * + *
+     * Output only. The localized text of the review.
+     * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LocalizedText, + com.google.type.LocalizedText.Builder, + com.google.type.LocalizedTextOrBuilder> + getTextFieldBuilder() { + if (textBuilder_ == null) { + textBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LocalizedText, + com.google.type.LocalizedText.Builder, + com.google.type.LocalizedTextOrBuilder>( + getText(), getParentForChildren(), isClean()); + text_ = null; + } + return textBuilder_; + } + + private com.google.type.LocalizedText originalText_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LocalizedText, + com.google.type.LocalizedText.Builder, + com.google.type.LocalizedTextOrBuilder> + originalTextBuilder_; + /** + * + * + *
+     * Output only. The review text in its original language.
+     * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the originalText field is set. + */ + public boolean hasOriginalText() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + * + * + *
+     * Output only. The review text in its original language.
+     * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The originalText. + */ + public com.google.type.LocalizedText getOriginalText() { + if (originalTextBuilder_ == null) { + return originalText_ == null + ? com.google.type.LocalizedText.getDefaultInstance() + : originalText_; + } else { + return originalTextBuilder_.getMessage(); + } + } + /** + * + * + *
+     * Output only. The review text in its original language.
+     * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setOriginalText(com.google.type.LocalizedText value) { + if (originalTextBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + originalText_ = value; + } else { + originalTextBuilder_.setMessage(value); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The review text in its original language.
+     * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setOriginalText(com.google.type.LocalizedText.Builder builderForValue) { + if (originalTextBuilder_ == null) { + originalText_ = builderForValue.build(); + } else { + originalTextBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The review text in its original language.
+     * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeOriginalText(com.google.type.LocalizedText value) { + if (originalTextBuilder_ == null) { + if (((bitField0_ & 0x00000008) != 0) + && originalText_ != null + && originalText_ != com.google.type.LocalizedText.getDefaultInstance()) { + getOriginalTextBuilder().mergeFrom(value); + } else { + originalText_ = value; + } + } else { + originalTextBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The review text in its original language.
+     * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearOriginalText() { + bitField0_ = (bitField0_ & ~0x00000008); + originalText_ = null; + if (originalTextBuilder_ != null) { + originalTextBuilder_.dispose(); + originalTextBuilder_ = null; + } + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. The review text in its original language.
+     * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.type.LocalizedText.Builder getOriginalTextBuilder() { + bitField0_ |= 0x00000008; + onChanged(); + return getOriginalTextFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * Output only. The review text in its original language.
+     * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.type.LocalizedTextOrBuilder getOriginalTextOrBuilder() { + if (originalTextBuilder_ != null) { + return originalTextBuilder_.getMessageOrBuilder(); + } else { + return originalText_ == null + ? com.google.type.LocalizedText.getDefaultInstance() + : originalText_; + } + } + /** + * + * + *
+     * Output only. The review text in its original language.
+     * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LocalizedText, + com.google.type.LocalizedText.Builder, + com.google.type.LocalizedTextOrBuilder> + getOriginalTextFieldBuilder() { + if (originalTextBuilder_ == null) { + originalTextBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.type.LocalizedText, + com.google.type.LocalizedText.Builder, + com.google.type.LocalizedTextOrBuilder>( + getOriginalText(), getParentForChildren(), isClean()); + originalText_ = null; + } + return originalTextBuilder_; + } + + private double rating_; + /** + * + * + *
+     * Output only. A number between 1.0 and 5.0, a.k.a. the number of stars.
+     * 
+ * + * double rating = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The rating. + */ + @java.lang.Override + public double getRating() { + return rating_; + } + /** + * + * + *
+     * Output only. A number between 1.0 and 5.0, a.k.a. the number of stars.
+     * 
+ * + * double rating = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The rating to set. + * @return This builder for chaining. + */ + public Builder setRating(double value) { + + rating_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A number between 1.0 and 5.0, a.k.a. the number of stars.
+     * 
+ * + * double rating = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearRating() { + bitField0_ = (bitField0_ & ~0x00000010); + rating_ = 0D; + onChanged(); + return this; + } + + private com.google.maps.places.v1.AuthorAttribution authorAttribution_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.AuthorAttribution, + com.google.maps.places.v1.AuthorAttribution.Builder, + com.google.maps.places.v1.AuthorAttributionOrBuilder> + authorAttributionBuilder_; + /** + * + * + *
+     * Output only. This review's author.
+     * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the authorAttribution field is set. + */ + public boolean hasAuthorAttribution() { + return ((bitField0_ & 0x00000020) != 0); + } + /** + * + * + *
+     * Output only. This review's author.
+     * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The authorAttribution. + */ + public com.google.maps.places.v1.AuthorAttribution getAuthorAttribution() { + if (authorAttributionBuilder_ == null) { + return authorAttribution_ == null + ? com.google.maps.places.v1.AuthorAttribution.getDefaultInstance() + : authorAttribution_; + } else { + return authorAttributionBuilder_.getMessage(); + } + } + /** + * + * + *
+     * Output only. This review's author.
+     * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setAuthorAttribution(com.google.maps.places.v1.AuthorAttribution value) { + if (authorAttributionBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + authorAttribution_ = value; + } else { + authorAttributionBuilder_.setMessage(value); + } + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. This review's author.
+     * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setAuthorAttribution( + com.google.maps.places.v1.AuthorAttribution.Builder builderForValue) { + if (authorAttributionBuilder_ == null) { + authorAttribution_ = builderForValue.build(); + } else { + authorAttributionBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. This review's author.
+     * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeAuthorAttribution(com.google.maps.places.v1.AuthorAttribution value) { + if (authorAttributionBuilder_ == null) { + if (((bitField0_ & 0x00000020) != 0) + && authorAttribution_ != null + && authorAttribution_ + != com.google.maps.places.v1.AuthorAttribution.getDefaultInstance()) { + getAuthorAttributionBuilder().mergeFrom(value); + } else { + authorAttribution_ = value; + } + } else { + authorAttributionBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. This review's author.
+     * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearAuthorAttribution() { + bitField0_ = (bitField0_ & ~0x00000020); + authorAttribution_ = null; + if (authorAttributionBuilder_ != null) { + authorAttributionBuilder_.dispose(); + authorAttributionBuilder_ = null; + } + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. This review's author.
+     * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.AuthorAttribution.Builder getAuthorAttributionBuilder() { + bitField0_ |= 0x00000020; + onChanged(); + return getAuthorAttributionFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * Output only. This review's author.
+     * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.maps.places.v1.AuthorAttributionOrBuilder getAuthorAttributionOrBuilder() { + if (authorAttributionBuilder_ != null) { + return authorAttributionBuilder_.getMessageOrBuilder(); + } else { + return authorAttribution_ == null + ? com.google.maps.places.v1.AuthorAttribution.getDefaultInstance() + : authorAttribution_; + } + } + /** + * + * + *
+     * Output only. This review's author.
+     * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.AuthorAttribution, + com.google.maps.places.v1.AuthorAttribution.Builder, + com.google.maps.places.v1.AuthorAttributionOrBuilder> + getAuthorAttributionFieldBuilder() { + if (authorAttributionBuilder_ == null) { + authorAttributionBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.AuthorAttribution, + com.google.maps.places.v1.AuthorAttribution.Builder, + com.google.maps.places.v1.AuthorAttributionOrBuilder>( + getAuthorAttribution(), getParentForChildren(), isClean()); + authorAttribution_ = null; + } + return authorAttributionBuilder_; + } + + private com.google.protobuf.Timestamp publishTime_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + publishTimeBuilder_; + /** + * + * + *
+     * Output only. Timestamp for the review.
+     * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the publishTime field is set. + */ + public boolean hasPublishTime() { + return ((bitField0_ & 0x00000040) != 0); + } + /** + * + * + *
+     * Output only. Timestamp for the review.
+     * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The publishTime. + */ + public com.google.protobuf.Timestamp getPublishTime() { + if (publishTimeBuilder_ == null) { + return publishTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : publishTime_; + } else { + return publishTimeBuilder_.getMessage(); + } + } + /** + * + * + *
+     * Output only. Timestamp for the review.
+     * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setPublishTime(com.google.protobuf.Timestamp value) { + if (publishTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + publishTime_ = value; + } else { + publishTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. Timestamp for the review.
+     * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setPublishTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (publishTimeBuilder_ == null) { + publishTime_ = builderForValue.build(); + } else { + publishTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. Timestamp for the review.
+     * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergePublishTime(com.google.protobuf.Timestamp value) { + if (publishTimeBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0) + && publishTime_ != null + && publishTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getPublishTimeBuilder().mergeFrom(value); + } else { + publishTime_ = value; + } + } else { + publishTimeBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. Timestamp for the review.
+     * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearPublishTime() { + bitField0_ = (bitField0_ & ~0x00000040); + publishTime_ = null; + if (publishTimeBuilder_ != null) { + publishTimeBuilder_.dispose(); + publishTimeBuilder_ = null; + } + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. Timestamp for the review.
+     * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.Timestamp.Builder getPublishTimeBuilder() { + bitField0_ |= 0x00000040; + onChanged(); + return getPublishTimeFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * Output only. Timestamp for the review.
+     * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.TimestampOrBuilder getPublishTimeOrBuilder() { + if (publishTimeBuilder_ != null) { + return publishTimeBuilder_.getMessageOrBuilder(); + } else { + return publishTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : publishTime_; + } + } + /** + * + * + *
+     * Output only. Timestamp for the review.
+     * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + getPublishTimeFieldBuilder() { + if (publishTimeBuilder_ == null) { + publishTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getPublishTime(), getParentForChildren(), isClean()); + publishTime_ = null; + } + return publishTimeBuilder_; + } + + @java.lang.Override + public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.Review) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.Review) + private static final com.google.maps.places.v1.Review DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.Review(); + } + + public static com.google.maps.places.v1.Review getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Review 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.maps.places.v1.Review getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/ReviewOrBuilder.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/ReviewOrBuilder.java new file mode 100644 index 000000000000..4ae9f7fbe6dc --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/ReviewOrBuilder.java @@ -0,0 +1,258 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/review.proto + +package com.google.maps.places.v1; + +public interface ReviewOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.Review) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Output only. A reference representing this place review which may be used
+   * to look up this place review again (a.k.a. the API "resource" name:
+   * places/{place_id}/reviews/{review}).
+   * 
+ * + * string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The name. + */ + java.lang.String getName(); + /** + * + * + *
+   * Output only. A reference representing this place review which may be used
+   * to look up this place review again (a.k.a. the API "resource" name:
+   * places/{place_id}/reviews/{review}).
+   * 
+ * + * string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for name. + */ + com.google.protobuf.ByteString getNameBytes(); + + /** + * + * + *
+   * Output only. A string of formatted recent time, expressing the review time
+   * relative to the current time in a form appropriate for the language and
+   * country.
+   * 
+ * + * + * string relative_publish_time_description = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The relativePublishTimeDescription. + */ + java.lang.String getRelativePublishTimeDescription(); + /** + * + * + *
+   * Output only. A string of formatted recent time, expressing the review time
+   * relative to the current time in a form appropriate for the language and
+   * country.
+   * 
+ * + * + * string relative_publish_time_description = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The bytes for relativePublishTimeDescription. + */ + com.google.protobuf.ByteString getRelativePublishTimeDescriptionBytes(); + + /** + * + * + *
+   * Output only. The localized text of the review.
+   * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return Whether the text field is set. + */ + boolean hasText(); + /** + * + * + *
+   * Output only. The localized text of the review.
+   * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The text. + */ + com.google.type.LocalizedText getText(); + /** + * + * + *
+   * Output only. The localized text of the review.
+   * 
+ * + * .google.type.LocalizedText text = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + com.google.type.LocalizedTextOrBuilder getTextOrBuilder(); + + /** + * + * + *
+   * Output only. The review text in its original language.
+   * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the originalText field is set. + */ + boolean hasOriginalText(); + /** + * + * + *
+   * Output only. The review text in its original language.
+   * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The originalText. + */ + com.google.type.LocalizedText getOriginalText(); + /** + * + * + *
+   * Output only. The review text in its original language.
+   * 
+ * + * + * .google.type.LocalizedText original_text = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.type.LocalizedTextOrBuilder getOriginalTextOrBuilder(); + + /** + * + * + *
+   * Output only. A number between 1.0 and 5.0, a.k.a. the number of stars.
+   * 
+ * + * double rating = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The rating. + */ + double getRating(); + + /** + * + * + *
+   * Output only. This review's author.
+   * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the authorAttribution field is set. + */ + boolean hasAuthorAttribution(); + /** + * + * + *
+   * Output only. This review's author.
+   * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The authorAttribution. + */ + com.google.maps.places.v1.AuthorAttribution getAuthorAttribution(); + /** + * + * + *
+   * Output only. This review's author.
+   * 
+ * + * + * .google.maps.places.v1.AuthorAttribution author_attribution = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.maps.places.v1.AuthorAttributionOrBuilder getAuthorAttributionOrBuilder(); + + /** + * + * + *
+   * Output only. Timestamp for the review.
+   * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the publishTime field is set. + */ + boolean hasPublishTime(); + /** + * + * + *
+   * Output only. Timestamp for the review.
+   * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The publishTime. + */ + com.google.protobuf.Timestamp getPublishTime(); + /** + * + * + *
+   * Output only. Timestamp for the review.
+   * 
+ * + * + * .google.protobuf.Timestamp publish_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.protobuf.TimestampOrBuilder getPublishTimeOrBuilder(); +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/ReviewProto.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/ReviewProto.java new file mode 100644 index 000000000000..6f2bd0c0b687 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/ReviewProto.java @@ -0,0 +1,103 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/review.proto + +package com.google.maps.places.v1; + +public final class ReviewProto { + private ReviewProto() {} + + public static void registerAllExtensions(com.google.protobuf.ExtensionRegistryLite registry) {} + + public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions((com.google.protobuf.ExtensionRegistryLite) registry); + } + + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_maps_places_v1_Review_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_maps_places_v1_Review_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + return descriptor; + } + + private static com.google.protobuf.Descriptors.FileDescriptor descriptor; + + static { + java.lang.String[] descriptorData = { + "\n\"google/maps/places/v1/review.proto\022\025go" + + "ogle.maps.places.v1\032\037google/api/field_be" + + "havior.proto\032\031google/api/resource.proto\032" + + "\'google/maps/places/v1/attribution.proto" + + "\032\037google/protobuf/timestamp.proto\032 googl" + + "e/type/localized_text.proto\"\245\003\n\006Review\022\022" + + "\n\004name\030\001 \001(\tB\004\342A\001\003\022/\n!relative_publish_t" + + "ime_description\030\002 \001(\tB\004\342A\001\003\022.\n\004text\030\t \001(" + + "\0132\032.google.type.LocalizedTextB\004\342A\001\003\0227\n\ro" + + "riginal_text\030\014 \001(\0132\032.google.type.Localiz" + + "edTextB\004\342A\001\003\022\024\n\006rating\030\007 \001(\001B\004\342A\001\003\022J\n\022au" + + "thor_attribution\030\r \001(\0132(.google.maps.pla" + + "ces.v1.AuthorAttributionB\004\342A\001\003\0226\n\014publis" + + "h_time\030\016 \001(\0132\032.google.protobuf.Timestamp" + + "B\004\342A\001\003:S\352AP\n\034places.googleapis.com/Revie" + + "w\022\037places/{place}/reviews/{review}*\007revi" + + "ews2\006reviewB\237\001\n\031com.google.maps.places.v" + + "1B\013ReviewProtoP\001Z7cloud.google.com/go/ma" + + "ps/places/apiv1/placespb;placespb\370\001\001\242\002\006G" + + "MPSV1\252\002\025Google.Maps.Places.V1\312\002\025Google\\M" + + "aps\\Places\\V1b\006proto3" + }; + descriptor = + com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( + descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + com.google.api.FieldBehaviorProto.getDescriptor(), + com.google.api.ResourceProto.getDescriptor(), + com.google.maps.places.v1.AttributionProto.getDescriptor(), + com.google.protobuf.TimestampProto.getDescriptor(), + com.google.type.LocalizedTextProto.getDescriptor(), + }); + internal_static_google_maps_places_v1_Review_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_google_maps_places_v1_Review_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_maps_places_v1_Review_descriptor, + new java.lang.String[] { + "Name", + "RelativePublishTimeDescription", + "Text", + "OriginalText", + "Rating", + "AuthorAttribution", + "PublishTime", + }); + com.google.protobuf.ExtensionRegistry registry = + com.google.protobuf.ExtensionRegistry.newInstance(); + registry.add(com.google.api.FieldBehaviorProto.fieldBehavior); + registry.add(com.google.api.ResourceProto.resource); + com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor( + descriptor, registry); + com.google.api.FieldBehaviorProto.getDescriptor(); + com.google.api.ResourceProto.getDescriptor(); + com.google.maps.places.v1.AttributionProto.getDescriptor(); + com.google.protobuf.TimestampProto.getDescriptor(); + com.google.type.LocalizedTextProto.getDescriptor(); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchNearbyRequest.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchNearbyRequest.java new file mode 100644 index 000000000000..9b67360eff71 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchNearbyRequest.java @@ -0,0 +1,4219 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/places_service.proto + +package com.google.maps.places.v1; + +/** + * + * + *
+ * Request proto for Search Nearby.
+ * 
+ * + * Protobuf type {@code google.maps.places.v1.SearchNearbyRequest} + */ +public final class SearchNearbyRequest extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.SearchNearbyRequest) + SearchNearbyRequestOrBuilder { + private static final long serialVersionUID = 0L; + // Use SearchNearbyRequest.newBuilder() to construct. + private SearchNearbyRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private SearchNearbyRequest() { + languageCode_ = ""; + regionCode_ = ""; + includedTypes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + excludedTypes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + includedPrimaryTypes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + excludedPrimaryTypes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + rankPreference_ = 0; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new SearchNearbyRequest(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.SearchNearbyRequest.class, + com.google.maps.places.v1.SearchNearbyRequest.Builder.class); + } + + /** + * + * + *
+   * How results will be ranked in the response.
+   * 
+ * + * Protobuf enum {@code google.maps.places.v1.SearchNearbyRequest.RankPreference} + */ + public enum RankPreference implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
+     * RankPreference value not set. Will use rank by POPULARITY by default.
+     * 
+ * + * RANK_PREFERENCE_UNSPECIFIED = 0; + */ + RANK_PREFERENCE_UNSPECIFIED(0), + /** + * + * + *
+     * Ranks results by distance.
+     * 
+ * + * DISTANCE = 1; + */ + DISTANCE(1), + /** + * + * + *
+     * Ranks results by popularity.
+     * 
+ * + * POPULARITY = 2; + */ + POPULARITY(2), + UNRECOGNIZED(-1), + ; + + /** + * + * + *
+     * RankPreference value not set. Will use rank by POPULARITY by default.
+     * 
+ * + * RANK_PREFERENCE_UNSPECIFIED = 0; + */ + public static final int RANK_PREFERENCE_UNSPECIFIED_VALUE = 0; + /** + * + * + *
+     * Ranks results by distance.
+     * 
+ * + * DISTANCE = 1; + */ + public static final int DISTANCE_VALUE = 1; + /** + * + * + *
+     * Ranks results by popularity.
+     * 
+ * + * POPULARITY = 2; + */ + public static final int POPULARITY_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 RankPreference 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 RankPreference forNumber(int value) { + switch (value) { + case 0: + return RANK_PREFERENCE_UNSPECIFIED; + case 1: + return DISTANCE; + case 2: + return POPULARITY; + 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 RankPreference findValueByNumber(int number) { + return RankPreference.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 final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.maps.places.v1.SearchNearbyRequest.getDescriptor().getEnumTypes().get(0); + } + + private static final RankPreference[] VALUES = values(); + + public static RankPreference 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 RankPreference(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:google.maps.places.v1.SearchNearbyRequest.RankPreference) + } + + public interface LocationRestrictionOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.SearchNearbyRequest.LocationRestriction) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+     * A circle defined by center point and radius.
+     * 
+ * + * .google.maps.places.v1.Circle circle = 2; + * + * @return Whether the circle field is set. + */ + boolean hasCircle(); + /** + * + * + *
+     * A circle defined by center point and radius.
+     * 
+ * + * .google.maps.places.v1.Circle circle = 2; + * + * @return The circle. + */ + com.google.maps.places.v1.Circle getCircle(); + /** + * + * + *
+     * A circle defined by center point and radius.
+     * 
+ * + * .google.maps.places.v1.Circle circle = 2; + */ + com.google.maps.places.v1.CircleOrBuilder getCircleOrBuilder(); + + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.TypeCase getTypeCase(); + } + /** + * + * + *
+   * The region to search.
+   * 
+ * + * Protobuf type {@code google.maps.places.v1.SearchNearbyRequest.LocationRestriction} + */ + public static final class LocationRestriction extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.SearchNearbyRequest.LocationRestriction) + LocationRestrictionOrBuilder { + private static final long serialVersionUID = 0L; + // Use LocationRestriction.newBuilder() to construct. + private LocationRestriction(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private LocationRestriction() {} + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new LocationRestriction(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyRequest_LocationRestriction_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyRequest_LocationRestriction_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.class, + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.Builder.class); + } + + private int typeCase_ = 0; + + @SuppressWarnings("serial") + private java.lang.Object type_; + + public enum TypeCase + implements + com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + CIRCLE(2), + TYPE_NOT_SET(0); + private final int value; + + private TypeCase(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 TypeCase valueOf(int value) { + return forNumber(value); + } + + public static TypeCase forNumber(int value) { + switch (value) { + case 2: + return CIRCLE; + case 0: + return TYPE_NOT_SET; + default: + return null; + } + } + + public int getNumber() { + return this.value; + } + }; + + public TypeCase getTypeCase() { + return TypeCase.forNumber(typeCase_); + } + + public static final int CIRCLE_FIELD_NUMBER = 2; + /** + * + * + *
+     * A circle defined by center point and radius.
+     * 
+ * + * .google.maps.places.v1.Circle circle = 2; + * + * @return Whether the circle field is set. + */ + @java.lang.Override + public boolean hasCircle() { + return typeCase_ == 2; + } + /** + * + * + *
+     * A circle defined by center point and radius.
+     * 
+ * + * .google.maps.places.v1.Circle circle = 2; + * + * @return The circle. + */ + @java.lang.Override + public com.google.maps.places.v1.Circle getCircle() { + if (typeCase_ == 2) { + return (com.google.maps.places.v1.Circle) type_; + } + return com.google.maps.places.v1.Circle.getDefaultInstance(); + } + /** + * + * + *
+     * A circle defined by center point and radius.
+     * 
+ * + * .google.maps.places.v1.Circle circle = 2; + */ + @java.lang.Override + public com.google.maps.places.v1.CircleOrBuilder getCircleOrBuilder() { + if (typeCase_ == 2) { + return (com.google.maps.places.v1.Circle) type_; + } + return com.google.maps.places.v1.Circle.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 (typeCase_ == 2) { + output.writeMessage(2, (com.google.maps.places.v1.Circle) type_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (typeCase_ == 2) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 2, (com.google.maps.places.v1.Circle) type_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction)) { + return super.equals(obj); + } + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction other = + (com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction) obj; + + if (!getTypeCase().equals(other.getTypeCase())) return false; + switch (typeCase_) { + case 2: + if (!getCircle().equals(other.getCircle())) 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 (typeCase_) { + case 2: + hash = (37 * hash) + CIRCLE_FIELD_NUMBER; + hash = (53 * hash) + getCircle().hashCode(); + break; + case 0: + default: + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction + parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+     * The region to search.
+     * 
+ * + * Protobuf type {@code google.maps.places.v1.SearchNearbyRequest.LocationRestriction} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.SearchNearbyRequest.LocationRestriction) + com.google.maps.places.v1.SearchNearbyRequest.LocationRestrictionOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyRequest_LocationRestriction_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyRequest_LocationRestriction_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.class, + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.Builder.class); + } + + // Construct using + // com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (circleBuilder_ != null) { + circleBuilder_.clear(); + } + typeCase_ = 0; + type_ = null; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyRequest_LocationRestriction_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction + getDefaultInstanceForType() { + return com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction build() { + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction buildPartial() { + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction result = + new com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + buildPartialOneofs(result); + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction result) { + int from_bitField0_ = bitField0_; + } + + private void buildPartialOneofs( + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction result) { + result.typeCase_ = typeCase_; + result.type_ = this.type_; + if (typeCase_ == 2 && circleBuilder_ != null) { + result.type_ = circleBuilder_.build(); + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction) { + return mergeFrom( + (com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction other) { + if (other + == com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction + .getDefaultInstance()) return this; + switch (other.getTypeCase()) { + case CIRCLE: + { + mergeCircle(other.getCircle()); + break; + } + case TYPE_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 18: + { + input.readMessage(getCircleFieldBuilder().getBuilder(), extensionRegistry); + typeCase_ = 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 typeCase_ = 0; + private java.lang.Object type_; + + public TypeCase getTypeCase() { + return TypeCase.forNumber(typeCase_); + } + + public Builder clearType() { + typeCase_ = 0; + type_ = null; + onChanged(); + return this; + } + + private int bitField0_; + + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Circle, + com.google.maps.places.v1.Circle.Builder, + com.google.maps.places.v1.CircleOrBuilder> + circleBuilder_; + /** + * + * + *
+       * A circle defined by center point and radius.
+       * 
+ * + * .google.maps.places.v1.Circle circle = 2; + * + * @return Whether the circle field is set. + */ + @java.lang.Override + public boolean hasCircle() { + return typeCase_ == 2; + } + /** + * + * + *
+       * A circle defined by center point and radius.
+       * 
+ * + * .google.maps.places.v1.Circle circle = 2; + * + * @return The circle. + */ + @java.lang.Override + public com.google.maps.places.v1.Circle getCircle() { + if (circleBuilder_ == null) { + if (typeCase_ == 2) { + return (com.google.maps.places.v1.Circle) type_; + } + return com.google.maps.places.v1.Circle.getDefaultInstance(); + } else { + if (typeCase_ == 2) { + return circleBuilder_.getMessage(); + } + return com.google.maps.places.v1.Circle.getDefaultInstance(); + } + } + /** + * + * + *
+       * A circle defined by center point and radius.
+       * 
+ * + * .google.maps.places.v1.Circle circle = 2; + */ + public Builder setCircle(com.google.maps.places.v1.Circle value) { + if (circleBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + type_ = value; + onChanged(); + } else { + circleBuilder_.setMessage(value); + } + typeCase_ = 2; + return this; + } + /** + * + * + *
+       * A circle defined by center point and radius.
+       * 
+ * + * .google.maps.places.v1.Circle circle = 2; + */ + public Builder setCircle(com.google.maps.places.v1.Circle.Builder builderForValue) { + if (circleBuilder_ == null) { + type_ = builderForValue.build(); + onChanged(); + } else { + circleBuilder_.setMessage(builderForValue.build()); + } + typeCase_ = 2; + return this; + } + /** + * + * + *
+       * A circle defined by center point and radius.
+       * 
+ * + * .google.maps.places.v1.Circle circle = 2; + */ + public Builder mergeCircle(com.google.maps.places.v1.Circle value) { + if (circleBuilder_ == null) { + if (typeCase_ == 2 && type_ != com.google.maps.places.v1.Circle.getDefaultInstance()) { + type_ = + com.google.maps.places.v1.Circle.newBuilder( + (com.google.maps.places.v1.Circle) type_) + .mergeFrom(value) + .buildPartial(); + } else { + type_ = value; + } + onChanged(); + } else { + if (typeCase_ == 2) { + circleBuilder_.mergeFrom(value); + } else { + circleBuilder_.setMessage(value); + } + } + typeCase_ = 2; + return this; + } + /** + * + * + *
+       * A circle defined by center point and radius.
+       * 
+ * + * .google.maps.places.v1.Circle circle = 2; + */ + public Builder clearCircle() { + if (circleBuilder_ == null) { + if (typeCase_ == 2) { + typeCase_ = 0; + type_ = null; + onChanged(); + } + } else { + if (typeCase_ == 2) { + typeCase_ = 0; + type_ = null; + } + circleBuilder_.clear(); + } + return this; + } + /** + * + * + *
+       * A circle defined by center point and radius.
+       * 
+ * + * .google.maps.places.v1.Circle circle = 2; + */ + public com.google.maps.places.v1.Circle.Builder getCircleBuilder() { + return getCircleFieldBuilder().getBuilder(); + } + /** + * + * + *
+       * A circle defined by center point and radius.
+       * 
+ * + * .google.maps.places.v1.Circle circle = 2; + */ + @java.lang.Override + public com.google.maps.places.v1.CircleOrBuilder getCircleOrBuilder() { + if ((typeCase_ == 2) && (circleBuilder_ != null)) { + return circleBuilder_.getMessageOrBuilder(); + } else { + if (typeCase_ == 2) { + return (com.google.maps.places.v1.Circle) type_; + } + return com.google.maps.places.v1.Circle.getDefaultInstance(); + } + } + /** + * + * + *
+       * A circle defined by center point and radius.
+       * 
+ * + * .google.maps.places.v1.Circle circle = 2; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Circle, + com.google.maps.places.v1.Circle.Builder, + com.google.maps.places.v1.CircleOrBuilder> + getCircleFieldBuilder() { + if (circleBuilder_ == null) { + if (!(typeCase_ == 2)) { + type_ = com.google.maps.places.v1.Circle.getDefaultInstance(); + } + circleBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.Circle, + com.google.maps.places.v1.Circle.Builder, + com.google.maps.places.v1.CircleOrBuilder>( + (com.google.maps.places.v1.Circle) type_, getParentForChildren(), isClean()); + type_ = null; + } + typeCase_ = 2; + onChanged(); + return circleBuilder_; + } + + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.SearchNearbyRequest.LocationRestriction) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.SearchNearbyRequest.LocationRestriction) + private static final com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction(); + } + + public static com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public LocationRestriction 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.maps.places.v1.SearchNearbyRequest.LocationRestriction + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public static final int LANGUAGE_CODE_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object languageCode_ = ""; + /** + * + * + *
+   * Place details will be displayed with the preferred language if available.
+   * If the language code is unspecified or unrecognized, place details of any
+   * language may be returned, with a preference for English if such details
+   * exist.
+   *
+   * Current list of supported languages:
+   * https://developers.google.com/maps/faq#languagesupport.
+   * 
+ * + * string language_code = 1; + * + * @return The languageCode. + */ + @java.lang.Override + public java.lang.String getLanguageCode() { + java.lang.Object ref = languageCode_; + 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(); + languageCode_ = s; + return s; + } + } + /** + * + * + *
+   * Place details will be displayed with the preferred language if available.
+   * If the language code is unspecified or unrecognized, place details of any
+   * language may be returned, with a preference for English if such details
+   * exist.
+   *
+   * Current list of supported languages:
+   * https://developers.google.com/maps/faq#languagesupport.
+   * 
+ * + * string language_code = 1; + * + * @return The bytes for languageCode. + */ + @java.lang.Override + public com.google.protobuf.ByteString getLanguageCodeBytes() { + java.lang.Object ref = languageCode_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + languageCode_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int REGION_CODE_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object regionCode_ = ""; + /** + * + * + *
+   * The Unicode country/region code (CLDR) of the location where the
+   * request is coming from. This parameter is used to display the place
+   * details, like region-specific place name, if available. The parameter can
+   * affect results based on applicable law.
+   *
+   * For more information, see
+   * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+   *
+   *
+   * Note that 3-digit region codes are not currently supported.
+   * 
+ * + * string region_code = 2; + * + * @return The regionCode. + */ + @java.lang.Override + public java.lang.String getRegionCode() { + java.lang.Object ref = regionCode_; + 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(); + regionCode_ = s; + return s; + } + } + /** + * + * + *
+   * The Unicode country/region code (CLDR) of the location where the
+   * request is coming from. This parameter is used to display the place
+   * details, like region-specific place name, if available. The parameter can
+   * affect results based on applicable law.
+   *
+   * For more information, see
+   * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+   *
+   *
+   * Note that 3-digit region codes are not currently supported.
+   * 
+ * + * string region_code = 2; + * + * @return The bytes for regionCode. + */ + @java.lang.Override + public com.google.protobuf.ByteString getRegionCodeBytes() { + java.lang.Object ref = regionCode_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + regionCode_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int INCLUDED_TYPES_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList includedTypes_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * + * + *
+   * Included Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is
+   * returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_types = 3; + * + * @return A list containing the includedTypes. + */ + public com.google.protobuf.ProtocolStringList getIncludedTypesList() { + return includedTypes_; + } + /** + * + * + *
+   * Included Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is
+   * returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_types = 3; + * + * @return The count of includedTypes. + */ + public int getIncludedTypesCount() { + return includedTypes_.size(); + } + /** + * + * + *
+   * Included Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is
+   * returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_types = 3; + * + * @param index The index of the element to return. + * @return The includedTypes at the given index. + */ + public java.lang.String getIncludedTypes(int index) { + return includedTypes_.get(index); + } + /** + * + * + *
+   * Included Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is
+   * returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_types = 3; + * + * @param index The index of the value to return. + * @return The bytes of the includedTypes at the given index. + */ + public com.google.protobuf.ByteString getIncludedTypesBytes(int index) { + return includedTypes_.getByteString(index); + } + + public static final int EXCLUDED_TYPES_FIELD_NUMBER = 4; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList excludedTypes_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * + * + *
+   * Excluded Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If the client provides both included_types (e.g. restaurant) and
+   * excluded_types (e.g. cafe), then the response should include places that
+   * are restaurant but not cafe. The response includes places that match at
+   * least one of the included_types and none of the excluded_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_types = 4; + * + * @return A list containing the excludedTypes. + */ + public com.google.protobuf.ProtocolStringList getExcludedTypesList() { + return excludedTypes_; + } + /** + * + * + *
+   * Excluded Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If the client provides both included_types (e.g. restaurant) and
+   * excluded_types (e.g. cafe), then the response should include places that
+   * are restaurant but not cafe. The response includes places that match at
+   * least one of the included_types and none of the excluded_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_types = 4; + * + * @return The count of excludedTypes. + */ + public int getExcludedTypesCount() { + return excludedTypes_.size(); + } + /** + * + * + *
+   * Excluded Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If the client provides both included_types (e.g. restaurant) and
+   * excluded_types (e.g. cafe), then the response should include places that
+   * are restaurant but not cafe. The response includes places that match at
+   * least one of the included_types and none of the excluded_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_types = 4; + * + * @param index The index of the element to return. + * @return The excludedTypes at the given index. + */ + public java.lang.String getExcludedTypes(int index) { + return excludedTypes_.get(index); + } + /** + * + * + *
+   * Excluded Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If the client provides both included_types (e.g. restaurant) and
+   * excluded_types (e.g. cafe), then the response should include places that
+   * are restaurant but not cafe. The response includes places that match at
+   * least one of the included_types and none of the excluded_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_types = 4; + * + * @param index The index of the value to return. + * @return The bytes of the excludedTypes at the given index. + */ + public com.google.protobuf.ByteString getExcludedTypesBytes(int index) { + return excludedTypes_.getByteString(index); + } + + public static final int INCLUDED_PRIMARY_TYPES_FIELD_NUMBER = 5; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList includedPrimaryTypes_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * + * + *
+   * Included primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_primary_types = 5; + * + * @return A list containing the includedPrimaryTypes. + */ + public com.google.protobuf.ProtocolStringList getIncludedPrimaryTypesList() { + return includedPrimaryTypes_; + } + /** + * + * + *
+   * Included primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_primary_types = 5; + * + * @return The count of includedPrimaryTypes. + */ + public int getIncludedPrimaryTypesCount() { + return includedPrimaryTypes_.size(); + } + /** + * + * + *
+   * Included primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_primary_types = 5; + * + * @param index The index of the element to return. + * @return The includedPrimaryTypes at the given index. + */ + public java.lang.String getIncludedPrimaryTypes(int index) { + return includedPrimaryTypes_.get(index); + } + /** + * + * + *
+   * Included primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_primary_types = 5; + * + * @param index The index of the value to return. + * @return The bytes of the includedPrimaryTypes at the given index. + */ + public com.google.protobuf.ByteString getIncludedPrimaryTypesBytes(int index) { + return includedPrimaryTypes_.getByteString(index); + } + + public static final int EXCLUDED_PRIMARY_TYPES_FIELD_NUMBER = 6; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList excludedPrimaryTypes_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * + * + *
+   * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_primary_types = 6; + * + * @return A list containing the excludedPrimaryTypes. + */ + public com.google.protobuf.ProtocolStringList getExcludedPrimaryTypesList() { + return excludedPrimaryTypes_; + } + /** + * + * + *
+   * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_primary_types = 6; + * + * @return The count of excludedPrimaryTypes. + */ + public int getExcludedPrimaryTypesCount() { + return excludedPrimaryTypes_.size(); + } + /** + * + * + *
+   * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_primary_types = 6; + * + * @param index The index of the element to return. + * @return The excludedPrimaryTypes at the given index. + */ + public java.lang.String getExcludedPrimaryTypes(int index) { + return excludedPrimaryTypes_.get(index); + } + /** + * + * + *
+   * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_primary_types = 6; + * + * @param index The index of the value to return. + * @return The bytes of the excludedPrimaryTypes at the given index. + */ + public com.google.protobuf.ByteString getExcludedPrimaryTypesBytes(int index) { + return excludedPrimaryTypes_.getByteString(index); + } + + public static final int MAX_RESULT_COUNT_FIELD_NUMBER = 7; + private int maxResultCount_ = 0; + /** + * + * + *
+   * Maximum number of results to return. It must be between 1 and 20,
+   * inclusively. If the number is unset, it falls back to the upper limit. If
+   * the number is set to negative or exceeds the upper limit, an
+   * INVALID_ARGUMENT error is returned.
+   * 
+ * + * int32 max_result_count = 7; + * + * @return The maxResultCount. + */ + @java.lang.Override + public int getMaxResultCount() { + return maxResultCount_; + } + + public static final int LOCATION_RESTRICTION_FIELD_NUMBER = 8; + private com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction locationRestriction_; + /** + * + * + *
+   * Required. The region to search.
+   * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + * + * @return Whether the locationRestriction field is set. + */ + @java.lang.Override + public boolean hasLocationRestriction() { + return locationRestriction_ != null; + } + /** + * + * + *
+   * Required. The region to search.
+   * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + * + * @return The locationRestriction. + */ + @java.lang.Override + public com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction + getLocationRestriction() { + return locationRestriction_ == null + ? com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.getDefaultInstance() + : locationRestriction_; + } + /** + * + * + *
+   * Required. The region to search.
+   * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + */ + @java.lang.Override + public com.google.maps.places.v1.SearchNearbyRequest.LocationRestrictionOrBuilder + getLocationRestrictionOrBuilder() { + return locationRestriction_ == null + ? com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.getDefaultInstance() + : locationRestriction_; + } + + public static final int RANK_PREFERENCE_FIELD_NUMBER = 9; + private int rankPreference_ = 0; + /** + * + * + *
+   * How results will be ranked in the response.
+   * 
+ * + * .google.maps.places.v1.SearchNearbyRequest.RankPreference rank_preference = 9; + * + * @return The enum numeric value on the wire for rankPreference. + */ + @java.lang.Override + public int getRankPreferenceValue() { + return rankPreference_; + } + /** + * + * + *
+   * How results will be ranked in the response.
+   * 
+ * + * .google.maps.places.v1.SearchNearbyRequest.RankPreference rank_preference = 9; + * + * @return The rankPreference. + */ + @java.lang.Override + public com.google.maps.places.v1.SearchNearbyRequest.RankPreference getRankPreference() { + com.google.maps.places.v1.SearchNearbyRequest.RankPreference result = + com.google.maps.places.v1.SearchNearbyRequest.RankPreference.forNumber(rankPreference_); + return result == null + ? com.google.maps.places.v1.SearchNearbyRequest.RankPreference.UNRECOGNIZED + : result; + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(languageCode_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, languageCode_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(regionCode_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, regionCode_); + } + for (int i = 0; i < includedTypes_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, includedTypes_.getRaw(i)); + } + for (int i = 0; i < excludedTypes_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 4, excludedTypes_.getRaw(i)); + } + for (int i = 0; i < includedPrimaryTypes_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString( + output, 5, includedPrimaryTypes_.getRaw(i)); + } + for (int i = 0; i < excludedPrimaryTypes_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString( + output, 6, excludedPrimaryTypes_.getRaw(i)); + } + if (maxResultCount_ != 0) { + output.writeInt32(7, maxResultCount_); + } + if (locationRestriction_ != null) { + output.writeMessage(8, getLocationRestriction()); + } + if (rankPreference_ + != com.google.maps.places.v1.SearchNearbyRequest.RankPreference.RANK_PREFERENCE_UNSPECIFIED + .getNumber()) { + output.writeEnum(9, rankPreference_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(languageCode_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, languageCode_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(regionCode_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, regionCode_); + } + { + int dataSize = 0; + for (int i = 0; i < includedTypes_.size(); i++) { + dataSize += computeStringSizeNoTag(includedTypes_.getRaw(i)); + } + size += dataSize; + size += 1 * getIncludedTypesList().size(); + } + { + int dataSize = 0; + for (int i = 0; i < excludedTypes_.size(); i++) { + dataSize += computeStringSizeNoTag(excludedTypes_.getRaw(i)); + } + size += dataSize; + size += 1 * getExcludedTypesList().size(); + } + { + int dataSize = 0; + for (int i = 0; i < includedPrimaryTypes_.size(); i++) { + dataSize += computeStringSizeNoTag(includedPrimaryTypes_.getRaw(i)); + } + size += dataSize; + size += 1 * getIncludedPrimaryTypesList().size(); + } + { + int dataSize = 0; + for (int i = 0; i < excludedPrimaryTypes_.size(); i++) { + dataSize += computeStringSizeNoTag(excludedPrimaryTypes_.getRaw(i)); + } + size += dataSize; + size += 1 * getExcludedPrimaryTypesList().size(); + } + if (maxResultCount_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(7, maxResultCount_); + } + if (locationRestriction_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getLocationRestriction()); + } + if (rankPreference_ + != com.google.maps.places.v1.SearchNearbyRequest.RankPreference.RANK_PREFERENCE_UNSPECIFIED + .getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(9, rankPreference_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.maps.places.v1.SearchNearbyRequest)) { + return super.equals(obj); + } + com.google.maps.places.v1.SearchNearbyRequest other = + (com.google.maps.places.v1.SearchNearbyRequest) obj; + + if (!getLanguageCode().equals(other.getLanguageCode())) return false; + if (!getRegionCode().equals(other.getRegionCode())) return false; + if (!getIncludedTypesList().equals(other.getIncludedTypesList())) return false; + if (!getExcludedTypesList().equals(other.getExcludedTypesList())) return false; + if (!getIncludedPrimaryTypesList().equals(other.getIncludedPrimaryTypesList())) return false; + if (!getExcludedPrimaryTypesList().equals(other.getExcludedPrimaryTypesList())) return false; + if (getMaxResultCount() != other.getMaxResultCount()) return false; + if (hasLocationRestriction() != other.hasLocationRestriction()) return false; + if (hasLocationRestriction()) { + if (!getLocationRestriction().equals(other.getLocationRestriction())) return false; + } + if (rankPreference_ != other.rankPreference_) 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) + LANGUAGE_CODE_FIELD_NUMBER; + hash = (53 * hash) + getLanguageCode().hashCode(); + hash = (37 * hash) + REGION_CODE_FIELD_NUMBER; + hash = (53 * hash) + getRegionCode().hashCode(); + if (getIncludedTypesCount() > 0) { + hash = (37 * hash) + INCLUDED_TYPES_FIELD_NUMBER; + hash = (53 * hash) + getIncludedTypesList().hashCode(); + } + if (getExcludedTypesCount() > 0) { + hash = (37 * hash) + EXCLUDED_TYPES_FIELD_NUMBER; + hash = (53 * hash) + getExcludedTypesList().hashCode(); + } + if (getIncludedPrimaryTypesCount() > 0) { + hash = (37 * hash) + INCLUDED_PRIMARY_TYPES_FIELD_NUMBER; + hash = (53 * hash) + getIncludedPrimaryTypesList().hashCode(); + } + if (getExcludedPrimaryTypesCount() > 0) { + hash = (37 * hash) + EXCLUDED_PRIMARY_TYPES_FIELD_NUMBER; + hash = (53 * hash) + getExcludedPrimaryTypesList().hashCode(); + } + hash = (37 * hash) + MAX_RESULT_COUNT_FIELD_NUMBER; + hash = (53 * hash) + getMaxResultCount(); + if (hasLocationRestriction()) { + hash = (37 * hash) + LOCATION_RESTRICTION_FIELD_NUMBER; + hash = (53 * hash) + getLocationRestriction().hashCode(); + } + hash = (37 * hash) + RANK_PREFERENCE_FIELD_NUMBER; + hash = (53 * hash) + rankPreference_; + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.SearchNearbyRequest parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.SearchNearbyRequest parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.SearchNearbyRequest parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.SearchNearbyRequest parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyRequest parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.SearchNearbyRequest parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyRequest parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.SearchNearbyRequest parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyRequest parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.SearchNearbyRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.maps.places.v1.SearchNearbyRequest 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+   * Request proto for Search Nearby.
+   * 
+ * + * Protobuf type {@code google.maps.places.v1.SearchNearbyRequest} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.SearchNearbyRequest) + com.google.maps.places.v1.SearchNearbyRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.SearchNearbyRequest.class, + com.google.maps.places.v1.SearchNearbyRequest.Builder.class); + } + + // Construct using com.google.maps.places.v1.SearchNearbyRequest.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + languageCode_ = ""; + regionCode_ = ""; + includedTypes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + excludedTypes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + includedPrimaryTypes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + excludedPrimaryTypes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + maxResultCount_ = 0; + locationRestriction_ = null; + if (locationRestrictionBuilder_ != null) { + locationRestrictionBuilder_.dispose(); + locationRestrictionBuilder_ = null; + } + rankPreference_ = 0; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyRequest_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.SearchNearbyRequest getDefaultInstanceForType() { + return com.google.maps.places.v1.SearchNearbyRequest.getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.SearchNearbyRequest build() { + com.google.maps.places.v1.SearchNearbyRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.SearchNearbyRequest buildPartial() { + com.google.maps.places.v1.SearchNearbyRequest result = + new com.google.maps.places.v1.SearchNearbyRequest(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.maps.places.v1.SearchNearbyRequest result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.languageCode_ = languageCode_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.regionCode_ = regionCode_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + includedTypes_.makeImmutable(); + result.includedTypes_ = includedTypes_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + excludedTypes_.makeImmutable(); + result.excludedTypes_ = excludedTypes_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + includedPrimaryTypes_.makeImmutable(); + result.includedPrimaryTypes_ = includedPrimaryTypes_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + excludedPrimaryTypes_.makeImmutable(); + result.excludedPrimaryTypes_ = excludedPrimaryTypes_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.maxResultCount_ = maxResultCount_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.locationRestriction_ = + locationRestrictionBuilder_ == null + ? locationRestriction_ + : locationRestrictionBuilder_.build(); + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.rankPreference_ = rankPreference_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.SearchNearbyRequest) { + return mergeFrom((com.google.maps.places.v1.SearchNearbyRequest) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.maps.places.v1.SearchNearbyRequest other) { + if (other == com.google.maps.places.v1.SearchNearbyRequest.getDefaultInstance()) return this; + if (!other.getLanguageCode().isEmpty()) { + languageCode_ = other.languageCode_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getRegionCode().isEmpty()) { + regionCode_ = other.regionCode_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.includedTypes_.isEmpty()) { + if (includedTypes_.isEmpty()) { + includedTypes_ = other.includedTypes_; + bitField0_ |= 0x00000004; + } else { + ensureIncludedTypesIsMutable(); + includedTypes_.addAll(other.includedTypes_); + } + onChanged(); + } + if (!other.excludedTypes_.isEmpty()) { + if (excludedTypes_.isEmpty()) { + excludedTypes_ = other.excludedTypes_; + bitField0_ |= 0x00000008; + } else { + ensureExcludedTypesIsMutable(); + excludedTypes_.addAll(other.excludedTypes_); + } + onChanged(); + } + if (!other.includedPrimaryTypes_.isEmpty()) { + if (includedPrimaryTypes_.isEmpty()) { + includedPrimaryTypes_ = other.includedPrimaryTypes_; + bitField0_ |= 0x00000010; + } else { + ensureIncludedPrimaryTypesIsMutable(); + includedPrimaryTypes_.addAll(other.includedPrimaryTypes_); + } + onChanged(); + } + if (!other.excludedPrimaryTypes_.isEmpty()) { + if (excludedPrimaryTypes_.isEmpty()) { + excludedPrimaryTypes_ = other.excludedPrimaryTypes_; + bitField0_ |= 0x00000020; + } else { + ensureExcludedPrimaryTypesIsMutable(); + excludedPrimaryTypes_.addAll(other.excludedPrimaryTypes_); + } + onChanged(); + } + if (other.getMaxResultCount() != 0) { + setMaxResultCount(other.getMaxResultCount()); + } + if (other.hasLocationRestriction()) { + mergeLocationRestriction(other.getLocationRestriction()); + } + if (other.rankPreference_ != 0) { + setRankPreferenceValue(other.getRankPreferenceValue()); + } + 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: + { + languageCode_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + regionCode_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureIncludedTypesIsMutable(); + includedTypes_.add(s); + break; + } // case 26 + case 34: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureExcludedTypesIsMutable(); + excludedTypes_.add(s); + break; + } // case 34 + case 42: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureIncludedPrimaryTypesIsMutable(); + includedPrimaryTypes_.add(s); + break; + } // case 42 + case 50: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureExcludedPrimaryTypesIsMutable(); + excludedPrimaryTypes_.add(s); + break; + } // case 50 + case 56: + { + maxResultCount_ = input.readInt32(); + bitField0_ |= 0x00000040; + break; + } // case 56 + case 66: + { + input.readMessage( + getLocationRestrictionFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000080; + break; + } // case 66 + case 72: + { + rankPreference_ = input.readEnum(); + bitField0_ |= 0x00000100; + break; + } // case 72 + 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 languageCode_ = ""; + /** + * + * + *
+     * Place details will be displayed with the preferred language if available.
+     * If the language code is unspecified or unrecognized, place details of any
+     * language may be returned, with a preference for English if such details
+     * exist.
+     *
+     * Current list of supported languages:
+     * https://developers.google.com/maps/faq#languagesupport.
+     * 
+ * + * string language_code = 1; + * + * @return The languageCode. + */ + public java.lang.String getLanguageCode() { + java.lang.Object ref = languageCode_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + languageCode_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Place details will be displayed with the preferred language if available.
+     * If the language code is unspecified or unrecognized, place details of any
+     * language may be returned, with a preference for English if such details
+     * exist.
+     *
+     * Current list of supported languages:
+     * https://developers.google.com/maps/faq#languagesupport.
+     * 
+ * + * string language_code = 1; + * + * @return The bytes for languageCode. + */ + public com.google.protobuf.ByteString getLanguageCodeBytes() { + java.lang.Object ref = languageCode_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + languageCode_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Place details will be displayed with the preferred language if available.
+     * If the language code is unspecified or unrecognized, place details of any
+     * language may be returned, with a preference for English if such details
+     * exist.
+     *
+     * Current list of supported languages:
+     * https://developers.google.com/maps/faq#languagesupport.
+     * 
+ * + * string language_code = 1; + * + * @param value The languageCode to set. + * @return This builder for chaining. + */ + public Builder setLanguageCode(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + languageCode_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+     * Place details will be displayed with the preferred language if available.
+     * If the language code is unspecified or unrecognized, place details of any
+     * language may be returned, with a preference for English if such details
+     * exist.
+     *
+     * Current list of supported languages:
+     * https://developers.google.com/maps/faq#languagesupport.
+     * 
+ * + * string language_code = 1; + * + * @return This builder for chaining. + */ + public Builder clearLanguageCode() { + languageCode_ = getDefaultInstance().getLanguageCode(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * + * + *
+     * Place details will be displayed with the preferred language if available.
+     * If the language code is unspecified or unrecognized, place details of any
+     * language may be returned, with a preference for English if such details
+     * exist.
+     *
+     * Current list of supported languages:
+     * https://developers.google.com/maps/faq#languagesupport.
+     * 
+ * + * string language_code = 1; + * + * @param value The bytes for languageCode to set. + * @return This builder for chaining. + */ + public Builder setLanguageCodeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + languageCode_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object regionCode_ = ""; + /** + * + * + *
+     * The Unicode country/region code (CLDR) of the location where the
+     * request is coming from. This parameter is used to display the place
+     * details, like region-specific place name, if available. The parameter can
+     * affect results based on applicable law.
+     *
+     * For more information, see
+     * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+     *
+     *
+     * Note that 3-digit region codes are not currently supported.
+     * 
+ * + * string region_code = 2; + * + * @return The regionCode. + */ + public java.lang.String getRegionCode() { + java.lang.Object ref = regionCode_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + regionCode_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * The Unicode country/region code (CLDR) of the location where the
+     * request is coming from. This parameter is used to display the place
+     * details, like region-specific place name, if available. The parameter can
+     * affect results based on applicable law.
+     *
+     * For more information, see
+     * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+     *
+     *
+     * Note that 3-digit region codes are not currently supported.
+     * 
+ * + * string region_code = 2; + * + * @return The bytes for regionCode. + */ + public com.google.protobuf.ByteString getRegionCodeBytes() { + java.lang.Object ref = regionCode_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + regionCode_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * The Unicode country/region code (CLDR) of the location where the
+     * request is coming from. This parameter is used to display the place
+     * details, like region-specific place name, if available. The parameter can
+     * affect results based on applicable law.
+     *
+     * For more information, see
+     * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+     *
+     *
+     * Note that 3-digit region codes are not currently supported.
+     * 
+ * + * string region_code = 2; + * + * @param value The regionCode to set. + * @return This builder for chaining. + */ + public Builder setRegionCode(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + regionCode_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * + * + *
+     * The Unicode country/region code (CLDR) of the location where the
+     * request is coming from. This parameter is used to display the place
+     * details, like region-specific place name, if available. The parameter can
+     * affect results based on applicable law.
+     *
+     * For more information, see
+     * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+     *
+     *
+     * Note that 3-digit region codes are not currently supported.
+     * 
+ * + * string region_code = 2; + * + * @return This builder for chaining. + */ + public Builder clearRegionCode() { + regionCode_ = getDefaultInstance().getRegionCode(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * + * + *
+     * The Unicode country/region code (CLDR) of the location where the
+     * request is coming from. This parameter is used to display the place
+     * details, like region-specific place name, if available. The parameter can
+     * affect results based on applicable law.
+     *
+     * For more information, see
+     * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+     *
+     *
+     * Note that 3-digit region codes are not currently supported.
+     * 
+ * + * string region_code = 2; + * + * @param value The bytes for regionCode to set. + * @return This builder for chaining. + */ + public Builder setRegionCodeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + regionCode_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList includedTypes_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureIncludedTypesIsMutable() { + if (!includedTypes_.isModifiable()) { + includedTypes_ = new com.google.protobuf.LazyStringArrayList(includedTypes_); + } + bitField0_ |= 0x00000004; + } + /** + * + * + *
+     * Included Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is
+     * returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_types = 3; + * + * @return A list containing the includedTypes. + */ + public com.google.protobuf.ProtocolStringList getIncludedTypesList() { + includedTypes_.makeImmutable(); + return includedTypes_; + } + /** + * + * + *
+     * Included Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is
+     * returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_types = 3; + * + * @return The count of includedTypes. + */ + public int getIncludedTypesCount() { + return includedTypes_.size(); + } + /** + * + * + *
+     * Included Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is
+     * returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_types = 3; + * + * @param index The index of the element to return. + * @return The includedTypes at the given index. + */ + public java.lang.String getIncludedTypes(int index) { + return includedTypes_.get(index); + } + /** + * + * + *
+     * Included Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is
+     * returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_types = 3; + * + * @param index The index of the value to return. + * @return The bytes of the includedTypes at the given index. + */ + public com.google.protobuf.ByteString getIncludedTypesBytes(int index) { + return includedTypes_.getByteString(index); + } + /** + * + * + *
+     * Included Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is
+     * returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_types = 3; + * + * @param index The index to set the value at. + * @param value The includedTypes to set. + * @return This builder for chaining. + */ + public Builder setIncludedTypes(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureIncludedTypesIsMutable(); + includedTypes_.set(index, value); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+     * Included Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is
+     * returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_types = 3; + * + * @param value The includedTypes to add. + * @return This builder for chaining. + */ + public Builder addIncludedTypes(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureIncludedTypesIsMutable(); + includedTypes_.add(value); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+     * Included Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is
+     * returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_types = 3; + * + * @param values The includedTypes to add. + * @return This builder for chaining. + */ + public Builder addAllIncludedTypes(java.lang.Iterable values) { + ensureIncludedTypesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, includedTypes_); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * + * + *
+     * Included Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is
+     * returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_types = 3; + * + * @return This builder for chaining. + */ + public Builder clearIncludedTypes() { + includedTypes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + ; + onChanged(); + return this; + } + /** + * + * + *
+     * Included Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is
+     * returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_types = 3; + * + * @param value The bytes of the includedTypes to add. + * @return This builder for chaining. + */ + public Builder addIncludedTypesBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureIncludedTypesIsMutable(); + includedTypes_.add(value); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList excludedTypes_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureExcludedTypesIsMutable() { + if (!excludedTypes_.isModifiable()) { + excludedTypes_ = new com.google.protobuf.LazyStringArrayList(excludedTypes_); + } + bitField0_ |= 0x00000008; + } + /** + * + * + *
+     * Excluded Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If the client provides both included_types (e.g. restaurant) and
+     * excluded_types (e.g. cafe), then the response should include places that
+     * are restaurant but not cafe. The response includes places that match at
+     * least one of the included_types and none of the excluded_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_types = 4; + * + * @return A list containing the excludedTypes. + */ + public com.google.protobuf.ProtocolStringList getExcludedTypesList() { + excludedTypes_.makeImmutable(); + return excludedTypes_; + } + /** + * + * + *
+     * Excluded Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If the client provides both included_types (e.g. restaurant) and
+     * excluded_types (e.g. cafe), then the response should include places that
+     * are restaurant but not cafe. The response includes places that match at
+     * least one of the included_types and none of the excluded_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_types = 4; + * + * @return The count of excludedTypes. + */ + public int getExcludedTypesCount() { + return excludedTypes_.size(); + } + /** + * + * + *
+     * Excluded Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If the client provides both included_types (e.g. restaurant) and
+     * excluded_types (e.g. cafe), then the response should include places that
+     * are restaurant but not cafe. The response includes places that match at
+     * least one of the included_types and none of the excluded_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_types = 4; + * + * @param index The index of the element to return. + * @return The excludedTypes at the given index. + */ + public java.lang.String getExcludedTypes(int index) { + return excludedTypes_.get(index); + } + /** + * + * + *
+     * Excluded Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If the client provides both included_types (e.g. restaurant) and
+     * excluded_types (e.g. cafe), then the response should include places that
+     * are restaurant but not cafe. The response includes places that match at
+     * least one of the included_types and none of the excluded_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_types = 4; + * + * @param index The index of the value to return. + * @return The bytes of the excludedTypes at the given index. + */ + public com.google.protobuf.ByteString getExcludedTypesBytes(int index) { + return excludedTypes_.getByteString(index); + } + /** + * + * + *
+     * Excluded Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If the client provides both included_types (e.g. restaurant) and
+     * excluded_types (e.g. cafe), then the response should include places that
+     * are restaurant but not cafe. The response includes places that match at
+     * least one of the included_types and none of the excluded_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_types = 4; + * + * @param index The index to set the value at. + * @param value The excludedTypes to set. + * @return This builder for chaining. + */ + public Builder setExcludedTypes(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureExcludedTypesIsMutable(); + excludedTypes_.set(index, value); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+     * Excluded Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If the client provides both included_types (e.g. restaurant) and
+     * excluded_types (e.g. cafe), then the response should include places that
+     * are restaurant but not cafe. The response includes places that match at
+     * least one of the included_types and none of the excluded_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_types = 4; + * + * @param value The excludedTypes to add. + * @return This builder for chaining. + */ + public Builder addExcludedTypes(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureExcludedTypesIsMutable(); + excludedTypes_.add(value); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+     * Excluded Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If the client provides both included_types (e.g. restaurant) and
+     * excluded_types (e.g. cafe), then the response should include places that
+     * are restaurant but not cafe. The response includes places that match at
+     * least one of the included_types and none of the excluded_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_types = 4; + * + * @param values The excludedTypes to add. + * @return This builder for chaining. + */ + public Builder addAllExcludedTypes(java.lang.Iterable values) { + ensureExcludedTypesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, excludedTypes_); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+     * Excluded Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If the client provides both included_types (e.g. restaurant) and
+     * excluded_types (e.g. cafe), then the response should include places that
+     * are restaurant but not cafe. The response includes places that match at
+     * least one of the included_types and none of the excluded_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_types = 4; + * + * @return This builder for chaining. + */ + public Builder clearExcludedTypes() { + excludedTypes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + ; + onChanged(); + return this; + } + /** + * + * + *
+     * Excluded Place type (eg, "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If the client provides both included_types (e.g. restaurant) and
+     * excluded_types (e.g. cafe), then the response should include places that
+     * are restaurant but not cafe. The response includes places that match at
+     * least one of the included_types and none of the excluded_types.
+     *
+     * If there are any conflicting types, i.e. a type appears in both
+     * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_types = 4; + * + * @param value The bytes of the excludedTypes to add. + * @return This builder for chaining. + */ + public Builder addExcludedTypesBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureExcludedTypesIsMutable(); + excludedTypes_.add(value); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList includedPrimaryTypes_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureIncludedPrimaryTypesIsMutable() { + if (!includedPrimaryTypes_.isModifiable()) { + includedPrimaryTypes_ = new com.google.protobuf.LazyStringArrayList(includedPrimaryTypes_); + } + bitField0_ |= 0x00000010; + } + /** + * + * + *
+     * Included primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_primary_types = 5; + * + * @return A list containing the includedPrimaryTypes. + */ + public com.google.protobuf.ProtocolStringList getIncludedPrimaryTypesList() { + includedPrimaryTypes_.makeImmutable(); + return includedPrimaryTypes_; + } + /** + * + * + *
+     * Included primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_primary_types = 5; + * + * @return The count of includedPrimaryTypes. + */ + public int getIncludedPrimaryTypesCount() { + return includedPrimaryTypes_.size(); + } + /** + * + * + *
+     * Included primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_primary_types = 5; + * + * @param index The index of the element to return. + * @return The includedPrimaryTypes at the given index. + */ + public java.lang.String getIncludedPrimaryTypes(int index) { + return includedPrimaryTypes_.get(index); + } + /** + * + * + *
+     * Included primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_primary_types = 5; + * + * @param index The index of the value to return. + * @return The bytes of the includedPrimaryTypes at the given index. + */ + public com.google.protobuf.ByteString getIncludedPrimaryTypesBytes(int index) { + return includedPrimaryTypes_.getByteString(index); + } + /** + * + * + *
+     * Included primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_primary_types = 5; + * + * @param index The index to set the value at. + * @param value The includedPrimaryTypes to set. + * @return This builder for chaining. + */ + public Builder setIncludedPrimaryTypes(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureIncludedPrimaryTypesIsMutable(); + includedPrimaryTypes_.set(index, value); + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * + * + *
+     * Included primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_primary_types = 5; + * + * @param value The includedPrimaryTypes to add. + * @return This builder for chaining. + */ + public Builder addIncludedPrimaryTypes(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureIncludedPrimaryTypesIsMutable(); + includedPrimaryTypes_.add(value); + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * + * + *
+     * Included primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_primary_types = 5; + * + * @param values The includedPrimaryTypes to add. + * @return This builder for chaining. + */ + public Builder addAllIncludedPrimaryTypes(java.lang.Iterable values) { + ensureIncludedPrimaryTypesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, includedPrimaryTypes_); + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * + * + *
+     * Included primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_primary_types = 5; + * + * @return This builder for chaining. + */ + public Builder clearIncludedPrimaryTypes() { + includedPrimaryTypes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000010); + ; + onChanged(); + return this; + } + /** + * + * + *
+     * Included primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string included_primary_types = 5; + * + * @param value The bytes of the includedPrimaryTypes to add. + * @return This builder for chaining. + */ + public Builder addIncludedPrimaryTypesBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureIncludedPrimaryTypesIsMutable(); + includedPrimaryTypes_.add(value); + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList excludedPrimaryTypes_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureExcludedPrimaryTypesIsMutable() { + if (!excludedPrimaryTypes_.isModifiable()) { + excludedPrimaryTypes_ = new com.google.protobuf.LazyStringArrayList(excludedPrimaryTypes_); + } + bitField0_ |= 0x00000020; + } + /** + * + * + *
+     * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_primary_types = 6; + * + * @return A list containing the excludedPrimaryTypes. + */ + public com.google.protobuf.ProtocolStringList getExcludedPrimaryTypesList() { + excludedPrimaryTypes_.makeImmutable(); + return excludedPrimaryTypes_; + } + /** + * + * + *
+     * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_primary_types = 6; + * + * @return The count of excludedPrimaryTypes. + */ + public int getExcludedPrimaryTypesCount() { + return excludedPrimaryTypes_.size(); + } + /** + * + * + *
+     * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_primary_types = 6; + * + * @param index The index of the element to return. + * @return The excludedPrimaryTypes at the given index. + */ + public java.lang.String getExcludedPrimaryTypes(int index) { + return excludedPrimaryTypes_.get(index); + } + /** + * + * + *
+     * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_primary_types = 6; + * + * @param index The index of the value to return. + * @return The bytes of the excludedPrimaryTypes at the given index. + */ + public com.google.protobuf.ByteString getExcludedPrimaryTypesBytes(int index) { + return excludedPrimaryTypes_.getByteString(index); + } + /** + * + * + *
+     * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_primary_types = 6; + * + * @param index The index to set the value at. + * @param value The excludedPrimaryTypes to set. + * @return This builder for chaining. + */ + public Builder setExcludedPrimaryTypes(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureExcludedPrimaryTypesIsMutable(); + excludedPrimaryTypes_.set(index, value); + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * + * + *
+     * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_primary_types = 6; + * + * @param value The excludedPrimaryTypes to add. + * @return This builder for chaining. + */ + public Builder addExcludedPrimaryTypes(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureExcludedPrimaryTypesIsMutable(); + excludedPrimaryTypes_.add(value); + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * + * + *
+     * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_primary_types = 6; + * + * @param values The excludedPrimaryTypes to add. + * @return This builder for chaining. + */ + public Builder addAllExcludedPrimaryTypes(java.lang.Iterable values) { + ensureExcludedPrimaryTypesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, excludedPrimaryTypes_); + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * + * + *
+     * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_primary_types = 6; + * + * @return This builder for chaining. + */ + public Builder clearExcludedPrimaryTypes() { + excludedPrimaryTypes_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000020); + ; + onChanged(); + return this; + } + /** + * + * + *
+     * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+     * https://developers.google.com/places/supported_types.
+     *
+     * If there are any conflicting primary types, i.e. a type appears in both
+     * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+     * error is returned.
+     *
+     * If a Place type is specified with multiple type restrictions, only places
+     * that satisfy all of the restrictions are returned. For example, if we
+     * have {included_types = ["restaurant"], excluded_primary_types =
+     * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+     * related services but do not operate primarily as "restaurants".
+     * 
+ * + * repeated string excluded_primary_types = 6; + * + * @param value The bytes of the excludedPrimaryTypes to add. + * @return This builder for chaining. + */ + public Builder addExcludedPrimaryTypesBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureExcludedPrimaryTypesIsMutable(); + excludedPrimaryTypes_.add(value); + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + private int maxResultCount_; + /** + * + * + *
+     * Maximum number of results to return. It must be between 1 and 20,
+     * inclusively. If the number is unset, it falls back to the upper limit. If
+     * the number is set to negative or exceeds the upper limit, an
+     * INVALID_ARGUMENT error is returned.
+     * 
+ * + * int32 max_result_count = 7; + * + * @return The maxResultCount. + */ + @java.lang.Override + public int getMaxResultCount() { + return maxResultCount_; + } + /** + * + * + *
+     * Maximum number of results to return. It must be between 1 and 20,
+     * inclusively. If the number is unset, it falls back to the upper limit. If
+     * the number is set to negative or exceeds the upper limit, an
+     * INVALID_ARGUMENT error is returned.
+     * 
+ * + * int32 max_result_count = 7; + * + * @param value The maxResultCount to set. + * @return This builder for chaining. + */ + public Builder setMaxResultCount(int value) { + + maxResultCount_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * + * + *
+     * Maximum number of results to return. It must be between 1 and 20,
+     * inclusively. If the number is unset, it falls back to the upper limit. If
+     * the number is set to negative or exceeds the upper limit, an
+     * INVALID_ARGUMENT error is returned.
+     * 
+ * + * int32 max_result_count = 7; + * + * @return This builder for chaining. + */ + public Builder clearMaxResultCount() { + bitField0_ = (bitField0_ & ~0x00000040); + maxResultCount_ = 0; + onChanged(); + return this; + } + + private com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction locationRestriction_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction, + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.Builder, + com.google.maps.places.v1.SearchNearbyRequest.LocationRestrictionOrBuilder> + locationRestrictionBuilder_; + /** + * + * + *
+     * Required. The region to search.
+     * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + * + * @return Whether the locationRestriction field is set. + */ + public boolean hasLocationRestriction() { + return ((bitField0_ & 0x00000080) != 0); + } + /** + * + * + *
+     * Required. The region to search.
+     * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + * + * @return The locationRestriction. + */ + public com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction + getLocationRestriction() { + if (locationRestrictionBuilder_ == null) { + return locationRestriction_ == null + ? com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.getDefaultInstance() + : locationRestriction_; + } else { + return locationRestrictionBuilder_.getMessage(); + } + } + /** + * + * + *
+     * Required. The region to search.
+     * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + */ + public Builder setLocationRestriction( + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction value) { + if (locationRestrictionBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + locationRestriction_ = value; + } else { + locationRestrictionBuilder_.setMessage(value); + } + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * + * + *
+     * Required. The region to search.
+     * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + */ + public Builder setLocationRestriction( + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.Builder builderForValue) { + if (locationRestrictionBuilder_ == null) { + locationRestriction_ = builderForValue.build(); + } else { + locationRestrictionBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * + * + *
+     * Required. The region to search.
+     * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + */ + public Builder mergeLocationRestriction( + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction value) { + if (locationRestrictionBuilder_ == null) { + if (((bitField0_ & 0x00000080) != 0) + && locationRestriction_ != null + && locationRestriction_ + != com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction + .getDefaultInstance()) { + getLocationRestrictionBuilder().mergeFrom(value); + } else { + locationRestriction_ = value; + } + } else { + locationRestrictionBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * + * + *
+     * Required. The region to search.
+     * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + */ + public Builder clearLocationRestriction() { + bitField0_ = (bitField0_ & ~0x00000080); + locationRestriction_ = null; + if (locationRestrictionBuilder_ != null) { + locationRestrictionBuilder_.dispose(); + locationRestrictionBuilder_ = null; + } + onChanged(); + return this; + } + /** + * + * + *
+     * Required. The region to search.
+     * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + */ + public com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.Builder + getLocationRestrictionBuilder() { + bitField0_ |= 0x00000080; + onChanged(); + return getLocationRestrictionFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * Required. The region to search.
+     * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + */ + public com.google.maps.places.v1.SearchNearbyRequest.LocationRestrictionOrBuilder + getLocationRestrictionOrBuilder() { + if (locationRestrictionBuilder_ != null) { + return locationRestrictionBuilder_.getMessageOrBuilder(); + } else { + return locationRestriction_ == null + ? com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.getDefaultInstance() + : locationRestriction_; + } + } + /** + * + * + *
+     * Required. The region to search.
+     * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction, + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.Builder, + com.google.maps.places.v1.SearchNearbyRequest.LocationRestrictionOrBuilder> + getLocationRestrictionFieldBuilder() { + if (locationRestrictionBuilder_ == null) { + locationRestrictionBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction, + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction.Builder, + com.google.maps.places.v1.SearchNearbyRequest.LocationRestrictionOrBuilder>( + getLocationRestriction(), getParentForChildren(), isClean()); + locationRestriction_ = null; + } + return locationRestrictionBuilder_; + } + + private int rankPreference_ = 0; + /** + * + * + *
+     * How results will be ranked in the response.
+     * 
+ * + * .google.maps.places.v1.SearchNearbyRequest.RankPreference rank_preference = 9; + * + * @return The enum numeric value on the wire for rankPreference. + */ + @java.lang.Override + public int getRankPreferenceValue() { + return rankPreference_; + } + /** + * + * + *
+     * How results will be ranked in the response.
+     * 
+ * + * .google.maps.places.v1.SearchNearbyRequest.RankPreference rank_preference = 9; + * + * @param value The enum numeric value on the wire for rankPreference to set. + * @return This builder for chaining. + */ + public Builder setRankPreferenceValue(int value) { + rankPreference_ = value; + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * + * + *
+     * How results will be ranked in the response.
+     * 
+ * + * .google.maps.places.v1.SearchNearbyRequest.RankPreference rank_preference = 9; + * + * @return The rankPreference. + */ + @java.lang.Override + public com.google.maps.places.v1.SearchNearbyRequest.RankPreference getRankPreference() { + com.google.maps.places.v1.SearchNearbyRequest.RankPreference result = + com.google.maps.places.v1.SearchNearbyRequest.RankPreference.forNumber(rankPreference_); + return result == null + ? com.google.maps.places.v1.SearchNearbyRequest.RankPreference.UNRECOGNIZED + : result; + } + /** + * + * + *
+     * How results will be ranked in the response.
+     * 
+ * + * .google.maps.places.v1.SearchNearbyRequest.RankPreference rank_preference = 9; + * + * @param value The rankPreference to set. + * @return This builder for chaining. + */ + public Builder setRankPreference( + com.google.maps.places.v1.SearchNearbyRequest.RankPreference value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000100; + rankPreference_ = value.getNumber(); + onChanged(); + return this; + } + /** + * + * + *
+     * How results will be ranked in the response.
+     * 
+ * + * .google.maps.places.v1.SearchNearbyRequest.RankPreference rank_preference = 9; + * + * @return This builder for chaining. + */ + public Builder clearRankPreference() { + bitField0_ = (bitField0_ & ~0x00000100); + rankPreference_ = 0; + onChanged(); + return this; + } + + @java.lang.Override + public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.SearchNearbyRequest) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.SearchNearbyRequest) + private static final com.google.maps.places.v1.SearchNearbyRequest DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.SearchNearbyRequest(); + } + + public static com.google.maps.places.v1.SearchNearbyRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public SearchNearbyRequest 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.maps.places.v1.SearchNearbyRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchNearbyRequestOrBuilder.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchNearbyRequestOrBuilder.java new file mode 100644 index 000000000000..7f539aa5ce6e --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchNearbyRequestOrBuilder.java @@ -0,0 +1,584 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/places_service.proto + +package com.google.maps.places.v1; + +public interface SearchNearbyRequestOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.SearchNearbyRequest) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Place details will be displayed with the preferred language if available.
+   * If the language code is unspecified or unrecognized, place details of any
+   * language may be returned, with a preference for English if such details
+   * exist.
+   *
+   * Current list of supported languages:
+   * https://developers.google.com/maps/faq#languagesupport.
+   * 
+ * + * string language_code = 1; + * + * @return The languageCode. + */ + java.lang.String getLanguageCode(); + /** + * + * + *
+   * Place details will be displayed with the preferred language if available.
+   * If the language code is unspecified or unrecognized, place details of any
+   * language may be returned, with a preference for English if such details
+   * exist.
+   *
+   * Current list of supported languages:
+   * https://developers.google.com/maps/faq#languagesupport.
+   * 
+ * + * string language_code = 1; + * + * @return The bytes for languageCode. + */ + com.google.protobuf.ByteString getLanguageCodeBytes(); + + /** + * + * + *
+   * The Unicode country/region code (CLDR) of the location where the
+   * request is coming from. This parameter is used to display the place
+   * details, like region-specific place name, if available. The parameter can
+   * affect results based on applicable law.
+   *
+   * For more information, see
+   * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+   *
+   *
+   * Note that 3-digit region codes are not currently supported.
+   * 
+ * + * string region_code = 2; + * + * @return The regionCode. + */ + java.lang.String getRegionCode(); + /** + * + * + *
+   * The Unicode country/region code (CLDR) of the location where the
+   * request is coming from. This parameter is used to display the place
+   * details, like region-specific place name, if available. The parameter can
+   * affect results based on applicable law.
+   *
+   * For more information, see
+   * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+   *
+   *
+   * Note that 3-digit region codes are not currently supported.
+   * 
+ * + * string region_code = 2; + * + * @return The bytes for regionCode. + */ + com.google.protobuf.ByteString getRegionCodeBytes(); + + /** + * + * + *
+   * Included Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is
+   * returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_types = 3; + * + * @return A list containing the includedTypes. + */ + java.util.List getIncludedTypesList(); + /** + * + * + *
+   * Included Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is
+   * returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_types = 3; + * + * @return The count of includedTypes. + */ + int getIncludedTypesCount(); + /** + * + * + *
+   * Included Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is
+   * returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_types = 3; + * + * @param index The index of the element to return. + * @return The includedTypes at the given index. + */ + java.lang.String getIncludedTypes(int index); + /** + * + * + *
+   * Included Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is
+   * returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_types = 3; + * + * @param index The index of the value to return. + * @return The bytes of the includedTypes at the given index. + */ + com.google.protobuf.ByteString getIncludedTypesBytes(int index); + + /** + * + * + *
+   * Excluded Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If the client provides both included_types (e.g. restaurant) and
+   * excluded_types (e.g. cafe), then the response should include places that
+   * are restaurant but not cafe. The response includes places that match at
+   * least one of the included_types and none of the excluded_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_types = 4; + * + * @return A list containing the excludedTypes. + */ + java.util.List getExcludedTypesList(); + /** + * + * + *
+   * Excluded Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If the client provides both included_types (e.g. restaurant) and
+   * excluded_types (e.g. cafe), then the response should include places that
+   * are restaurant but not cafe. The response includes places that match at
+   * least one of the included_types and none of the excluded_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_types = 4; + * + * @return The count of excludedTypes. + */ + int getExcludedTypesCount(); + /** + * + * + *
+   * Excluded Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If the client provides both included_types (e.g. restaurant) and
+   * excluded_types (e.g. cafe), then the response should include places that
+   * are restaurant but not cafe. The response includes places that match at
+   * least one of the included_types and none of the excluded_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_types = 4; + * + * @param index The index of the element to return. + * @return The excludedTypes at the given index. + */ + java.lang.String getExcludedTypes(int index); + /** + * + * + *
+   * Excluded Place type (eg, "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If the client provides both included_types (e.g. restaurant) and
+   * excluded_types (e.g. cafe), then the response should include places that
+   * are restaurant but not cafe. The response includes places that match at
+   * least one of the included_types and none of the excluded_types.
+   *
+   * If there are any conflicting types, i.e. a type appears in both
+   * included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_types = 4; + * + * @param index The index of the value to return. + * @return The bytes of the excludedTypes at the given index. + */ + com.google.protobuf.ByteString getExcludedTypesBytes(int index); + + /** + * + * + *
+   * Included primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_primary_types = 5; + * + * @return A list containing the includedPrimaryTypes. + */ + java.util.List getIncludedPrimaryTypesList(); + /** + * + * + *
+   * Included primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_primary_types = 5; + * + * @return The count of includedPrimaryTypes. + */ + int getIncludedPrimaryTypesCount(); + /** + * + * + *
+   * Included primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_primary_types = 5; + * + * @param index The index of the element to return. + * @return The includedPrimaryTypes at the given index. + */ + java.lang.String getIncludedPrimaryTypes(int index); + /** + * + * + *
+   * Included primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string included_primary_types = 5; + * + * @param index The index of the value to return. + * @return The bytes of the includedPrimaryTypes at the given index. + */ + com.google.protobuf.ByteString getIncludedPrimaryTypesBytes(int index); + + /** + * + * + *
+   * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_primary_types = 6; + * + * @return A list containing the excludedPrimaryTypes. + */ + java.util.List getExcludedPrimaryTypesList(); + /** + * + * + *
+   * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_primary_types = 6; + * + * @return The count of excludedPrimaryTypes. + */ + int getExcludedPrimaryTypesCount(); + /** + * + * + *
+   * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_primary_types = 6; + * + * @param index The index of the element to return. + * @return The excludedPrimaryTypes at the given index. + */ + java.lang.String getExcludedPrimaryTypes(int index); + /** + * + * + *
+   * Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+   * https://developers.google.com/places/supported_types.
+   *
+   * If there are any conflicting primary types, i.e. a type appears in both
+   * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+   * error is returned.
+   *
+   * If a Place type is specified with multiple type restrictions, only places
+   * that satisfy all of the restrictions are returned. For example, if we
+   * have {included_types = ["restaurant"], excluded_primary_types =
+   * ["restaurant"]}, the returned places are POIs that provide "restaurant"
+   * related services but do not operate primarily as "restaurants".
+   * 
+ * + * repeated string excluded_primary_types = 6; + * + * @param index The index of the value to return. + * @return The bytes of the excludedPrimaryTypes at the given index. + */ + com.google.protobuf.ByteString getExcludedPrimaryTypesBytes(int index); + + /** + * + * + *
+   * Maximum number of results to return. It must be between 1 and 20,
+   * inclusively. If the number is unset, it falls back to the upper limit. If
+   * the number is set to negative or exceeds the upper limit, an
+   * INVALID_ARGUMENT error is returned.
+   * 
+ * + * int32 max_result_count = 7; + * + * @return The maxResultCount. + */ + int getMaxResultCount(); + + /** + * + * + *
+   * Required. The region to search.
+   * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + * + * @return Whether the locationRestriction field is set. + */ + boolean hasLocationRestriction(); + /** + * + * + *
+   * Required. The region to search.
+   * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + * + * @return The locationRestriction. + */ + com.google.maps.places.v1.SearchNearbyRequest.LocationRestriction getLocationRestriction(); + /** + * + * + *
+   * Required. The region to search.
+   * 
+ * + * + * .google.maps.places.v1.SearchNearbyRequest.LocationRestriction location_restriction = 8 [(.google.api.field_behavior) = REQUIRED]; + * + */ + com.google.maps.places.v1.SearchNearbyRequest.LocationRestrictionOrBuilder + getLocationRestrictionOrBuilder(); + + /** + * + * + *
+   * How results will be ranked in the response.
+   * 
+ * + * .google.maps.places.v1.SearchNearbyRequest.RankPreference rank_preference = 9; + * + * @return The enum numeric value on the wire for rankPreference. + */ + int getRankPreferenceValue(); + /** + * + * + *
+   * How results will be ranked in the response.
+   * 
+ * + * .google.maps.places.v1.SearchNearbyRequest.RankPreference rank_preference = 9; + * + * @return The rankPreference. + */ + com.google.maps.places.v1.SearchNearbyRequest.RankPreference getRankPreference(); +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchNearbyResponse.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchNearbyResponse.java new file mode 100644 index 000000000000..f1d425ba4df4 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchNearbyResponse.java @@ -0,0 +1,952 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/places_service.proto + +package com.google.maps.places.v1; + +/** + * + * + *
+ * Response proto for Search Nearby.
+ * 
+ * + * Protobuf type {@code google.maps.places.v1.SearchNearbyResponse} + */ +public final class SearchNearbyResponse extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.maps.places.v1.SearchNearbyResponse) + SearchNearbyResponseOrBuilder { + private static final long serialVersionUID = 0L; + // Use SearchNearbyResponse.newBuilder() to construct. + private SearchNearbyResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private SearchNearbyResponse() { + places_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new SearchNearbyResponse(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.SearchNearbyResponse.class, + com.google.maps.places.v1.SearchNearbyResponse.Builder.class); + } + + public static final int PLACES_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private java.util.List places_; + /** + * + * + *
+   * A list of interesting places that meets user's requirements like places
+   * types, number of places and specific location restriction.
+   * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + @java.lang.Override + public java.util.List getPlacesList() { + return places_; + } + /** + * + * + *
+   * A list of interesting places that meets user's requirements like places
+   * types, number of places and specific location restriction.
+   * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + @java.lang.Override + public java.util.List + getPlacesOrBuilderList() { + return places_; + } + /** + * + * + *
+   * A list of interesting places that meets user's requirements like places
+   * types, number of places and specific location restriction.
+   * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + @java.lang.Override + public int getPlacesCount() { + return places_.size(); + } + /** + * + * + *
+   * A list of interesting places that meets user's requirements like places
+   * types, number of places and specific location restriction.
+   * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + @java.lang.Override + public com.google.maps.places.v1.Place getPlaces(int index) { + return places_.get(index); + } + /** + * + * + *
+   * A list of interesting places that meets user's requirements like places
+   * types, number of places and specific location restriction.
+   * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + @java.lang.Override + public com.google.maps.places.v1.PlaceOrBuilder getPlacesOrBuilder(int index) { + return places_.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 < places_.size(); i++) { + output.writeMessage(1, places_.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 < places_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, places_.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.maps.places.v1.SearchNearbyResponse)) { + return super.equals(obj); + } + com.google.maps.places.v1.SearchNearbyResponse other = + (com.google.maps.places.v1.SearchNearbyResponse) obj; + + if (!getPlacesList().equals(other.getPlacesList())) 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 (getPlacesCount() > 0) { + hash = (37 * hash) + PLACES_FIELD_NUMBER; + hash = (53 * hash) + getPlacesList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.maps.places.v1.SearchNearbyResponse parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.SearchNearbyResponse parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyResponse parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.SearchNearbyResponse parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyResponse parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.maps.places.v1.SearchNearbyResponse parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyResponse parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.SearchNearbyResponse parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyResponse parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.SearchNearbyResponse parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.maps.places.v1.SearchNearbyResponse parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.maps.places.v1.SearchNearbyResponse parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.maps.places.v1.SearchNearbyResponse 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.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+   * Response proto for Search Nearby.
+   * 
+ * + * Protobuf type {@code google.maps.places.v1.SearchNearbyResponse} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.maps.places.v1.SearchNearbyResponse) + com.google.maps.places.v1.SearchNearbyResponseOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.SearchNearbyResponse.class, + com.google.maps.places.v1.SearchNearbyResponse.Builder.class); + } + + // Construct using com.google.maps.places.v1.SearchNearbyResponse.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (placesBuilder_ == null) { + places_ = java.util.Collections.emptyList(); + } else { + places_ = null; + placesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchNearbyResponse_descriptor; + } + + @java.lang.Override + public com.google.maps.places.v1.SearchNearbyResponse getDefaultInstanceForType() { + return com.google.maps.places.v1.SearchNearbyResponse.getDefaultInstance(); + } + + @java.lang.Override + public com.google.maps.places.v1.SearchNearbyResponse build() { + com.google.maps.places.v1.SearchNearbyResponse result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.maps.places.v1.SearchNearbyResponse buildPartial() { + com.google.maps.places.v1.SearchNearbyResponse result = + new com.google.maps.places.v1.SearchNearbyResponse(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(com.google.maps.places.v1.SearchNearbyResponse result) { + if (placesBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + places_ = java.util.Collections.unmodifiableList(places_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.places_ = places_; + } else { + result.places_ = placesBuilder_.build(); + } + } + + private void buildPartial0(com.google.maps.places.v1.SearchNearbyResponse result) { + int from_bitField0_ = bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.maps.places.v1.SearchNearbyResponse) { + return mergeFrom((com.google.maps.places.v1.SearchNearbyResponse) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.maps.places.v1.SearchNearbyResponse other) { + if (other == com.google.maps.places.v1.SearchNearbyResponse.getDefaultInstance()) return this; + if (placesBuilder_ == null) { + if (!other.places_.isEmpty()) { + if (places_.isEmpty()) { + places_ = other.places_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensurePlacesIsMutable(); + places_.addAll(other.places_); + } + onChanged(); + } + } else { + if (!other.places_.isEmpty()) { + if (placesBuilder_.isEmpty()) { + placesBuilder_.dispose(); + placesBuilder_ = null; + places_ = other.places_; + bitField0_ = (bitField0_ & ~0x00000001); + placesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders + ? getPlacesFieldBuilder() + : null; + } else { + placesBuilder_.addAllMessages(other.places_); + } + } + } + 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.maps.places.v1.Place m = + input.readMessage(com.google.maps.places.v1.Place.parser(), extensionRegistry); + if (placesBuilder_ == null) { + ensurePlacesIsMutable(); + places_.add(m); + } else { + placesBuilder_.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 places_ = + java.util.Collections.emptyList(); + + private void ensurePlacesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + places_ = new java.util.ArrayList(places_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place, + com.google.maps.places.v1.Place.Builder, + com.google.maps.places.v1.PlaceOrBuilder> + placesBuilder_; + + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public java.util.List getPlacesList() { + if (placesBuilder_ == null) { + return java.util.Collections.unmodifiableList(places_); + } else { + return placesBuilder_.getMessageList(); + } + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public int getPlacesCount() { + if (placesBuilder_ == null) { + return places_.size(); + } else { + return placesBuilder_.getCount(); + } + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public com.google.maps.places.v1.Place getPlaces(int index) { + if (placesBuilder_ == null) { + return places_.get(index); + } else { + return placesBuilder_.getMessage(index); + } + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public Builder setPlaces(int index, com.google.maps.places.v1.Place value) { + if (placesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePlacesIsMutable(); + places_.set(index, value); + onChanged(); + } else { + placesBuilder_.setMessage(index, value); + } + return this; + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public Builder setPlaces(int index, com.google.maps.places.v1.Place.Builder builderForValue) { + if (placesBuilder_ == null) { + ensurePlacesIsMutable(); + places_.set(index, builderForValue.build()); + onChanged(); + } else { + placesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public Builder addPlaces(com.google.maps.places.v1.Place value) { + if (placesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePlacesIsMutable(); + places_.add(value); + onChanged(); + } else { + placesBuilder_.addMessage(value); + } + return this; + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public Builder addPlaces(int index, com.google.maps.places.v1.Place value) { + if (placesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePlacesIsMutable(); + places_.add(index, value); + onChanged(); + } else { + placesBuilder_.addMessage(index, value); + } + return this; + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public Builder addPlaces(com.google.maps.places.v1.Place.Builder builderForValue) { + if (placesBuilder_ == null) { + ensurePlacesIsMutable(); + places_.add(builderForValue.build()); + onChanged(); + } else { + placesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public Builder addPlaces(int index, com.google.maps.places.v1.Place.Builder builderForValue) { + if (placesBuilder_ == null) { + ensurePlacesIsMutable(); + places_.add(index, builderForValue.build()); + onChanged(); + } else { + placesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public Builder addAllPlaces( + java.lang.Iterable values) { + if (placesBuilder_ == null) { + ensurePlacesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, places_); + onChanged(); + } else { + placesBuilder_.addAllMessages(values); + } + return this; + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public Builder clearPlaces() { + if (placesBuilder_ == null) { + places_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + placesBuilder_.clear(); + } + return this; + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public Builder removePlaces(int index) { + if (placesBuilder_ == null) { + ensurePlacesIsMutable(); + places_.remove(index); + onChanged(); + } else { + placesBuilder_.remove(index); + } + return this; + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public com.google.maps.places.v1.Place.Builder getPlacesBuilder(int index) { + return getPlacesFieldBuilder().getBuilder(index); + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public com.google.maps.places.v1.PlaceOrBuilder getPlacesOrBuilder(int index) { + if (placesBuilder_ == null) { + return places_.get(index); + } else { + return placesBuilder_.getMessageOrBuilder(index); + } + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public java.util.List + getPlacesOrBuilderList() { + if (placesBuilder_ != null) { + return placesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(places_); + } + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public com.google.maps.places.v1.Place.Builder addPlacesBuilder() { + return getPlacesFieldBuilder() + .addBuilder(com.google.maps.places.v1.Place.getDefaultInstance()); + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public com.google.maps.places.v1.Place.Builder addPlacesBuilder(int index) { + return getPlacesFieldBuilder() + .addBuilder(index, com.google.maps.places.v1.Place.getDefaultInstance()); + } + /** + * + * + *
+     * A list of interesting places that meets user's requirements like places
+     * types, number of places and specific location restriction.
+     * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + public java.util.List getPlacesBuilderList() { + return getPlacesFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place, + com.google.maps.places.v1.Place.Builder, + com.google.maps.places.v1.PlaceOrBuilder> + getPlacesFieldBuilder() { + if (placesBuilder_ == null) { + placesBuilder_ = + new com.google.protobuf.RepeatedFieldBuilderV3< + com.google.maps.places.v1.Place, + com.google.maps.places.v1.Place.Builder, + com.google.maps.places.v1.PlaceOrBuilder>( + places_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); + places_ = null; + } + return placesBuilder_; + } + + @java.lang.Override + public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.maps.places.v1.SearchNearbyResponse) + } + + // @@protoc_insertion_point(class_scope:google.maps.places.v1.SearchNearbyResponse) + private static final com.google.maps.places.v1.SearchNearbyResponse DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.maps.places.v1.SearchNearbyResponse(); + } + + public static com.google.maps.places.v1.SearchNearbyResponse getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public SearchNearbyResponse 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.maps.places.v1.SearchNearbyResponse getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchNearbyResponseOrBuilder.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchNearbyResponseOrBuilder.java new file mode 100644 index 000000000000..2e634f80b2f8 --- /dev/null +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchNearbyResponseOrBuilder.java @@ -0,0 +1,81 @@ +/* + * Copyright 2023 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! +// source: google/maps/places/v1/places_service.proto + +package com.google.maps.places.v1; + +public interface SearchNearbyResponseOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.maps.places.v1.SearchNearbyResponse) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * A list of interesting places that meets user's requirements like places
+   * types, number of places and specific location restriction.
+   * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + java.util.List getPlacesList(); + /** + * + * + *
+   * A list of interesting places that meets user's requirements like places
+   * types, number of places and specific location restriction.
+   * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + com.google.maps.places.v1.Place getPlaces(int index); + /** + * + * + *
+   * A list of interesting places that meets user's requirements like places
+   * types, number of places and specific location restriction.
+   * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + int getPlacesCount(); + /** + * + * + *
+   * A list of interesting places that meets user's requirements like places
+   * types, number of places and specific location restriction.
+   * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + java.util.List getPlacesOrBuilderList(); + /** + * + * + *
+   * A list of interesting places that meets user's requirements like places
+   * types, number of places and specific location restriction.
+   * 
+ * + * repeated .google.maps.places.v1.Place places = 1; + */ + com.google.maps.places.v1.PlaceOrBuilder getPlacesOrBuilder(int index); +} diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchTextRequest.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchTextRequest.java index 2c78321542b4..2198f4f99c00 100644 --- a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchTextRequest.java +++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchTextRequest.java @@ -22,7 +22,7 @@ * * *
- * Request data structure for SearchText.
+ * Request proto for SearchText.
  * 
* * Protobuf type {@code google.maps.places.v1.SearchTextRequest} @@ -52,1145 +52,178 @@ protected java.lang.Object newInstance(UnusedPrivateParameter unused) { return new SearchTextRequest(); } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; - } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlacesServiceProto .internal_static_google_maps_places_v1_SearchTextRequest_descriptor; } - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.maps.places.v1.PlacesServiceProto - .internal_static_google_maps_places_v1_SearchTextRequest_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.SearchTextRequest.class, - com.google.maps.places.v1.SearchTextRequest.Builder.class); - } - - /** - * - * - *
-   * How results will be ranked in the response.
-   * 
- * - * Protobuf enum {@code google.maps.places.v1.SearchTextRequest.RankPreference} - */ - public enum RankPreference implements com.google.protobuf.ProtocolMessageEnum { - /** - * - * - *
-     * RankPreference value not set. Will default to DISTANCE.
-     * 
- * - * RANK_PREFERENCE_UNSPECIFIED = 0; - */ - RANK_PREFERENCE_UNSPECIFIED(0), - /** - * - * - *
-     * Ranks results by distance.
-     * 
- * - * DISTANCE = 1; - */ - DISTANCE(1), - /** - * - * - *
-     * Ranks results by relevance. Sort order determined by normal ranking
-     * stack. See SortRefinement::RELEVANCE.
-     * 
- * - * RELEVANCE = 2; - */ - RELEVANCE(2), - UNRECOGNIZED(-1), - ; - - /** - * - * - *
-     * RankPreference value not set. Will default to DISTANCE.
-     * 
- * - * RANK_PREFERENCE_UNSPECIFIED = 0; - */ - public static final int RANK_PREFERENCE_UNSPECIFIED_VALUE = 0; - /** - * - * - *
-     * Ranks results by distance.
-     * 
- * - * DISTANCE = 1; - */ - public static final int DISTANCE_VALUE = 1; - /** - * - * - *
-     * Ranks results by relevance. Sort order determined by normal ranking
-     * stack. See SortRefinement::RELEVANCE.
-     * 
- * - * RELEVANCE = 2; - */ - public static final int RELEVANCE_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 RankPreference 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 RankPreference forNumber(int value) { - switch (value) { - case 0: - return RANK_PREFERENCE_UNSPECIFIED; - case 1: - return DISTANCE; - case 2: - return RELEVANCE; - 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 RankPreference findValueByNumber(int number) { - return RankPreference.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 final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { - return com.google.maps.places.v1.SearchTextRequest.getDescriptor().getEnumTypes().get(0); - } - - private static final RankPreference[] VALUES = values(); - - public static RankPreference 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 RankPreference(int value) { - this.value = value; - } - - // @@protoc_insertion_point(enum_scope:google.maps.places.v1.SearchTextRequest.RankPreference) - } - - public interface LocationOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.maps.places.v1.SearchTextRequest.Location) - com.google.protobuf.MessageOrBuilder { - - /** - * - * - *
-     * A rectangle box defined by northeast and southwest corner.
-     * 
- * - * .google.geo.type.Viewport rectangle = 1; - * - * @return Whether the rectangle field is set. - */ - boolean hasRectangle(); - /** - * - * - *
-     * A rectangle box defined by northeast and southwest corner.
-     * 
- * - * .google.geo.type.Viewport rectangle = 1; - * - * @return The rectangle. - */ - com.google.geo.type.Viewport getRectangle(); - /** - * - * - *
-     * A rectangle box defined by northeast and southwest corner.
-     * 
- * - * .google.geo.type.Viewport rectangle = 1; - */ - com.google.geo.type.ViewportOrBuilder getRectangleOrBuilder(); - - /** - * - * - *
-     * Make location field a strict restriction and filter out POIs outside of
-     * the given location. If location type field is unset this field will have
-     * no effect.
-     * 
- * - * bool strict_restriction = 2; - * - * @return The strictRestriction. - */ - boolean getStrictRestriction(); - - public com.google.maps.places.v1.SearchTextRequest.Location.TypeCase getTypeCase(); - } - /** - * - * - *
-   * The region to search.
-   * Deprecated. Use LocationRestriction or LocationBias instead.
-   * 
- * - * Protobuf type {@code google.maps.places.v1.SearchTextRequest.Location} - */ - public static final class Location extends com.google.protobuf.GeneratedMessageV3 - implements - // @@protoc_insertion_point(message_implements:google.maps.places.v1.SearchTextRequest.Location) - LocationOrBuilder { - private static final long serialVersionUID = 0L; - // Use Location.newBuilder() to construct. - private Location(com.google.protobuf.GeneratedMessageV3.Builder builder) { - super(builder); - } - - private Location() {} - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance(UnusedPrivateParameter unused) { - return new Location(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; - } - - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.maps.places.v1.PlacesServiceProto - .internal_static_google_maps_places_v1_SearchTextRequest_Location_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.maps.places.v1.PlacesServiceProto - .internal_static_google_maps_places_v1_SearchTextRequest_Location_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.SearchTextRequest.Location.class, - com.google.maps.places.v1.SearchTextRequest.Location.Builder.class); - } - - private int typeCase_ = 0; - private java.lang.Object type_; - - public enum TypeCase - implements - com.google.protobuf.Internal.EnumLite, - com.google.protobuf.AbstractMessage.InternalOneOfEnum { - RECTANGLE(1), - TYPE_NOT_SET(0); - private final int value; - - private TypeCase(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 TypeCase valueOf(int value) { - return forNumber(value); - } - - public static TypeCase forNumber(int value) { - switch (value) { - case 1: - return RECTANGLE; - case 0: - return TYPE_NOT_SET; - default: - return null; - } - } - - public int getNumber() { - return this.value; - } - }; - - public TypeCase getTypeCase() { - return TypeCase.forNumber(typeCase_); - } - - public static final int RECTANGLE_FIELD_NUMBER = 1; - /** - * - * - *
-     * A rectangle box defined by northeast and southwest corner.
-     * 
- * - * .google.geo.type.Viewport rectangle = 1; - * - * @return Whether the rectangle field is set. - */ - @java.lang.Override - public boolean hasRectangle() { - return typeCase_ == 1; - } - /** - * - * - *
-     * A rectangle box defined by northeast and southwest corner.
-     * 
- * - * .google.geo.type.Viewport rectangle = 1; - * - * @return The rectangle. - */ - @java.lang.Override - public com.google.geo.type.Viewport getRectangle() { - if (typeCase_ == 1) { - return (com.google.geo.type.Viewport) type_; - } - return com.google.geo.type.Viewport.getDefaultInstance(); - } - /** - * - * - *
-     * A rectangle box defined by northeast and southwest corner.
-     * 
- * - * .google.geo.type.Viewport rectangle = 1; - */ - @java.lang.Override - public com.google.geo.type.ViewportOrBuilder getRectangleOrBuilder() { - if (typeCase_ == 1) { - return (com.google.geo.type.Viewport) type_; - } - return com.google.geo.type.Viewport.getDefaultInstance(); - } - - public static final int STRICT_RESTRICTION_FIELD_NUMBER = 2; - private boolean strictRestriction_ = false; - /** - * - * - *
-     * Make location field a strict restriction and filter out POIs outside of
-     * the given location. If location type field is unset this field will have
-     * no effect.
-     * 
- * - * bool strict_restriction = 2; - * - * @return The strictRestriction. - */ - @java.lang.Override - public boolean getStrictRestriction() { - return strictRestriction_; - } - - 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 (typeCase_ == 1) { - output.writeMessage(1, (com.google.geo.type.Viewport) type_); - } - if (strictRestriction_ != false) { - output.writeBool(2, strictRestriction_); - } - getUnknownFields().writeTo(output); - } - - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - if (typeCase_ == 1) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 1, (com.google.geo.type.Viewport) type_); - } - if (strictRestriction_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(2, strictRestriction_); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } - - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof com.google.maps.places.v1.SearchTextRequest.Location)) { - return super.equals(obj); - } - com.google.maps.places.v1.SearchTextRequest.Location other = - (com.google.maps.places.v1.SearchTextRequest.Location) obj; - - if (getStrictRestriction() != other.getStrictRestriction()) return false; - if (!getTypeCase().equals(other.getTypeCase())) return false; - switch (typeCase_) { - case 1: - if (!getRectangle().equals(other.getRectangle())) 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) + STRICT_RESTRICTION_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getStrictRestriction()); - switch (typeCase_) { - case 1: - hash = (37 * hash) + RECTANGLE_FIELD_NUMBER; - hash = (53 * hash) + getRectangle().hashCode(); - break; - case 0: - default: - } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static com.google.maps.places.v1.SearchTextRequest.Location parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.maps.places.v1.SearchTextRequest.Location parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.maps.places.v1.SearchTextRequest.Location parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.maps.places.v1.SearchTextRequest.Location parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.maps.places.v1.SearchTextRequest.Location parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.maps.places.v1.SearchTextRequest.Location parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.maps.places.v1.SearchTextRequest.Location parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } - - public static com.google.maps.places.v1.SearchTextRequest.Location parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } - - public static com.google.maps.places.v1.SearchTextRequest.Location parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); - } - - public static com.google.maps.places.v1.SearchTextRequest.Location parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } - - public static com.google.maps.places.v1.SearchTextRequest.Location parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } - - public static com.google.maps.places.v1.SearchTextRequest.Location parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } - - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } - - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } - - public static Builder newBuilder( - com.google.maps.places.v1.SearchTextRequest.Location 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.GeneratedMessageV3.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } - /** - * - * - *
-     * The region to search.
-     * Deprecated. Use LocationRestriction or LocationBias instead.
-     * 
- * - * Protobuf type {@code google.maps.places.v1.SearchTextRequest.Location} - */ - public static final class Builder - extends com.google.protobuf.GeneratedMessageV3.Builder - implements - // @@protoc_insertion_point(builder_implements:google.maps.places.v1.SearchTextRequest.Location) - com.google.maps.places.v1.SearchTextRequest.LocationOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.maps.places.v1.PlacesServiceProto - .internal_static_google_maps_places_v1_SearchTextRequest_Location_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.maps.places.v1.PlacesServiceProto - .internal_static_google_maps_places_v1_SearchTextRequest_Location_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.maps.places.v1.SearchTextRequest.Location.class, - com.google.maps.places.v1.SearchTextRequest.Location.Builder.class); - } - - // Construct using com.google.maps.places.v1.SearchTextRequest.Location.newBuilder() - private Builder() {} - - private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - } - - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - if (rectangleBuilder_ != null) { - rectangleBuilder_.clear(); - } - strictRestriction_ = false; - typeCase_ = 0; - type_ = null; - return this; - } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.maps.places.v1.PlacesServiceProto - .internal_static_google_maps_places_v1_SearchTextRequest_Location_descriptor; - } - - @java.lang.Override - public com.google.maps.places.v1.SearchTextRequest.Location getDefaultInstanceForType() { - return com.google.maps.places.v1.SearchTextRequest.Location.getDefaultInstance(); - } - - @java.lang.Override - public com.google.maps.places.v1.SearchTextRequest.Location build() { - com.google.maps.places.v1.SearchTextRequest.Location result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } - - @java.lang.Override - public com.google.maps.places.v1.SearchTextRequest.Location buildPartial() { - com.google.maps.places.v1.SearchTextRequest.Location result = - new com.google.maps.places.v1.SearchTextRequest.Location(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - buildPartialOneofs(result); - onBuilt(); - return result; - } - - private void buildPartial0(com.google.maps.places.v1.SearchTextRequest.Location result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000002) != 0)) { - result.strictRestriction_ = strictRestriction_; - } - } - - private void buildPartialOneofs(com.google.maps.places.v1.SearchTextRequest.Location result) { - result.typeCase_ = typeCase_; - result.type_ = this.type_; - if (typeCase_ == 1 && rectangleBuilder_ != null) { - result.type_ = rectangleBuilder_.build(); - } - } - - @java.lang.Override - public Builder clone() { - return super.clone(); - } - - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.setField(field, value); - } - - @java.lang.Override - public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - - @java.lang.Override - public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, - java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.addRepeatedField(field, value); - } - - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.maps.places.v1.SearchTextRequest.Location) { - return mergeFrom((com.google.maps.places.v1.SearchTextRequest.Location) other); - } else { - super.mergeFrom(other); - return this; - } - } - - public Builder mergeFrom(com.google.maps.places.v1.SearchTextRequest.Location other) { - if (other == com.google.maps.places.v1.SearchTextRequest.Location.getDefaultInstance()) - return this; - if (other.getStrictRestriction() != false) { - setStrictRestriction(other.getStrictRestriction()); - } - switch (other.getTypeCase()) { - case RECTANGLE: - { - mergeRectangle(other.getRectangle()); - break; - } - case TYPE_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(getRectangleFieldBuilder().getBuilder(), extensionRegistry); - typeCase_ = 1; - break; - } // case 10 - case 16: - { - strictRestriction_ = 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 typeCase_ = 0; - private java.lang.Object type_; - - public TypeCase getTypeCase() { - return TypeCase.forNumber(typeCase_); - } - - public Builder clearType() { - typeCase_ = 0; - type_ = null; - onChanged(); - return this; - } - - private int bitField0_; - - private com.google.protobuf.SingleFieldBuilderV3< - com.google.geo.type.Viewport, - com.google.geo.type.Viewport.Builder, - com.google.geo.type.ViewportOrBuilder> - rectangleBuilder_; - /** - * - * - *
-       * A rectangle box defined by northeast and southwest corner.
-       * 
- * - * .google.geo.type.Viewport rectangle = 1; - * - * @return Whether the rectangle field is set. - */ - @java.lang.Override - public boolean hasRectangle() { - return typeCase_ == 1; - } - /** - * - * - *
-       * A rectangle box defined by northeast and southwest corner.
-       * 
- * - * .google.geo.type.Viewport rectangle = 1; - * - * @return The rectangle. - */ - @java.lang.Override - public com.google.geo.type.Viewport getRectangle() { - if (rectangleBuilder_ == null) { - if (typeCase_ == 1) { - return (com.google.geo.type.Viewport) type_; - } - return com.google.geo.type.Viewport.getDefaultInstance(); - } else { - if (typeCase_ == 1) { - return rectangleBuilder_.getMessage(); - } - return com.google.geo.type.Viewport.getDefaultInstance(); - } - } - /** - * - * - *
-       * A rectangle box defined by northeast and southwest corner.
-       * 
- * - * .google.geo.type.Viewport rectangle = 1; - */ - public Builder setRectangle(com.google.geo.type.Viewport value) { - if (rectangleBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - type_ = value; - onChanged(); - } else { - rectangleBuilder_.setMessage(value); - } - typeCase_ = 1; - return this; - } - /** - * - * - *
-       * A rectangle box defined by northeast and southwest corner.
-       * 
- * - * .google.geo.type.Viewport rectangle = 1; - */ - public Builder setRectangle(com.google.geo.type.Viewport.Builder builderForValue) { - if (rectangleBuilder_ == null) { - type_ = builderForValue.build(); - onChanged(); - } else { - rectangleBuilder_.setMessage(builderForValue.build()); - } - typeCase_ = 1; - return this; - } - /** - * - * - *
-       * A rectangle box defined by northeast and southwest corner.
-       * 
- * - * .google.geo.type.Viewport rectangle = 1; - */ - public Builder mergeRectangle(com.google.geo.type.Viewport value) { - if (rectangleBuilder_ == null) { - if (typeCase_ == 1 && type_ != com.google.geo.type.Viewport.getDefaultInstance()) { - type_ = - com.google.geo.type.Viewport.newBuilder((com.google.geo.type.Viewport) type_) - .mergeFrom(value) - .buildPartial(); - } else { - type_ = value; - } - onChanged(); - } else { - if (typeCase_ == 1) { - rectangleBuilder_.mergeFrom(value); - } else { - rectangleBuilder_.setMessage(value); - } - } - typeCase_ = 1; - return this; - } - /** - * - * - *
-       * A rectangle box defined by northeast and southwest corner.
-       * 
- * - * .google.geo.type.Viewport rectangle = 1; - */ - public Builder clearRectangle() { - if (rectangleBuilder_ == null) { - if (typeCase_ == 1) { - typeCase_ = 0; - type_ = null; - onChanged(); - } - } else { - if (typeCase_ == 1) { - typeCase_ = 0; - type_ = null; - } - rectangleBuilder_.clear(); - } - return this; - } - /** - * - * - *
-       * A rectangle box defined by northeast and southwest corner.
-       * 
- * - * .google.geo.type.Viewport rectangle = 1; - */ - public com.google.geo.type.Viewport.Builder getRectangleBuilder() { - return getRectangleFieldBuilder().getBuilder(); - } - /** - * - * - *
-       * A rectangle box defined by northeast and southwest corner.
-       * 
- * - * .google.geo.type.Viewport rectangle = 1; - */ - @java.lang.Override - public com.google.geo.type.ViewportOrBuilder getRectangleOrBuilder() { - if ((typeCase_ == 1) && (rectangleBuilder_ != null)) { - return rectangleBuilder_.getMessageOrBuilder(); - } else { - if (typeCase_ == 1) { - return (com.google.geo.type.Viewport) type_; - } - return com.google.geo.type.Viewport.getDefaultInstance(); - } - } - /** - * - * - *
-       * A rectangle box defined by northeast and southwest corner.
-       * 
- * - * .google.geo.type.Viewport rectangle = 1; - */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.geo.type.Viewport, - com.google.geo.type.Viewport.Builder, - com.google.geo.type.ViewportOrBuilder> - getRectangleFieldBuilder() { - if (rectangleBuilder_ == null) { - if (!(typeCase_ == 1)) { - type_ = com.google.geo.type.Viewport.getDefaultInstance(); - } - rectangleBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.geo.type.Viewport, - com.google.geo.type.Viewport.Builder, - com.google.geo.type.ViewportOrBuilder>( - (com.google.geo.type.Viewport) type_, getParentForChildren(), isClean()); - type_ = null; - } - typeCase_ = 1; - onChanged(); - return rectangleBuilder_; - } - - private boolean strictRestriction_; - /** - * - * - *
-       * Make location field a strict restriction and filter out POIs outside of
-       * the given location. If location type field is unset this field will have
-       * no effect.
-       * 
- * - * bool strict_restriction = 2; - * - * @return The strictRestriction. - */ - @java.lang.Override - public boolean getStrictRestriction() { - return strictRestriction_; - } - /** - * - * - *
-       * Make location field a strict restriction and filter out POIs outside of
-       * the given location. If location type field is unset this field will have
-       * no effect.
-       * 
- * - * bool strict_restriction = 2; - * - * @param value The strictRestriction to set. - * @return This builder for chaining. - */ - public Builder setStrictRestriction(boolean value) { + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.maps.places.v1.PlacesServiceProto + .internal_static_google_maps_places_v1_SearchTextRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.maps.places.v1.SearchTextRequest.class, + com.google.maps.places.v1.SearchTextRequest.Builder.class); + } - strictRestriction_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - /** - * - * - *
-       * Make location field a strict restriction and filter out POIs outside of
-       * the given location. If location type field is unset this field will have
-       * no effect.
-       * 
- * - * bool strict_restriction = 2; - * - * @return This builder for chaining. - */ - public Builder clearStrictRestriction() { - bitField0_ = (bitField0_ & ~0x00000002); - strictRestriction_ = false; - onChanged(); - return this; - } + /** + * + * + *
+   * How results will be ranked in the response.
+   * 
+ * + * Protobuf enum {@code google.maps.places.v1.SearchTextRequest.RankPreference} + */ + public enum RankPreference implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
+     * RankPreference value not set. Will default to DISTANCE.
+     * 
+ * + * RANK_PREFERENCE_UNSPECIFIED = 0; + */ + RANK_PREFERENCE_UNSPECIFIED(0), + /** + * + * + *
+     * Ranks results by distance.
+     * 
+ * + * DISTANCE = 1; + */ + DISTANCE(1), + /** + * + * + *
+     * Ranks results by relevance. Sort order determined by normal ranking
+     * stack. See SortRefinement::RELEVANCE.
+     * 
+ * + * RELEVANCE = 2; + */ + RELEVANCE(2), + UNRECOGNIZED(-1), + ; - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } + /** + * + * + *
+     * RankPreference value not set. Will default to DISTANCE.
+     * 
+ * + * RANK_PREFERENCE_UNSPECIFIED = 0; + */ + public static final int RANK_PREFERENCE_UNSPECIFIED_VALUE = 0; + /** + * + * + *
+     * Ranks results by distance.
+     * 
+ * + * DISTANCE = 1; + */ + public static final int DISTANCE_VALUE = 1; + /** + * + * + *
+     * Ranks results by relevance. Sort order determined by normal ranking
+     * stack. See SortRefinement::RELEVANCE.
+     * 
+ * + * RELEVANCE = 2; + */ + public static final int RELEVANCE_VALUE = 2; - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); } - - // @@protoc_insertion_point(builder_scope:google.maps.places.v1.SearchTextRequest.Location) + return value; } - // @@protoc_insertion_point(class_scope:google.maps.places.v1.SearchTextRequest.Location) - private static final com.google.maps.places.v1.SearchTextRequest.Location DEFAULT_INSTANCE; + /** + * @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 RankPreference valueOf(int value) { + return forNumber(value); + } - static { - DEFAULT_INSTANCE = new com.google.maps.places.v1.SearchTextRequest.Location(); + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static RankPreference forNumber(int value) { + switch (value) { + case 0: + return RANK_PREFERENCE_UNSPECIFIED; + case 1: + return DISTANCE; + case 2: + return RELEVANCE; + default: + return null; + } } - public static com.google.maps.places.v1.SearchTextRequest.Location getDefaultInstance() { - return DEFAULT_INSTANCE; + public static com.google.protobuf.Internal.EnumLiteMap internalGetValueMap() { + return internalValueMap; } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public Location 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 static final com.google.protobuf.Internal.EnumLiteMap internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public RankPreference findValueByNumber(int number) { + return RankPreference.forNumber(number); } }; - public static com.google.protobuf.Parser parser() { - return PARSER; + 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()); } - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; + public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { + return getDescriptor(); } - @java.lang.Override - public com.google.maps.places.v1.SearchTextRequest.Location getDefaultInstanceForType() { - return DEFAULT_INSTANCE; + public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.maps.places.v1.SearchTextRequest.getDescriptor().getEnumTypes().get(0); + } + + private static final RankPreference[] VALUES = values(); + + public static RankPreference 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 RankPreference(int value) { + this.value = value; } + + // @@protoc_insertion_point(enum_scope:google.maps.places.v1.SearchTextRequest.RankPreference) } public interface LocationBiasOrBuilder @@ -1268,7 +301,7 @@ public interface LocationBiasOrBuilder */ com.google.maps.places.v1.CircleOrBuilder getCircleOrBuilder(); - public com.google.maps.places.v1.SearchTextRequest.LocationBias.TypeCase getTypeCase(); + com.google.maps.places.v1.SearchTextRequest.LocationBias.TypeCase getTypeCase(); } /** * @@ -1298,11 +331,6 @@ protected java.lang.Object newInstance(UnusedPrivateParameter unused) { return new LocationBias(); } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; - } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlacesServiceProto .internal_static_google_maps_places_v1_SearchTextRequest_LocationBias_descriptor; @@ -1319,6 +347,8 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { } private int typeCase_ = 0; + + @SuppressWarnings("serial") private java.lang.Object type_; public enum TypeCase @@ -2406,7 +1436,7 @@ public interface LocationRestrictionOrBuilder */ com.google.geo.type.ViewportOrBuilder getRectangleOrBuilder(); - public com.google.maps.places.v1.SearchTextRequest.LocationRestriction.TypeCase getTypeCase(); + com.google.maps.places.v1.SearchTextRequest.LocationRestriction.TypeCase getTypeCase(); } /** * @@ -2436,11 +1466,6 @@ protected java.lang.Object newInstance(UnusedPrivateParameter unused) { return new LocationRestriction(); } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet getUnknownFields() { - return this.unknownFields; - } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.maps.places.v1.PlacesServiceProto .internal_static_google_maps_places_v1_SearchTextRequest_LocationRestriction_descriptor; @@ -2457,6 +1482,8 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { } private int typeCase_ = 0; + + @SuppressWarnings("serial") private java.lang.Object type_; public enum TypeCase @@ -3285,6 +2312,7 @@ public com.google.protobuf.ByteString getTextQueryBytes() { * If the language code is unspecified or unrecognized, place details of any * language may be returned, with a preference for English if such details * exist. + * * Current list of supported languages: * https://developers.google.com/maps/faq#languagesupport. * @@ -3313,6 +2341,7 @@ public java.lang.String getLanguageCode() { * If the language code is unspecified or unrecognized, place details of any * language may be returned, with a preference for English if such details * exist. + * * Current list of supported languages: * https://developers.google.com/maps/faq#languagesupport. * @@ -3343,10 +2372,14 @@ public com.google.protobuf.ByteString getLanguageCodeBytes() { * *
    * The Unicode country/region code (CLDR) of the location where the
-   * request is coming from. It is used to display the place details, like
-   * region-specific place name, if available.
+   * request is coming from. This parameter is used to display the place
+   * details, like region-specific place name, if available. The parameter can
+   * affect results based on applicable law.
+   *
    * For more information, see
    * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+   *
+   *
    * Note that 3-digit region codes are not currently supported.
    * 
* @@ -3371,10 +2404,14 @@ public java.lang.String getRegionCode() { * *
    * The Unicode country/region code (CLDR) of the location where the
-   * request is coming from. It is used to display the place details, like
-   * region-specific place name, if available.
+   * request is coming from. This parameter is used to display the place
+   * details, like region-specific place name, if available. The parameter can
+   * affect results based on applicable law.
+   *
    * For more information, see
    * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+   *
+   *
    * Note that 3-digit region codes are not currently supported.
    * 
* @@ -3410,98 +2447,26 @@ public com.google.protobuf.ByteString getRegionCodeBytes() { */ @java.lang.Override public int getRankPreferenceValue() { - return rankPreference_; - } - /** - * - * - *
-   * How results will be ranked in the response.
-   * 
- * - * .google.maps.places.v1.SearchTextRequest.RankPreference rank_preference = 4; - * - * @return The rankPreference. - */ - @java.lang.Override - public com.google.maps.places.v1.SearchTextRequest.RankPreference getRankPreference() { - com.google.maps.places.v1.SearchTextRequest.RankPreference result = - com.google.maps.places.v1.SearchTextRequest.RankPreference.forNumber(rankPreference_); - return result == null - ? com.google.maps.places.v1.SearchTextRequest.RankPreference.UNRECOGNIZED - : result; - } - - public static final int LOCATION_FIELD_NUMBER = 5; - private com.google.maps.places.v1.SearchTextRequest.Location location_; - /** - * - * - *
-   * The region to search. Setting location would usually yields
-   * better results. Recommended to set. This location serves as a bias unless
-   * strict_restriction is set to true, which turns the location to a strict
-   * restriction.
-   * Deprecated.  Use LocationRestriction or LocationBias instead.
-   * 
- * - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * - * - * @deprecated google.maps.places.v1.SearchTextRequest.location is deprecated. See - * google/maps/places/v1/places_service.proto;l=141 - * @return Whether the location field is set. - */ - @java.lang.Override - @java.lang.Deprecated - public boolean hasLocation() { - return location_ != null; - } - /** - * - * - *
-   * The region to search. Setting location would usually yields
-   * better results. Recommended to set. This location serves as a bias unless
-   * strict_restriction is set to true, which turns the location to a strict
-   * restriction.
-   * Deprecated.  Use LocationRestriction or LocationBias instead.
-   * 
- * - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * - * - * @deprecated google.maps.places.v1.SearchTextRequest.location is deprecated. See - * google/maps/places/v1/places_service.proto;l=141 - * @return The location. - */ - @java.lang.Override - @java.lang.Deprecated - public com.google.maps.places.v1.SearchTextRequest.Location getLocation() { - return location_ == null - ? com.google.maps.places.v1.SearchTextRequest.Location.getDefaultInstance() - : location_; + return rankPreference_; } /** * * *
-   * The region to search. Setting location would usually yields
-   * better results. Recommended to set. This location serves as a bias unless
-   * strict_restriction is set to true, which turns the location to a strict
-   * restriction.
-   * Deprecated.  Use LocationRestriction or LocationBias instead.
+   * How results will be ranked in the response.
    * 
* - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * + * .google.maps.places.v1.SearchTextRequest.RankPreference rank_preference = 4; + * + * @return The rankPreference. */ @java.lang.Override - @java.lang.Deprecated - public com.google.maps.places.v1.SearchTextRequest.LocationOrBuilder getLocationOrBuilder() { - return location_ == null - ? com.google.maps.places.v1.SearchTextRequest.Location.getDefaultInstance() - : location_; + public com.google.maps.places.v1.SearchTextRequest.RankPreference getRankPreference() { + com.google.maps.places.v1.SearchTextRequest.RankPreference result = + com.google.maps.places.v1.SearchTextRequest.RankPreference.forNumber(rankPreference_); + return result == null + ? com.google.maps.places.v1.SearchTextRequest.RankPreference.UNRECOGNIZED + : result; } public static final int INCLUDED_TYPE_FIELD_NUMBER = 6; @@ -3578,75 +2543,6 @@ public boolean getOpenNow() { return openNow_; } - public static final int PRICE_RANGE_FIELD_NUMBER = 8; - private com.google.maps.places.v1.Int32Range priceRange_; - /** - * - * - *
-   * [Deprecated!]Used to restrict the search to places that are within a
-   * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-   * set a maximum of 4 has no effect on the search results. Min price is
-   * default to 0 and max price is default to 4. Default value will be used if
-   * either min or max is unset.
-   * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - * - * @deprecated google.maps.places.v1.SearchTextRequest.price_range is deprecated. See - * google/maps/places/v1/places_service.proto;l=157 - * @return Whether the priceRange field is set. - */ - @java.lang.Override - @java.lang.Deprecated - public boolean hasPriceRange() { - return priceRange_ != null; - } - /** - * - * - *
-   * [Deprecated!]Used to restrict the search to places that are within a
-   * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-   * set a maximum of 4 has no effect on the search results. Min price is
-   * default to 0 and max price is default to 4. Default value will be used if
-   * either min or max is unset.
-   * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - * - * @deprecated google.maps.places.v1.SearchTextRequest.price_range is deprecated. See - * google/maps/places/v1/places_service.proto;l=157 - * @return The priceRange. - */ - @java.lang.Override - @java.lang.Deprecated - public com.google.maps.places.v1.Int32Range getPriceRange() { - return priceRange_ == null - ? com.google.maps.places.v1.Int32Range.getDefaultInstance() - : priceRange_; - } - /** - * - * - *
-   * [Deprecated!]Used to restrict the search to places that are within a
-   * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-   * set a maximum of 4 has no effect on the search results. Min price is
-   * default to 0 and max price is default to 4. Default value will be used if
-   * either min or max is unset.
-   * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - */ - @java.lang.Override - @java.lang.Deprecated - public com.google.maps.places.v1.Int32RangeOrBuilder getPriceRangeOrBuilder() { - return priceRange_ == null - ? com.google.maps.places.v1.Int32Range.getDefaultInstance() - : priceRange_; - } - public static final int MIN_RATING_FIELD_NUMBER = 9; private double minRating_ = 0D; /** @@ -3655,7 +2551,7 @@ public com.google.maps.places.v1.Int32RangeOrBuilder getPriceRangeOrBuilder() { *
    * Filter out results whose average user rating is strictly less than this
    * limit. A valid value must be an float between 0 and 5 (inclusively) at a
-   * 0.5 cadence i.e. `[0, 0.5, 1.0, ... , 5.0]` inclusively. This is to keep
+   * 0.5 cadence i.e. [0, 0.5, 1.0, ... , 5.0] inclusively. This is to keep
    * parity with LocalRefinement_UserRating. The input rating will round up to
    * the nearest 0.5(ceiling). For instance, a rating of 0.6 will eliminate all
    * results with a less than 1.0 rating.
@@ -3964,18 +2860,12 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io
             .getNumber()) {
       output.writeEnum(4, rankPreference_);
     }
-    if (location_ != null) {
-      output.writeMessage(5, getLocation());
-    }
     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(includedType_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 6, includedType_);
     }
     if (openNow_ != false) {
       output.writeBool(7, openNow_);
     }
-    if (priceRange_ != null) {
-      output.writeMessage(8, getPriceRange());
-    }
     if (java.lang.Double.doubleToRawLongBits(minRating_) != 0) {
       output.writeDouble(9, minRating_);
     }
@@ -4021,18 +2911,12 @@ public int getSerializedSize() {
             .getNumber()) {
       size += com.google.protobuf.CodedOutputStream.computeEnumSize(4, rankPreference_);
     }
-    if (location_ != null) {
-      size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, getLocation());
-    }
     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(includedType_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, includedType_);
     }
     if (openNow_ != false) {
       size += com.google.protobuf.CodedOutputStream.computeBoolSize(7, openNow_);
     }
-    if (priceRange_ != null) {
-      size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getPriceRange());
-    }
     if (java.lang.Double.doubleToRawLongBits(minRating_) != 0) {
       size += com.google.protobuf.CodedOutputStream.computeDoubleSize(9, minRating_);
     }
@@ -4081,16 +2965,8 @@ public boolean equals(final java.lang.Object obj) {
     if (!getLanguageCode().equals(other.getLanguageCode())) return false;
     if (!getRegionCode().equals(other.getRegionCode())) return false;
     if (rankPreference_ != other.rankPreference_) return false;
-    if (hasLocation() != other.hasLocation()) return false;
-    if (hasLocation()) {
-      if (!getLocation().equals(other.getLocation())) return false;
-    }
     if (!getIncludedType().equals(other.getIncludedType())) return false;
     if (getOpenNow() != other.getOpenNow()) return false;
-    if (hasPriceRange() != other.hasPriceRange()) return false;
-    if (hasPriceRange()) {
-      if (!getPriceRange().equals(other.getPriceRange())) return false;
-    }
     if (java.lang.Double.doubleToLongBits(getMinRating())
         != java.lang.Double.doubleToLongBits(other.getMinRating())) return false;
     if (getMaxResultCount() != other.getMaxResultCount()) return false;
@@ -4123,18 +2999,10 @@ public int hashCode() {
     hash = (53 * hash) + getRegionCode().hashCode();
     hash = (37 * hash) + RANK_PREFERENCE_FIELD_NUMBER;
     hash = (53 * hash) + rankPreference_;
-    if (hasLocation()) {
-      hash = (37 * hash) + LOCATION_FIELD_NUMBER;
-      hash = (53 * hash) + getLocation().hashCode();
-    }
     hash = (37 * hash) + INCLUDED_TYPE_FIELD_NUMBER;
     hash = (53 * hash) + getIncludedType().hashCode();
     hash = (37 * hash) + OPEN_NOW_FIELD_NUMBER;
     hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getOpenNow());
-    if (hasPriceRange()) {
-      hash = (37 * hash) + PRICE_RANGE_FIELD_NUMBER;
-      hash = (53 * hash) + getPriceRange().hashCode();
-    }
     hash = (37 * hash) + MIN_RATING_FIELD_NUMBER;
     hash =
         (53 * hash)
@@ -4260,7 +3128,7 @@ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.Build
    *
    *
    * 
-   * Request data structure for SearchText.
+   * Request proto for SearchText.
    * 
* * Protobuf type {@code google.maps.places.v1.SearchTextRequest} @@ -4299,22 +3167,12 @@ public Builder clear() { languageCode_ = ""; regionCode_ = ""; rankPreference_ = 0; - location_ = null; - if (locationBuilder_ != null) { - locationBuilder_.dispose(); - locationBuilder_ = null; - } includedType_ = ""; openNow_ = false; - priceRange_ = null; - if (priceRangeBuilder_ != null) { - priceRangeBuilder_.dispose(); - priceRangeBuilder_ = null; - } minRating_ = 0D; maxResultCount_ = 0; priceLevels_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000400); + bitField0_ = (bitField0_ & ~0x00000100); strictTypeFiltering_ = false; locationBias_ = null; if (locationBiasBuilder_ != null) { @@ -4362,9 +3220,9 @@ public com.google.maps.places.v1.SearchTextRequest buildPartial() { } private void buildPartialRepeatedFields(com.google.maps.places.v1.SearchTextRequest result) { - if (((bitField0_ & 0x00000400) != 0)) { + if (((bitField0_ & 0x00000100) != 0)) { priceLevels_ = java.util.Collections.unmodifiableList(priceLevels_); - bitField0_ = (bitField0_ & ~0x00000400); + bitField0_ = (bitField0_ & ~0x00000100); } result.priceLevels_ = priceLevels_; } @@ -4384,31 +3242,25 @@ private void buildPartial0(com.google.maps.places.v1.SearchTextRequest result) { result.rankPreference_ = rankPreference_; } if (((from_bitField0_ & 0x00000010) != 0)) { - result.location_ = locationBuilder_ == null ? location_ : locationBuilder_.build(); - } - if (((from_bitField0_ & 0x00000020) != 0)) { result.includedType_ = includedType_; } - if (((from_bitField0_ & 0x00000040) != 0)) { + if (((from_bitField0_ & 0x00000020) != 0)) { result.openNow_ = openNow_; } - if (((from_bitField0_ & 0x00000080) != 0)) { - result.priceRange_ = priceRangeBuilder_ == null ? priceRange_ : priceRangeBuilder_.build(); - } - if (((from_bitField0_ & 0x00000100) != 0)) { + if (((from_bitField0_ & 0x00000040) != 0)) { result.minRating_ = minRating_; } - if (((from_bitField0_ & 0x00000200) != 0)) { + if (((from_bitField0_ & 0x00000080) != 0)) { result.maxResultCount_ = maxResultCount_; } - if (((from_bitField0_ & 0x00000800) != 0)) { + if (((from_bitField0_ & 0x00000200) != 0)) { result.strictTypeFiltering_ = strictTypeFiltering_; } - if (((from_bitField0_ & 0x00001000) != 0)) { + if (((from_bitField0_ & 0x00000400) != 0)) { result.locationBias_ = locationBiasBuilder_ == null ? locationBias_ : locationBiasBuilder_.build(); } - if (((from_bitField0_ & 0x00002000) != 0)) { + if (((from_bitField0_ & 0x00000800) != 0)) { result.locationRestriction_ = locationRestrictionBuilder_ == null ? locationRestriction_ @@ -4479,20 +3331,14 @@ public Builder mergeFrom(com.google.maps.places.v1.SearchTextRequest other) { if (other.rankPreference_ != 0) { setRankPreferenceValue(other.getRankPreferenceValue()); } - if (other.hasLocation()) { - mergeLocation(other.getLocation()); - } if (!other.getIncludedType().isEmpty()) { includedType_ = other.includedType_; - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000010; onChanged(); } if (other.getOpenNow() != false) { setOpenNow(other.getOpenNow()); } - if (other.hasPriceRange()) { - mergePriceRange(other.getPriceRange()); - } if (other.getMinRating() != 0D) { setMinRating(other.getMinRating()); } @@ -4502,7 +3348,7 @@ public Builder mergeFrom(com.google.maps.places.v1.SearchTextRequest other) { if (!other.priceLevels_.isEmpty()) { if (priceLevels_.isEmpty()) { priceLevels_ = other.priceLevels_; - bitField0_ = (bitField0_ & ~0x00000400); + bitField0_ = (bitField0_ & ~0x00000100); } else { ensurePriceLevelsIsMutable(); priceLevels_.addAll(other.priceLevels_); @@ -4568,40 +3414,28 @@ public Builder mergeFrom( bitField0_ |= 0x00000008; break; } // case 32 - case 42: - { - input.readMessage(getLocationFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000010; - break; - } // case 42 case 50: { includedType_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000010; break; } // case 50 case 56: { openNow_ = input.readBool(); - bitField0_ |= 0x00000040; + bitField0_ |= 0x00000020; break; } // case 56 - case 66: - { - input.readMessage(getPriceRangeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000080; - break; - } // case 66 case 73: { minRating_ = input.readDouble(); - bitField0_ |= 0x00000100; + bitField0_ |= 0x00000040; break; } // case 73 case 80: { maxResultCount_ = input.readInt32(); - bitField0_ |= 0x00000200; + bitField0_ |= 0x00000080; break; } // case 80 case 88: @@ -4626,20 +3460,20 @@ public Builder mergeFrom( case 96: { strictTypeFiltering_ = input.readBool(); - bitField0_ |= 0x00000800; + bitField0_ |= 0x00000200; break; } // case 96 case 106: { input.readMessage(getLocationBiasFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00001000; + bitField0_ |= 0x00000400; break; } // case 106 case 114: { input.readMessage( getLocationRestrictionFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00002000; + bitField0_ |= 0x00000800; break; } // case 114 default: @@ -4776,6 +3610,7 @@ public Builder setTextQueryBytes(com.google.protobuf.ByteString value) { * If the language code is unspecified or unrecognized, place details of any * language may be returned, with a preference for English if such details * exist. + * * Current list of supported languages: * https://developers.google.com/maps/faq#languagesupport. *
@@ -4803,6 +3638,7 @@ public java.lang.String getLanguageCode() { * If the language code is unspecified or unrecognized, place details of any * language may be returned, with a preference for English if such details * exist. + * * Current list of supported languages: * https://developers.google.com/maps/faq#languagesupport. * @@ -4830,6 +3666,7 @@ public com.google.protobuf.ByteString getLanguageCodeBytes() { * If the language code is unspecified or unrecognized, place details of any * language may be returned, with a preference for English if such details * exist. + * * Current list of supported languages: * https://developers.google.com/maps/faq#languagesupport. * @@ -4856,6 +3693,7 @@ public Builder setLanguageCode(java.lang.String value) { * If the language code is unspecified or unrecognized, place details of any * language may be returned, with a preference for English if such details * exist. + * * Current list of supported languages: * https://developers.google.com/maps/faq#languagesupport. * @@ -4878,6 +3716,7 @@ public Builder clearLanguageCode() { * If the language code is unspecified or unrecognized, place details of any * language may be returned, with a preference for English if such details * exist. + * * Current list of supported languages: * https://developers.google.com/maps/faq#languagesupport. * @@ -4904,10 +3743,14 @@ public Builder setLanguageCodeBytes(com.google.protobuf.ByteString value) { * *
      * The Unicode country/region code (CLDR) of the location where the
-     * request is coming from. It is used to display the place details, like
-     * region-specific place name, if available.
+     * request is coming from. This parameter is used to display the place
+     * details, like region-specific place name, if available. The parameter can
+     * affect results based on applicable law.
+     *
      * For more information, see
      * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+     *
+     *
      * Note that 3-digit region codes are not currently supported.
      * 
* @@ -4931,10 +3774,14 @@ public java.lang.String getRegionCode() { * *
      * The Unicode country/region code (CLDR) of the location where the
-     * request is coming from. It is used to display the place details, like
-     * region-specific place name, if available.
+     * request is coming from. This parameter is used to display the place
+     * details, like region-specific place name, if available. The parameter can
+     * affect results based on applicable law.
+     *
      * For more information, see
      * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+     *
+     *
      * Note that 3-digit region codes are not currently supported.
      * 
* @@ -4958,10 +3805,14 @@ public com.google.protobuf.ByteString getRegionCodeBytes() { * *
      * The Unicode country/region code (CLDR) of the location where the
-     * request is coming from. It is used to display the place details, like
-     * region-specific place name, if available.
+     * request is coming from. This parameter is used to display the place
+     * details, like region-specific place name, if available. The parameter can
+     * affect results based on applicable law.
+     *
      * For more information, see
      * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+     *
+     *
      * Note that 3-digit region codes are not currently supported.
      * 
* @@ -4984,225 +3835,24 @@ public Builder setRegionCode(java.lang.String value) { * *
      * The Unicode country/region code (CLDR) of the location where the
-     * request is coming from. It is used to display the place details, like
-     * region-specific place name, if available.
-     * For more information, see
-     * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
-     * Note that 3-digit region codes are not currently supported.
-     * 
- * - * string region_code = 3; - * - * @return This builder for chaining. - */ - public Builder clearRegionCode() { - regionCode_ = getDefaultInstance().getRegionCode(); - bitField0_ = (bitField0_ & ~0x00000004); - onChanged(); - return this; - } - /** + * request is coming from. This parameter is used to display the place + * details, like region-specific place name, if available. The parameter can + * affect results based on applicable law. * - * - *
-     * The Unicode country/region code (CLDR) of the location where the
-     * request is coming from. It is used to display the place details, like
-     * region-specific place name, if available.
      * For more information, see
      * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
-     * Note that 3-digit region codes are not currently supported.
-     * 
- * - * string region_code = 3; - * - * @param value The bytes for regionCode to set. - * @return This builder for chaining. - */ - public Builder setRegionCodeBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - regionCode_ = value; - bitField0_ |= 0x00000004; - onChanged(); - return this; - } - - private int rankPreference_ = 0; - /** - * - * - *
-     * How results will be ranked in the response.
-     * 
- * - * .google.maps.places.v1.SearchTextRequest.RankPreference rank_preference = 4; - * - * @return The enum numeric value on the wire for rankPreference. - */ - @java.lang.Override - public int getRankPreferenceValue() { - return rankPreference_; - } - /** - * - * - *
-     * How results will be ranked in the response.
-     * 
- * - * .google.maps.places.v1.SearchTextRequest.RankPreference rank_preference = 4; - * - * @param value The enum numeric value on the wire for rankPreference to set. - * @return This builder for chaining. - */ - public Builder setRankPreferenceValue(int value) { - rankPreference_ = value; - bitField0_ |= 0x00000008; - onChanged(); - return this; - } - /** - * - * - *
-     * How results will be ranked in the response.
-     * 
- * - * .google.maps.places.v1.SearchTextRequest.RankPreference rank_preference = 4; - * - * @return The rankPreference. - */ - @java.lang.Override - public com.google.maps.places.v1.SearchTextRequest.RankPreference getRankPreference() { - com.google.maps.places.v1.SearchTextRequest.RankPreference result = - com.google.maps.places.v1.SearchTextRequest.RankPreference.forNumber(rankPreference_); - return result == null - ? com.google.maps.places.v1.SearchTextRequest.RankPreference.UNRECOGNIZED - : result; - } - /** - * - * - *
-     * How results will be ranked in the response.
-     * 
- * - * .google.maps.places.v1.SearchTextRequest.RankPreference rank_preference = 4; - * - * @param value The rankPreference to set. - * @return This builder for chaining. - */ - public Builder setRankPreference( - com.google.maps.places.v1.SearchTextRequest.RankPreference value) { - if (value == null) { - throw new NullPointerException(); - } - bitField0_ |= 0x00000008; - rankPreference_ = value.getNumber(); - onChanged(); - return this; - } - /** - * - * - *
-     * How results will be ranked in the response.
-     * 
- * - * .google.maps.places.v1.SearchTextRequest.RankPreference rank_preference = 4; - * - * @return This builder for chaining. - */ - public Builder clearRankPreference() { - bitField0_ = (bitField0_ & ~0x00000008); - rankPreference_ = 0; - onChanged(); - return this; - } - - private com.google.maps.places.v1.SearchTextRequest.Location location_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.SearchTextRequest.Location, - com.google.maps.places.v1.SearchTextRequest.Location.Builder, - com.google.maps.places.v1.SearchTextRequest.LocationOrBuilder> - locationBuilder_; - /** - * - * - *
-     * The region to search. Setting location would usually yields
-     * better results. Recommended to set. This location serves as a bias unless
-     * strict_restriction is set to true, which turns the location to a strict
-     * restriction.
-     * Deprecated.  Use LocationRestriction or LocationBias instead.
-     * 
- * - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * - * - * @deprecated google.maps.places.v1.SearchTextRequest.location is deprecated. See - * google/maps/places/v1/places_service.proto;l=141 - * @return Whether the location field is set. - */ - @java.lang.Deprecated - public boolean hasLocation() { - return ((bitField0_ & 0x00000010) != 0); - } - /** - * - * - *
-     * The region to search. Setting location would usually yields
-     * better results. Recommended to set. This location serves as a bias unless
-     * strict_restriction is set to true, which turns the location to a strict
-     * restriction.
-     * Deprecated.  Use LocationRestriction or LocationBias instead.
-     * 
- * - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * * - * @deprecated google.maps.places.v1.SearchTextRequest.location is deprecated. See - * google/maps/places/v1/places_service.proto;l=141 - * @return The location. - */ - @java.lang.Deprecated - public com.google.maps.places.v1.SearchTextRequest.Location getLocation() { - if (locationBuilder_ == null) { - return location_ == null - ? com.google.maps.places.v1.SearchTextRequest.Location.getDefaultInstance() - : location_; - } else { - return locationBuilder_.getMessage(); - } - } - /** * - * - *
-     * The region to search. Setting location would usually yields
-     * better results. Recommended to set. This location serves as a bias unless
-     * strict_restriction is set to true, which turns the location to a strict
-     * restriction.
-     * Deprecated.  Use LocationRestriction or LocationBias instead.
+     * Note that 3-digit region codes are not currently supported.
      * 
* - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * + * string region_code = 3; + * + * @return This builder for chaining. */ - @java.lang.Deprecated - public Builder setLocation(com.google.maps.places.v1.SearchTextRequest.Location value) { - if (locationBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - location_ = value; - } else { - locationBuilder_.setMessage(value); - } - bitField0_ |= 0x00000010; + public Builder clearRegionCode() { + regionCode_ = getDefaultInstance().getRegionCode(); + bitField0_ = (bitField0_ & ~0x00000004); onChanged(); return this; } @@ -5210,82 +3860,65 @@ public Builder setLocation(com.google.maps.places.v1.SearchTextRequest.Location * * *
-     * The region to search. Setting location would usually yields
-     * better results. Recommended to set. This location serves as a bias unless
-     * strict_restriction is set to true, which turns the location to a strict
-     * restriction.
-     * Deprecated.  Use LocationRestriction or LocationBias instead.
+     * The Unicode country/region code (CLDR) of the location where the
+     * request is coming from. This parameter is used to display the place
+     * details, like region-specific place name, if available. The parameter can
+     * affect results based on applicable law.
+     *
+     * For more information, see
+     * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+     *
+     *
+     * Note that 3-digit region codes are not currently supported.
      * 
* - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * + * string region_code = 3; + * + * @param value The bytes for regionCode to set. + * @return This builder for chaining. */ - @java.lang.Deprecated - public Builder setLocation( - com.google.maps.places.v1.SearchTextRequest.Location.Builder builderForValue) { - if (locationBuilder_ == null) { - location_ = builderForValue.build(); - } else { - locationBuilder_.setMessage(builderForValue.build()); + public Builder setRegionCodeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - bitField0_ |= 0x00000010; + checkByteStringIsUtf8(value); + regionCode_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } + + private int rankPreference_ = 0; /** * * *
-     * The region to search. Setting location would usually yields
-     * better results. Recommended to set. This location serves as a bias unless
-     * strict_restriction is set to true, which turns the location to a strict
-     * restriction.
-     * Deprecated.  Use LocationRestriction or LocationBias instead.
+     * How results will be ranked in the response.
      * 
* - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * + * .google.maps.places.v1.SearchTextRequest.RankPreference rank_preference = 4; + * + * @return The enum numeric value on the wire for rankPreference. */ - @java.lang.Deprecated - public Builder mergeLocation(com.google.maps.places.v1.SearchTextRequest.Location value) { - if (locationBuilder_ == null) { - if (((bitField0_ & 0x00000010) != 0) - && location_ != null - && location_ - != com.google.maps.places.v1.SearchTextRequest.Location.getDefaultInstance()) { - getLocationBuilder().mergeFrom(value); - } else { - location_ = value; - } - } else { - locationBuilder_.mergeFrom(value); - } - bitField0_ |= 0x00000010; - onChanged(); - return this; + @java.lang.Override + public int getRankPreferenceValue() { + return rankPreference_; } /** * * *
-     * The region to search. Setting location would usually yields
-     * better results. Recommended to set. This location serves as a bias unless
-     * strict_restriction is set to true, which turns the location to a strict
-     * restriction.
-     * Deprecated.  Use LocationRestriction or LocationBias instead.
+     * How results will be ranked in the response.
      * 
* - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * + * .google.maps.places.v1.SearchTextRequest.RankPreference rank_preference = 4; + * + * @param value The enum numeric value on the wire for rankPreference to set. + * @return This builder for chaining. */ - @java.lang.Deprecated - public Builder clearLocation() { - bitField0_ = (bitField0_ & ~0x00000010); - location_ = null; - if (locationBuilder_ != null) { - locationBuilder_.dispose(); - locationBuilder_ = null; - } + public Builder setRankPreferenceValue(int value) { + rankPreference_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -5293,75 +3926,59 @@ public Builder clearLocation() { * * *
-     * The region to search. Setting location would usually yields
-     * better results. Recommended to set. This location serves as a bias unless
-     * strict_restriction is set to true, which turns the location to a strict
-     * restriction.
-     * Deprecated.  Use LocationRestriction or LocationBias instead.
+     * How results will be ranked in the response.
      * 
* - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * + * .google.maps.places.v1.SearchTextRequest.RankPreference rank_preference = 4; + * + * @return The rankPreference. */ - @java.lang.Deprecated - public com.google.maps.places.v1.SearchTextRequest.Location.Builder getLocationBuilder() { - bitField0_ |= 0x00000010; - onChanged(); - return getLocationFieldBuilder().getBuilder(); + @java.lang.Override + public com.google.maps.places.v1.SearchTextRequest.RankPreference getRankPreference() { + com.google.maps.places.v1.SearchTextRequest.RankPreference result = + com.google.maps.places.v1.SearchTextRequest.RankPreference.forNumber(rankPreference_); + return result == null + ? com.google.maps.places.v1.SearchTextRequest.RankPreference.UNRECOGNIZED + : result; } /** * * *
-     * The region to search. Setting location would usually yields
-     * better results. Recommended to set. This location serves as a bias unless
-     * strict_restriction is set to true, which turns the location to a strict
-     * restriction.
-     * Deprecated.  Use LocationRestriction or LocationBias instead.
+     * How results will be ranked in the response.
      * 
* - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * + * .google.maps.places.v1.SearchTextRequest.RankPreference rank_preference = 4; + * + * @param value The rankPreference to set. + * @return This builder for chaining. */ - @java.lang.Deprecated - public com.google.maps.places.v1.SearchTextRequest.LocationOrBuilder getLocationOrBuilder() { - if (locationBuilder_ != null) { - return locationBuilder_.getMessageOrBuilder(); - } else { - return location_ == null - ? com.google.maps.places.v1.SearchTextRequest.Location.getDefaultInstance() - : location_; + public Builder setRankPreference( + com.google.maps.places.v1.SearchTextRequest.RankPreference value) { + if (value == null) { + throw new NullPointerException(); } + bitField0_ |= 0x00000008; + rankPreference_ = value.getNumber(); + onChanged(); + return this; } /** * * *
-     * The region to search. Setting location would usually yields
-     * better results. Recommended to set. This location serves as a bias unless
-     * strict_restriction is set to true, which turns the location to a strict
-     * restriction.
-     * Deprecated.  Use LocationRestriction or LocationBias instead.
+     * How results will be ranked in the response.
      * 
* - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * + * .google.maps.places.v1.SearchTextRequest.RankPreference rank_preference = 4; + * + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.SearchTextRequest.Location, - com.google.maps.places.v1.SearchTextRequest.Location.Builder, - com.google.maps.places.v1.SearchTextRequest.LocationOrBuilder> - getLocationFieldBuilder() { - if (locationBuilder_ == null) { - locationBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.SearchTextRequest.Location, - com.google.maps.places.v1.SearchTextRequest.Location.Builder, - com.google.maps.places.v1.SearchTextRequest.LocationOrBuilder>( - getLocation(), getParentForChildren(), isClean()); - location_ = null; - } - return locationBuilder_; + public Builder clearRankPreference() { + bitField0_ = (bitField0_ & ~0x00000008); + rankPreference_ = 0; + onChanged(); + return this; } private java.lang.Object includedType_ = ""; @@ -5432,7 +4049,7 @@ public Builder setIncludedType(java.lang.String value) { throw new NullPointerException(); } includedType_ = value; - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -5451,7 +4068,7 @@ public Builder setIncludedType(java.lang.String value) { */ public Builder clearIncludedType() { includedType_ = getDefaultInstance().getIncludedType(); - bitField0_ = (bitField0_ & ~0x00000020); + bitField0_ = (bitField0_ & ~0x00000010); onChanged(); return this; } @@ -5475,7 +4092,7 @@ public Builder setIncludedTypeBytes(com.google.protobuf.ByteString value) { } checkByteStringIsUtf8(value); includedType_ = value; - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -5513,7 +4130,7 @@ public boolean getOpenNow() { public Builder setOpenNow(boolean value) { openNow_ = value; - bitField0_ |= 0x00000040; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -5530,243 +4147,12 @@ public Builder setOpenNow(boolean value) { * @return This builder for chaining. */ public Builder clearOpenNow() { - bitField0_ = (bitField0_ & ~0x00000040); + bitField0_ = (bitField0_ & ~0x00000020); openNow_ = false; onChanged(); return this; } - private com.google.maps.places.v1.Int32Range priceRange_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Int32Range, - com.google.maps.places.v1.Int32Range.Builder, - com.google.maps.places.v1.Int32RangeOrBuilder> - priceRangeBuilder_; - /** - * - * - *
-     * [Deprecated!]Used to restrict the search to places that are within a
-     * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-     * set a maximum of 4 has no effect on the search results. Min price is
-     * default to 0 and max price is default to 4. Default value will be used if
-     * either min or max is unset.
-     * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - * - * @deprecated google.maps.places.v1.SearchTextRequest.price_range is deprecated. See - * google/maps/places/v1/places_service.proto;l=157 - * @return Whether the priceRange field is set. - */ - @java.lang.Deprecated - public boolean hasPriceRange() { - return ((bitField0_ & 0x00000080) != 0); - } - /** - * - * - *
-     * [Deprecated!]Used to restrict the search to places that are within a
-     * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-     * set a maximum of 4 has no effect on the search results. Min price is
-     * default to 0 and max price is default to 4. Default value will be used if
-     * either min or max is unset.
-     * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - * - * @deprecated google.maps.places.v1.SearchTextRequest.price_range is deprecated. See - * google/maps/places/v1/places_service.proto;l=157 - * @return The priceRange. - */ - @java.lang.Deprecated - public com.google.maps.places.v1.Int32Range getPriceRange() { - if (priceRangeBuilder_ == null) { - return priceRange_ == null - ? com.google.maps.places.v1.Int32Range.getDefaultInstance() - : priceRange_; - } else { - return priceRangeBuilder_.getMessage(); - } - } - /** - * - * - *
-     * [Deprecated!]Used to restrict the search to places that are within a
-     * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-     * set a maximum of 4 has no effect on the search results. Min price is
-     * default to 0 and max price is default to 4. Default value will be used if
-     * either min or max is unset.
-     * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - */ - @java.lang.Deprecated - public Builder setPriceRange(com.google.maps.places.v1.Int32Range value) { - if (priceRangeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - priceRange_ = value; - } else { - priceRangeBuilder_.setMessage(value); - } - bitField0_ |= 0x00000080; - onChanged(); - return this; - } - /** - * - * - *
-     * [Deprecated!]Used to restrict the search to places that are within a
-     * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-     * set a maximum of 4 has no effect on the search results. Min price is
-     * default to 0 and max price is default to 4. Default value will be used if
-     * either min or max is unset.
-     * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - */ - @java.lang.Deprecated - public Builder setPriceRange(com.google.maps.places.v1.Int32Range.Builder builderForValue) { - if (priceRangeBuilder_ == null) { - priceRange_ = builderForValue.build(); - } else { - priceRangeBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000080; - onChanged(); - return this; - } - /** - * - * - *
-     * [Deprecated!]Used to restrict the search to places that are within a
-     * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-     * set a maximum of 4 has no effect on the search results. Min price is
-     * default to 0 and max price is default to 4. Default value will be used if
-     * either min or max is unset.
-     * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - */ - @java.lang.Deprecated - public Builder mergePriceRange(com.google.maps.places.v1.Int32Range value) { - if (priceRangeBuilder_ == null) { - if (((bitField0_ & 0x00000080) != 0) - && priceRange_ != null - && priceRange_ != com.google.maps.places.v1.Int32Range.getDefaultInstance()) { - getPriceRangeBuilder().mergeFrom(value); - } else { - priceRange_ = value; - } - } else { - priceRangeBuilder_.mergeFrom(value); - } - bitField0_ |= 0x00000080; - onChanged(); - return this; - } - /** - * - * - *
-     * [Deprecated!]Used to restrict the search to places that are within a
-     * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-     * set a maximum of 4 has no effect on the search results. Min price is
-     * default to 0 and max price is default to 4. Default value will be used if
-     * either min or max is unset.
-     * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - */ - @java.lang.Deprecated - public Builder clearPriceRange() { - bitField0_ = (bitField0_ & ~0x00000080); - priceRange_ = null; - if (priceRangeBuilder_ != null) { - priceRangeBuilder_.dispose(); - priceRangeBuilder_ = null; - } - onChanged(); - return this; - } - /** - * - * - *
-     * [Deprecated!]Used to restrict the search to places that are within a
-     * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-     * set a maximum of 4 has no effect on the search results. Min price is
-     * default to 0 and max price is default to 4. Default value will be used if
-     * either min or max is unset.
-     * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - */ - @java.lang.Deprecated - public com.google.maps.places.v1.Int32Range.Builder getPriceRangeBuilder() { - bitField0_ |= 0x00000080; - onChanged(); - return getPriceRangeFieldBuilder().getBuilder(); - } - /** - * - * - *
-     * [Deprecated!]Used to restrict the search to places that are within a
-     * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-     * set a maximum of 4 has no effect on the search results. Min price is
-     * default to 0 and max price is default to 4. Default value will be used if
-     * either min or max is unset.
-     * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - */ - @java.lang.Deprecated - public com.google.maps.places.v1.Int32RangeOrBuilder getPriceRangeOrBuilder() { - if (priceRangeBuilder_ != null) { - return priceRangeBuilder_.getMessageOrBuilder(); - } else { - return priceRange_ == null - ? com.google.maps.places.v1.Int32Range.getDefaultInstance() - : priceRange_; - } - } - /** - * - * - *
-     * [Deprecated!]Used to restrict the search to places that are within a
-     * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-     * set a maximum of 4 has no effect on the search results. Min price is
-     * default to 0 and max price is default to 4. Default value will be used if
-     * either min or max is unset.
-     * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Int32Range, - com.google.maps.places.v1.Int32Range.Builder, - com.google.maps.places.v1.Int32RangeOrBuilder> - getPriceRangeFieldBuilder() { - if (priceRangeBuilder_ == null) { - priceRangeBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.maps.places.v1.Int32Range, - com.google.maps.places.v1.Int32Range.Builder, - com.google.maps.places.v1.Int32RangeOrBuilder>( - getPriceRange(), getParentForChildren(), isClean()); - priceRange_ = null; - } - return priceRangeBuilder_; - } - private double minRating_; /** * @@ -5774,7 +4160,7 @@ public com.google.maps.places.v1.Int32RangeOrBuilder getPriceRangeOrBuilder() { *
      * Filter out results whose average user rating is strictly less than this
      * limit. A valid value must be an float between 0 and 5 (inclusively) at a
-     * 0.5 cadence i.e. `[0, 0.5, 1.0, ... , 5.0]` inclusively. This is to keep
+     * 0.5 cadence i.e. [0, 0.5, 1.0, ... , 5.0] inclusively. This is to keep
      * parity with LocalRefinement_UserRating. The input rating will round up to
      * the nearest 0.5(ceiling). For instance, a rating of 0.6 will eliminate all
      * results with a less than 1.0 rating.
@@ -5794,7 +4180,7 @@ public double getMinRating() {
      * 
      * Filter out results whose average user rating is strictly less than this
      * limit. A valid value must be an float between 0 and 5 (inclusively) at a
-     * 0.5 cadence i.e. `[0, 0.5, 1.0, ... , 5.0]` inclusively. This is to keep
+     * 0.5 cadence i.e. [0, 0.5, 1.0, ... , 5.0] inclusively. This is to keep
      * parity with LocalRefinement_UserRating. The input rating will round up to
      * the nearest 0.5(ceiling). For instance, a rating of 0.6 will eliminate all
      * results with a less than 1.0 rating.
@@ -5808,7 +4194,7 @@ public double getMinRating() {
     public Builder setMinRating(double value) {
 
       minRating_ = value;
-      bitField0_ |= 0x00000100;
+      bitField0_ |= 0x00000040;
       onChanged();
       return this;
     }
@@ -5818,7 +4204,7 @@ public Builder setMinRating(double value) {
      * 
      * Filter out results whose average user rating is strictly less than this
      * limit. A valid value must be an float between 0 and 5 (inclusively) at a
-     * 0.5 cadence i.e. `[0, 0.5, 1.0, ... , 5.0]` inclusively. This is to keep
+     * 0.5 cadence i.e. [0, 0.5, 1.0, ... , 5.0] inclusively. This is to keep
      * parity with LocalRefinement_UserRating. The input rating will round up to
      * the nearest 0.5(ceiling). For instance, a rating of 0.6 will eliminate all
      * results with a less than 1.0 rating.
@@ -5829,7 +4215,7 @@ public Builder setMinRating(double value) {
      * @return This builder for chaining.
      */
     public Builder clearMinRating() {
-      bitField0_ = (bitField0_ & ~0x00000100);
+      bitField0_ = (bitField0_ & ~0x00000040);
       minRating_ = 0D;
       onChanged();
       return this;
@@ -5872,7 +4258,7 @@ public int getMaxResultCount() {
     public Builder setMaxResultCount(int value) {
 
       maxResultCount_ = value;
-      bitField0_ |= 0x00000200;
+      bitField0_ |= 0x00000080;
       onChanged();
       return this;
     }
@@ -5891,7 +4277,7 @@ public Builder setMaxResultCount(int value) {
      * @return This builder for chaining.
      */
     public Builder clearMaxResultCount() {
-      bitField0_ = (bitField0_ & ~0x00000200);
+      bitField0_ = (bitField0_ & ~0x00000080);
       maxResultCount_ = 0;
       onChanged();
       return this;
@@ -5900,9 +4286,9 @@ public Builder clearMaxResultCount() {
     private java.util.List priceLevels_ = java.util.Collections.emptyList();
 
     private void ensurePriceLevelsIsMutable() {
-      if (!((bitField0_ & 0x00000400) != 0)) {
+      if (!((bitField0_ & 0x00000100) != 0)) {
         priceLevels_ = new java.util.ArrayList(priceLevels_);
-        bitField0_ |= 0x00000400;
+        bitField0_ |= 0x00000100;
       }
     }
     /**
@@ -6041,7 +4427,7 @@ public Builder addAllPriceLevels(
      */
     public Builder clearPriceLevels() {
       priceLevels_ = java.util.Collections.emptyList();
-      bitField0_ = (bitField0_ & ~0x00000400);
+      bitField0_ = (bitField0_ & ~0x00000100);
       onChanged();
       return this;
     }
@@ -6175,7 +4561,7 @@ public boolean getStrictTypeFiltering() {
     public Builder setStrictTypeFiltering(boolean value) {
 
       strictTypeFiltering_ = value;
-      bitField0_ |= 0x00000800;
+      bitField0_ |= 0x00000200;
       onChanged();
       return this;
     }
@@ -6192,7 +4578,7 @@ public Builder setStrictTypeFiltering(boolean value) {
      * @return This builder for chaining.
      */
     public Builder clearStrictTypeFiltering() {
-      bitField0_ = (bitField0_ & ~0x00000800);
+      bitField0_ = (bitField0_ & ~0x00000200);
       strictTypeFiltering_ = false;
       onChanged();
       return this;
@@ -6218,7 +4604,7 @@ public Builder clearStrictTypeFiltering() {
      * @return Whether the locationBias field is set.
      */
     public boolean hasLocationBias() {
-      return ((bitField0_ & 0x00001000) != 0);
+      return ((bitField0_ & 0x00000400) != 0);
     }
     /**
      *
@@ -6262,7 +4648,7 @@ public Builder setLocationBias(com.google.maps.places.v1.SearchTextRequest.Locat
       } else {
         locationBiasBuilder_.setMessage(value);
       }
-      bitField0_ |= 0x00001000;
+      bitField0_ |= 0x00000400;
       onChanged();
       return this;
     }
@@ -6284,7 +4670,7 @@ public Builder setLocationBias(
       } else {
         locationBiasBuilder_.setMessage(builderForValue.build());
       }
-      bitField0_ |= 0x00001000;
+      bitField0_ |= 0x00000400;
       onChanged();
       return this;
     }
@@ -6302,7 +4688,7 @@ public Builder setLocationBias(
     public Builder mergeLocationBias(
         com.google.maps.places.v1.SearchTextRequest.LocationBias value) {
       if (locationBiasBuilder_ == null) {
-        if (((bitField0_ & 0x00001000) != 0)
+        if (((bitField0_ & 0x00000400) != 0)
             && locationBias_ != null
             && locationBias_
                 != com.google.maps.places.v1.SearchTextRequest.LocationBias.getDefaultInstance()) {
@@ -6313,7 +4699,7 @@ public Builder mergeLocationBias(
       } else {
         locationBiasBuilder_.mergeFrom(value);
       }
-      bitField0_ |= 0x00001000;
+      bitField0_ |= 0x00000400;
       onChanged();
       return this;
     }
@@ -6329,7 +4715,7 @@ public Builder mergeLocationBias(
      * .google.maps.places.v1.SearchTextRequest.LocationBias location_bias = 13;
      */
     public Builder clearLocationBias() {
-      bitField0_ = (bitField0_ & ~0x00001000);
+      bitField0_ = (bitField0_ & ~0x00000400);
       locationBias_ = null;
       if (locationBiasBuilder_ != null) {
         locationBiasBuilder_.dispose();
@@ -6351,7 +4737,7 @@ public Builder clearLocationBias() {
      */
     public com.google.maps.places.v1.SearchTextRequest.LocationBias.Builder
         getLocationBiasBuilder() {
-      bitField0_ |= 0x00001000;
+      bitField0_ |= 0x00000400;
       onChanged();
       return getLocationBiasFieldBuilder().getBuilder();
     }
@@ -6425,7 +4811,7 @@ public Builder clearLocationBias() {
      * @return Whether the locationRestriction field is set.
      */
     public boolean hasLocationRestriction() {
-      return ((bitField0_ & 0x00002000) != 0);
+      return ((bitField0_ & 0x00000800) != 0);
     }
     /**
      *
@@ -6473,7 +4859,7 @@ public Builder setLocationRestriction(
       } else {
         locationRestrictionBuilder_.setMessage(value);
       }
-      bitField0_ |= 0x00002000;
+      bitField0_ |= 0x00000800;
       onChanged();
       return this;
     }
@@ -6496,7 +4882,7 @@ public Builder setLocationRestriction(
       } else {
         locationRestrictionBuilder_.setMessage(builderForValue.build());
       }
-      bitField0_ |= 0x00002000;
+      bitField0_ |= 0x00000800;
       onChanged();
       return this;
     }
@@ -6515,7 +4901,7 @@ public Builder setLocationRestriction(
     public Builder mergeLocationRestriction(
         com.google.maps.places.v1.SearchTextRequest.LocationRestriction value) {
       if (locationRestrictionBuilder_ == null) {
-        if (((bitField0_ & 0x00002000) != 0)
+        if (((bitField0_ & 0x00000800) != 0)
             && locationRestriction_ != null
             && locationRestriction_
                 != com.google.maps.places.v1.SearchTextRequest.LocationRestriction
@@ -6527,7 +4913,7 @@ public Builder mergeLocationRestriction(
       } else {
         locationRestrictionBuilder_.mergeFrom(value);
       }
-      bitField0_ |= 0x00002000;
+      bitField0_ |= 0x00000800;
       onChanged();
       return this;
     }
@@ -6544,7 +4930,7 @@ public Builder mergeLocationRestriction(
      * 
      */
     public Builder clearLocationRestriction() {
-      bitField0_ = (bitField0_ & ~0x00002000);
+      bitField0_ = (bitField0_ & ~0x00000800);
       locationRestriction_ = null;
       if (locationRestrictionBuilder_ != null) {
         locationRestrictionBuilder_.dispose();
@@ -6567,7 +4953,7 @@ public Builder clearLocationRestriction() {
      */
     public com.google.maps.places.v1.SearchTextRequest.LocationRestriction.Builder
         getLocationRestrictionBuilder() {
-      bitField0_ |= 0x00002000;
+      bitField0_ |= 0x00000800;
       onChanged();
       return getLocationRestrictionFieldBuilder().getBuilder();
     }
diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchTextRequestOrBuilder.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchTextRequestOrBuilder.java
index f238afed5a4a..ff8d54c1c47a 100644
--- a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchTextRequestOrBuilder.java
+++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchTextRequestOrBuilder.java
@@ -56,6 +56,7 @@ public interface SearchTextRequestOrBuilder
    * If the language code is unspecified or unrecognized, place details of any
    * language may be returned, with a preference for English if such details
    * exist.
+   *
    * Current list of supported languages:
    * https://developers.google.com/maps/faq#languagesupport.
    * 
@@ -73,6 +74,7 @@ public interface SearchTextRequestOrBuilder * If the language code is unspecified or unrecognized, place details of any * language may be returned, with a preference for English if such details * exist. + * * Current list of supported languages: * https://developers.google.com/maps/faq#languagesupport. *
@@ -88,10 +90,14 @@ public interface SearchTextRequestOrBuilder * *
    * The Unicode country/region code (CLDR) of the location where the
-   * request is coming from. It is used to display the place details, like
-   * region-specific place name, if available.
+   * request is coming from. This parameter is used to display the place
+   * details, like region-specific place name, if available. The parameter can
+   * affect results based on applicable law.
+   *
    * For more information, see
    * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+   *
+   *
    * Note that 3-digit region codes are not currently supported.
    * 
* @@ -105,10 +111,14 @@ public interface SearchTextRequestOrBuilder * *
    * The Unicode country/region code (CLDR) of the location where the
-   * request is coming from. It is used to display the place details, like
-   * region-specific place name, if available.
+   * request is coming from. This parameter is used to display the place
+   * details, like region-specific place name, if available. The parameter can
+   * affect results based on applicable law.
+   *
    * For more information, see
    * http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+   *
+   *
    * Note that 3-digit region codes are not currently supported.
    * 
* @@ -143,63 +153,6 @@ public interface SearchTextRequestOrBuilder */ com.google.maps.places.v1.SearchTextRequest.RankPreference getRankPreference(); - /** - * - * - *
-   * The region to search. Setting location would usually yields
-   * better results. Recommended to set. This location serves as a bias unless
-   * strict_restriction is set to true, which turns the location to a strict
-   * restriction.
-   * Deprecated.  Use LocationRestriction or LocationBias instead.
-   * 
- * - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * - * - * @deprecated google.maps.places.v1.SearchTextRequest.location is deprecated. See - * google/maps/places/v1/places_service.proto;l=141 - * @return Whether the location field is set. - */ - @java.lang.Deprecated - boolean hasLocation(); - /** - * - * - *
-   * The region to search. Setting location would usually yields
-   * better results. Recommended to set. This location serves as a bias unless
-   * strict_restriction is set to true, which turns the location to a strict
-   * restriction.
-   * Deprecated.  Use LocationRestriction or LocationBias instead.
-   * 
- * - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * - * - * @deprecated google.maps.places.v1.SearchTextRequest.location is deprecated. See - * google/maps/places/v1/places_service.proto;l=141 - * @return The location. - */ - @java.lang.Deprecated - com.google.maps.places.v1.SearchTextRequest.Location getLocation(); - /** - * - * - *
-   * The region to search. Setting location would usually yields
-   * better results. Recommended to set. This location serves as a bias unless
-   * strict_restriction is set to true, which turns the location to a strict
-   * restriction.
-   * Deprecated.  Use LocationRestriction or LocationBias instead.
-   * 
- * - * .google.maps.places.v1.SearchTextRequest.Location location = 5 [deprecated = true]; - * - */ - @java.lang.Deprecated - com.google.maps.places.v1.SearchTextRequest.LocationOrBuilder getLocationOrBuilder(); - /** * * @@ -243,67 +196,13 @@ public interface SearchTextRequestOrBuilder */ boolean getOpenNow(); - /** - * - * - *
-   * [Deprecated!]Used to restrict the search to places that are within a
-   * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-   * set a maximum of 4 has no effect on the search results. Min price is
-   * default to 0 and max price is default to 4. Default value will be used if
-   * either min or max is unset.
-   * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - * - * @deprecated google.maps.places.v1.SearchTextRequest.price_range is deprecated. See - * google/maps/places/v1/places_service.proto;l=157 - * @return Whether the priceRange field is set. - */ - @java.lang.Deprecated - boolean hasPriceRange(); - /** - * - * - *
-   * [Deprecated!]Used to restrict the search to places that are within a
-   * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-   * set a maximum of 4 has no effect on the search results. Min price is
-   * default to 0 and max price is default to 4. Default value will be used if
-   * either min or max is unset.
-   * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - * - * @deprecated google.maps.places.v1.SearchTextRequest.price_range is deprecated. See - * google/maps/places/v1/places_service.proto;l=157 - * @return The priceRange. - */ - @java.lang.Deprecated - com.google.maps.places.v1.Int32Range getPriceRange(); - /** - * - * - *
-   * [Deprecated!]Used to restrict the search to places that are within a
-   * certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-   * set a maximum of 4 has no effect on the search results. Min price is
-   * default to 0 and max price is default to 4. Default value will be used if
-   * either min or max is unset.
-   * 
- * - * .google.maps.places.v1.Int32Range price_range = 8 [deprecated = true]; - */ - @java.lang.Deprecated - com.google.maps.places.v1.Int32RangeOrBuilder getPriceRangeOrBuilder(); - /** * * *
    * Filter out results whose average user rating is strictly less than this
    * limit. A valid value must be an float between 0 and 5 (inclusively) at a
-   * 0.5 cadence i.e. `[0, 0.5, 1.0, ... , 5.0]` inclusively. This is to keep
+   * 0.5 cadence i.e. [0, 0.5, 1.0, ... , 5.0] inclusively. This is to keep
    * parity with LocalRefinement_UserRating. The input rating will round up to
    * the nearest 0.5(ceiling). For instance, a rating of 0.6 will eliminate all
    * results with a less than 1.0 rating.
diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchTextResponse.java b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchTextResponse.java
index 0430be86b16c..7845fb7dbd2a 100644
--- a/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchTextResponse.java
+++ b/java-maps-places/proto-google-maps-places-v1/src/main/java/com/google/maps/places/v1/SearchTextResponse.java
@@ -47,11 +47,6 @@ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
     return new SearchTextResponse();
   }
 
-  @java.lang.Override
-  public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
-    return this.unknownFields;
-  }
-
   public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
     return com.google.maps.places.v1.PlacesServiceProto
         .internal_static_google_maps_places_v1_SearchTextResponse_descriptor;
diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/attribution.proto b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/attribution.proto
new file mode 100644
index 000000000000..e65d80c73372
--- /dev/null
+++ b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/attribution.proto
@@ -0,0 +1,46 @@
+// Copyright 2023 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.maps.places.v1;
+
+import "google/api/field_behavior.proto";
+
+option cc_enable_arenas = true;
+option csharp_namespace = "Google.Maps.Places.V1";
+option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
+option java_multiple_files = true;
+option java_outer_classname = "AttributionProto";
+option java_package = "com.google.maps.places.v1";
+option objc_class_prefix = "GMPSV1";
+option php_namespace = "Google\\Maps\\Places\\V1";
+
+// Information about the author of the UGC data. Used in
+// [Photo][google.maps.places.v1.Photo], and
+// [Review][google.maps.places.v1.Review].
+message AuthorAttribution {
+  // Output only. Name of the author of the [Photo][google.maps.places.v1.Photo]
+  // or [Review][google.maps.places.v1.Review].
+  string display_name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. URI of the author of the [Photo][google.maps.places.v1.Photo]
+  // or [Review][google.maps.places.v1.Review].
+  string uri = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Profile photo URI of the author of the
+  // [Photo][google.maps.places.v1.Photo] or
+  // [Review][google.maps.places.v1.Review].
+  string photo_uri = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
+}
diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/ev_charging.proto b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/ev_charging.proto
new file mode 100644
index 000000000000..a81ae499c8aa
--- /dev/null
+++ b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/ev_charging.proto
@@ -0,0 +1,111 @@
+// Copyright 2023 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.maps.places.v1;
+
+import "google/protobuf/timestamp.proto";
+
+option cc_enable_arenas = true;
+option csharp_namespace = "Google.Maps.Places.V1";
+option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
+option java_multiple_files = true;
+option java_outer_classname = "EvChargingProto";
+option java_package = "com.google.maps.places.v1";
+option objc_class_prefix = "GMPSV1";
+option php_namespace = "Google\\Maps\\Places\\V1";
+
+// Information about the EV Charge Station hosted in Place.
+// Terminology follows
+// https://afdc.energy.gov/fuels/electricity_infrastructure.html One port
+// could charge one car at a time. One port has one or more connectors. One
+// station has one or more ports.
+message EVChargeOptions {
+  // EV charging information grouped by [type, max_charge_rate_kw].
+  // Shows EV charge aggregation of connectors that have the same type and max
+  // charge rate in kw.
+  message ConnectorAggregation {
+    // The connector type of this aggregation.
+    EVConnectorType type = 1;
+
+    // The static max charging rate in kw of each connector in the aggregation.
+    double max_charge_rate_kw = 2;
+
+    // Number of connectors in this aggregation.
+    int32 count = 3;
+
+    // Number of connectors in this aggregation that are currently available.
+    optional int32 available_count = 4;
+
+    // Number of connectors in this aggregation that are currently out of
+    // service.
+    optional int32 out_of_service_count = 5;
+
+    // The timestamp when the connector availability information in this
+    // aggregation was last updated.
+    google.protobuf.Timestamp availability_last_update_time = 6;
+  }
+
+  // Number of connectors at this station. However, because some ports can have
+  // multiple connectors but only be able to charge one car at a time (e.g.) the
+  // number of connectors may be greater than the total number of cars which can
+  // charge simultaneously.
+  int32 connector_count = 1;
+
+  // A list of EV charging connector aggregations that contain connectors of the
+  // same type and same charge rate.
+  repeated ConnectorAggregation connector_aggregation = 2;
+}
+
+// See http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6872107 for
+// additional information/context on EV charging connector types.
+enum EVConnectorType {
+  // Unspecified connector.
+  EV_CONNECTOR_TYPE_UNSPECIFIED = 0;
+
+  // Other connector types.
+  EV_CONNECTOR_TYPE_OTHER = 1;
+
+  // J1772 type 1 connector.
+  EV_CONNECTOR_TYPE_J1772 = 2;
+
+  // IEC 62196 type 2 connector. Often referred to as MENNEKES.
+  EV_CONNECTOR_TYPE_TYPE_2 = 3;
+
+  // CHAdeMO type connector.
+  EV_CONNECTOR_TYPE_CHADEMO = 4;
+
+  // Combined Charging System (AC and DC). Based on SAE.
+  //  Type-1 J-1772 connector
+  EV_CONNECTOR_TYPE_CCS_COMBO_1 = 5;
+
+  // Combined Charging System (AC and DC). Based on Type-2
+  // Mennekes connector
+  EV_CONNECTOR_TYPE_CCS_COMBO_2 = 6;
+
+  // The generic TESLA connector. This is NACS in the North America but can be
+  // non-NACS in other parts of the world (e.g. CCS Combo 2 (CCS2) or GB/T).
+  // This value is less representative of an actual connector type, and more
+  // represents the ability to charge a Tesla brand vehicle at a Tesla owned
+  // charging station.
+  EV_CONNECTOR_TYPE_TESLA = 7;
+
+  // GB/T type corresponds to the GB/T standard in China. This type covers all
+  // GB_T types.
+  EV_CONNECTOR_TYPE_UNSPECIFIED_GB_T = 8;
+
+  // Unspecified wall outlet.
+  EV_CONNECTOR_TYPE_UNSPECIFIED_WALL_OUTLET = 9;
+}
diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/fuel_options.proto b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/fuel_options.proto
new file mode 100644
index 000000000000..4a38de53832e
--- /dev/null
+++ b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/fuel_options.proto
@@ -0,0 +1,109 @@
+// Copyright 2023 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.maps.places.v1;
+
+import "google/protobuf/timestamp.proto";
+import "google/type/money.proto";
+
+option cc_enable_arenas = true;
+option csharp_namespace = "Google.Maps.Places.V1";
+option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
+option java_multiple_files = true;
+option java_outer_classname = "FuelOptionsProto";
+option java_package = "com.google.maps.places.v1";
+option objc_class_prefix = "GMPSV1";
+option php_namespace = "Google\\Maps\\Places\\V1";
+
+// The most recent information about fuel options in a gas station. This
+// information is updated regularly.
+message FuelOptions {
+  // Fuel price information for a given type.
+  message FuelPrice {
+    // Types of fuel.
+    enum FuelType {
+      // Unspecified fuel type.
+      FUEL_TYPE_UNSPECIFIED = 0;
+
+      // Diesel fuel.
+      DIESEL = 1;
+
+      // Regular unleaded.
+      REGULAR_UNLEADED = 2;
+
+      // Midgrade.
+      MIDGRADE = 3;
+
+      // Premium.
+      PREMIUM = 4;
+
+      // SP 91.
+      SP91 = 5;
+
+      // SP 91 E10.
+      SP91_E10 = 6;
+
+      // SP 92.
+      SP92 = 7;
+
+      // SP 95.
+      SP95 = 8;
+
+      // SP95 E10.
+      SP95_E10 = 9;
+
+      // SP 98.
+      SP98 = 10;
+
+      // SP 99.
+      SP99 = 11;
+
+      // SP 100.
+      SP100 = 12;
+
+      // LPG.
+      LPG = 13;
+
+      // E 80.
+      E80 = 14;
+
+      // E 85.
+      E85 = 15;
+
+      // Methane.
+      METHANE = 16;
+
+      // Bio-diesel.
+      BIO_DIESEL = 17;
+
+      // Truck diesel.
+      TRUCK_DIESEL = 18;
+    }
+
+    // The type of fuel.
+    FuelType type = 1;
+
+    // The price of the fuel.
+    google.type.Money price = 2;
+
+    // The time the fuel price was last updated.
+    google.protobuf.Timestamp update_time = 3;
+  }
+
+  // The last known fuel price for each type of fuel this station has. There is
+  // one entry per fuel type this station has. Order is not important.
+  repeated FuelPrice fuel_prices = 1;
+}
diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/geometry.proto b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/geometry.proto
index 9823c89d93a4..e5e53a57d91b 100644
--- a/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/geometry.proto
+++ b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/geometry.proto
@@ -21,7 +21,7 @@ import "google/type/latlng.proto";
 
 option cc_enable_arenas = true;
 option csharp_namespace = "Google.Maps.Places.V1";
-option go_package = "google.golang.org/genproto/googleapis/maps/places/v1;places";
+option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
 option java_multiple_files = true;
 option java_outer_classname = "GeometryProto";
 option java_package = "com.google.maps.places.v1";
@@ -32,11 +32,11 @@ option php_namespace = "Google\\Maps\\Places\\V1";
 message Circle {
   // Required. Center latitude and longitude.
   //
-  // The range of latitude must be within `[-90.0, 90.0]`. The range of the
-  // longitude must be within `[-180.0, 180.0]`.
+  // The range of latitude must be within [-90.0, 90.0]. The range of the
+  // longitude must be within [-180.0, 180.0].
   google.type.LatLng center = 1 [(google.api.field_behavior) = REQUIRED];
 
-  // Required. Radius measured in meters. The radius must be within `[0.0,
-  // 50000.0]`.
+  // Required. Radius measured in meters. The radius must be within [0.0,
+  // 50000.0].
   double radius = 2 [(google.api.field_behavior) = REQUIRED];
 }
diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/photo.proto b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/photo.proto
new file mode 100644
index 000000000000..1f0bdb25ecd1
--- /dev/null
+++ b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/photo.proto
@@ -0,0 +1,55 @@
+// Copyright 2023 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.maps.places.v1;
+
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/maps/places/v1/attribution.proto";
+
+option cc_enable_arenas = true;
+option csharp_namespace = "Google.Maps.Places.V1";
+option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
+option java_multiple_files = true;
+option java_outer_classname = "PhotoProto";
+option java_package = "com.google.maps.places.v1";
+option objc_class_prefix = "GMPSV1";
+option php_namespace = "Google\\Maps\\Places\\V1";
+
+// Information about a photo of a place.
+message Photo {
+  option (google.api.resource) = {
+    type: "places.googleapis.com/Photo"
+    pattern: "places/{place}/photos/{photo}"
+    plural: "photos"
+    singular: "photo"
+  };
+
+  // Output only. A reference representing this place photo which may be used to
+  // look up this place photo again (a.k.a. the API "resource" name:
+  // places/{place_id}/photos/{photo}).
+  string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. The maximum available width, in pixels.
+  int32 width_px = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. The maximum available height, in pixels.
+  int32 height_px = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. This photo's authors.
+  repeated AuthorAttribution author_attributions = 4
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+}
diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/place.proto b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/place.proto
index 2a20e906fc2b..91d55fe5cacc 100644
--- a/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/place.proto
+++ b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/place.proto
@@ -17,15 +17,19 @@ syntax = "proto3";
 package google.maps.places.v1;
 
 import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
 import "google/geo/type/viewport.proto";
-import "google/protobuf/timestamp.proto";
+import "google/maps/places/v1/ev_charging.proto";
+import "google/maps/places/v1/fuel_options.proto";
+import "google/maps/places/v1/photo.proto";
+import "google/maps/places/v1/review.proto";
 import "google/type/date.proto";
 import "google/type/latlng.proto";
 import "google/type/localized_text.proto";
 
 option cc_enable_arenas = true;
 option csharp_namespace = "Google.Maps.Places.V1";
-option go_package = "google.golang.org/genproto/googleapis/maps/places/v1;places";
+option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
 option java_multiple_files = true;
 option java_outer_classname = "PlaceProto";
 option java_package = "com.google.maps.places.v1";
@@ -34,122 +38,86 @@ option php_namespace = "Google\\Maps\\Places\\V1";
 
 // All the information representing a Place.
 message Place {
+  option (google.api.resource) = {
+    type: "places.googleapis.com/Place"
+    pattern: "places/{place_id}"
+    plural: "places"
+    singular: "place"
+  };
+
   // The structured components that form the formatted address, if this
   // information is available.
   message AddressComponent {
-    // The full text description or name of the address component. For example,
-    // an address component for the country Australia may have a long_name of
-    // "Australia".
-    string long_text = 1;
-
-    // An abbreviated textual name for the address component, if available. For
-    // example, an address component for the country of Australia may have a
-    // short_name of "AU".
-    string short_text = 2;
-
-    // An array indicating the type(s) of the address component.
-    repeated string types = 3;
-
-    // The language used to format this components, in CLDR notation.
-    string language_code = 4;
+    // Output only. The full text description or name of the address component.
+    // For example, an address component for the country Australia may have a
+    // long_name of "Australia".
+    string long_text = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+    // Output only. An abbreviated textual name for the address component, if
+    // available. For example, an address component for the country of Australia
+    // may have a short_name of "AU".
+    string short_text = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+    // Output only. An array indicating the type(s) of the address component.
+    repeated string types = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+    // Output only. The language used to format this components, in CLDR
+    // notation.
+    string language_code = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
   }
 
   // Plus code (http://plus.codes) is a location reference with two formats:
   // global code defining a 14mx14m (1/8000th of a degree) or smaller rectangle,
   // and compound code, replacing the prefix with a reference location.
   message PlusCode {
-    // Place's global (full) code, such as `9FWM33GV+HQ`, representing an
-    // 1/8000 by 1/8000 degree area (~14 by 14 meters).
-    string global_code = 1;
-
-    // Place's compound code, such as `33GV+HQ, Ramberg, Norway`, containing
-    // the suffix of the global code and replacing the prefix with a formatted
-    // name of a reference entity.
-    string compound_code = 2;
-  }
-
-  // Information about a review of the place.
-  message Review {
-    // Timestamp for the review, expressed in seconds since epoch.
-    google.protobuf.Timestamp publish_time = 1;
-
-    // A string of formatted recent time, expressing the review time relative
-    // to the current time in a form appropriate for the language and country.
-    string relative_publish_time_description = 2;
-
-    // The localized text of the review.
-    google.type.LocalizedText text = 9;
-
-    // The name of the review author.
-    string author = 4;
-
-    // A link to the review author's profile.
-    string author_uri = 5;
-
-    // The author's profile photo.
-    string author_photo_uri = 6;
-
-    // A whole number between 1.0 and 5.0, a.k.a. the number of stars.
-    double rating = 7;
-
-    // A BCP-47 language code indicating the original language of the review.
-    // If the review has been translated, then original_language != language.
-    // This field contains the main language tag only, and not the secondary tag
-    // indicating country or region. For example, all the English reviews are
-    // tagged as 'en', and not 'en-AU' or 'en-UK' and so on.This field is empty
-    // if there is only a rating with no review text.
-    string original_language_code = 10;
-
-    // A boolean value indicating if the review was translated from the original
-    // language it was written in. If a review has been translated,
-    // corresponding to a value of true, Google recommends that you indicate
-    // this to your users. For example, you can add the following string,
-    // “Translated by Google”, to the review.
-    bool translated = 11;
+    // Output only. Place's global (full) code, such as "9FWM33GV+HQ",
+    // representing an 1/8000 by 1/8000 degree area (~14 by 14 meters).
+    string global_code = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+    // Output only. Place's compound code, such as "33GV+HQ, Ramberg, Norway",
+    // containing the suffix of the global code and replacing the prefix with a
+    // formatted name of a reference entity.
+    string compound_code = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
   }
 
   // Information about business hour of the place.
   message OpeningHours {
     // A period the place remains in open_now status.
-    message OpeningHoursPeriod {
+    message Period {
       // Status changing points.
-      message OpeningHoursPoint {
-        // A day of the week, as an integer in the range 0-6.  0 is Sunday, 1 is
-        // Monday, etc.
-        optional int32 day = 1;
-
-        // The hour in 2 digits. Ranges from 00 to 23.
-        optional int32 hour = 2;
-
-        // The minute in 2 digits. Ranges from 00 to 59.
-        optional int32 minute = 3;
-
-        // Date of the endpoint expressed in `RFC3339` format in the local
-        // timezone for the place. For example 2010-12-31.
-        string date_deprecated = 4 [deprecated = true];
-
-        // Date in the local timezone for the place.
-        google.type.Date date = 6;
-
-        // Whether or not this endpoint was truncated. Truncation occurs when
-        // the real hours are outside the times we are willing to return hours
-        // between, so we truncate the hours back to these boundaries. This
-        // ensures that at most `24 * 7` hours from midnight of the day of the
-        // request are returned.
-        bool truncated = 5;
+      message Point {
+        // Output only. A day of the week, as an integer in the range 0-6.  0 is
+        // Sunday, 1 is Monday, etc.
+        optional int32 day = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+        // Output only. The hour in 2 digits. Ranges from 00 to 23.
+        optional int32 hour = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+        // Output only. The minute in 2 digits. Ranges from 00 to 59.
+        optional int32 minute = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+        // Output only. Date in the local timezone for the place.
+        google.type.Date date = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+        // Output only. Whether or not this endpoint was truncated. Truncation
+        // occurs when the real hours are outside the times we are willing to
+        // return hours between, so we truncate the hours back to these
+        // boundaries. This ensures that at most 24 * 7 hours from midnight of
+        // the day of the request are returned.
+        bool truncated = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
       }
 
-      // The time that the place starts to be open.
-      OpeningHoursPoint open = 1;
+      // Output only. The time that the place starts to be open.
+      Point open = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-      // The time that the place starts to be closed.
-      OpeningHoursPoint close = 2;
+      // Output only. The time that the place starts to be closed.
+      Point close = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
     }
 
     // A type used to identify the type of secondary hours.
-    enum SecondaryHourType {
+    enum SecondaryHoursType {
       // Default value when secondary hour type is not specified.
-      SECONDARY_HOUR_TYPE_UNSPECIFIED = 0;
+      SECONDARY_HOURS_TYPE_UNSPECIFIED = 0;
 
       // The drive-through hour for banks, restaurants, or pharmacies.
       DRIVE_THROUGH = 1;
@@ -195,34 +163,39 @@ message Place {
     // the returned opening hours cover. Special days are days that could impact
     // the business hours of a place, e.g. Christmas day.
     message SpecialDay {
-      // The date of this special day.
-      google.type.Date date = 1;
+      // Output only. The date of this special day.
+      google.type.Date date = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
     }
 
-    // Is this place open right now?  Always present unless we lack time-of-day
-    // or timezone data for these opening hours.
-    bool open_now = 1;
-
-    // The periods that this place is open during the week. The periods are in
-    // chronological order, starting with Sunday in the place-local timezone. An
-    // empty (but not absent) value indicates a place that is never open, e.g.
-    // because it is closed temporarily for renovations.
-    repeated OpeningHoursPeriod periods = 2;
-
-    // Localized strings describing the opening hours of this place, one string
-    // for each day of the week.  Will be empty if the hours are unknown or
-    // could not be converted to localized text. Example: "Sun: 18:00–06:00"
-    repeated string weekday_descriptions = 3;
-
-    // A type string used to identify the type of secondary hours.
-    SecondaryHourType secondary_hour_type = 4;
-
-    // Structured information for special days that fall within the period that
-    // the returned opening hours cover. Special days are days that could impact
-    // the business hours of a place, e.g. Christmas day. Set for
+    // Output only. Is this place open right now?  Always present unless we lack
+    // time-of-day or timezone data for these opening hours.
+    optional bool open_now = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+    // Output only. The periods that this place is open during the week. The
+    // periods are in chronological order, starting with Sunday in the
+    // place-local timezone. An empty (but not absent) value indicates a place
+    // that is never open, e.g. because it is closed temporarily for
+    // renovations.
+    repeated Period periods = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+    // Output only. Localized strings describing the opening hours of this
+    // place, one string for each day of the week.  Will be empty if the hours
+    // are unknown or could not be converted to localized text. Example: "Sun:
+    // 18:00–06:00"
+    repeated string weekday_descriptions = 3
+        [(google.api.field_behavior) = OUTPUT_ONLY];
+
+    // Output only. A type string used to identify the type of secondary hours.
+    SecondaryHoursType secondary_hours_type = 4
+        [(google.api.field_behavior) = OUTPUT_ONLY];
+
+    // Output only. Structured information for special days that fall within the
+    // period that the returned opening hours cover. Special days are days that
+    // could impact the business hours of a place, e.g. Christmas day. Set for
     // current_opening_hours and current_secondary_opening_hours if there are
     // exceptional hours.
-    repeated SpecialDay special_days = 5;
+    repeated SpecialDay special_days = 5
+        [(google.api.field_behavior) = OUTPUT_ONLY];
   }
 
   // Business status for the place.
@@ -242,165 +215,308 @@ message Place {
 
   // Information about data providers of this place.
   message Attribution {
-    // Name of the Place's data provider.
-    string provider = 1;
+    // Output only. Name of the Place's data provider.
+    string provider = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-    // URI to the Place's data provider.
-    string provider_uri = 2;
+    // Output only. URI to the Place's data provider.
+    string provider_uri = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
   }
 
-  // Contains a summary of the place.
-  message EditorialSummary {
-    // A summary is comprised of a textual overview, and also includes the
-    // language code for these if applicable. Summary text must be presented
-    // as-is and can not be modified or altered.
-    google.type.LocalizedText overview = 1;
+  // Payment options the place accepts.
+  message PaymentOptions {
+    // Place accepts credit cards as payment.
+    optional bool accepts_credit_cards = 1;
+
+    // Place accepts debit cards as payment.
+    optional bool accepts_debit_cards = 2;
+
+    // Place accepts cash only as payment. Places with this attribute may still
+    // accept other payment methods.
+    optional bool accepts_cash_only = 3;
+
+    // Place accepts NFC payments.
+    optional bool accepts_nfc = 4;
   }
 
-  // Required. The unique identifier of a place.
-  string id = 2 [(google.api.field_behavior) = REQUIRED];
+  // Information about parking options for the place. A parking lot could
+  // support more than one option at the same time.
+  message ParkingOptions {
+    // Place offers free parking lots.
+    optional bool free_parking_lot = 1;
 
-  // The localized name of the place, suitable as a short human-readable
-  // description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc.
-  google.type.LocalizedText display_name = 31;
+    // Place offers paid parking lots.
+    optional bool paid_parking_lot = 2;
 
-  // A set of type tags for this result. For example, "political" and
-  // "locality".
-  repeated string types = 5;
+    // Place offers free street parking.
+    optional bool free_street_parking = 3;
 
-  // A human-readable phone number for the place, in national format.
-  string national_phone_number = 7;
+    // Place offers paid street parking.
+    optional bool paid_street_parking = 4;
 
-  // A human-readable phone number for the place, in international format.
-  string international_phone_number = 8;
+    // Place offers valet parking.
+    optional bool valet_parking = 5;
 
-  // A full, human-readable address for this place.
-  string formatted_address = 9;
+    // Place offers free garage parking.
+    optional bool free_garage_parking = 6;
+
+    // Place offers paid garage parking.
+    optional bool paid_garage_parking = 7;
+  }
 
-  // Repeated components for each locality level.
-  repeated AddressComponent address_components = 10;
+  // Place resource name and id of sub destinations that relate to the place.
+  // For example, different terminals are different destinations of an airport.
+  message SubDestination {
+    // The resource name of the sub destination.
+    string name = 1 [
+      (google.api.resource_reference) = { type: "places.googleapis.com/Place" }
+    ];
 
-  // Plus code of the place location lat/long.
-  PlusCode plus_code = 11;
+    // The place id of the sub destination.
+    string id = 2;
+  }
+
+  // Information about the accessibility options a place offers.
+  message AccessibilityOptions {
+    // Places has wheelchair accessible entrance.
+    optional bool wheelchair_accessible_entrance = 2;
+  }
 
-  // The position of this place.
-  google.type.LatLng location = 12;
+  // Output only. An ID representing this place which may be used to look up
+  // this place again (a.k.a. the API "resource" name: places/).
+  string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // A viewport suitable for displaying the place on an average-sized map.
-  google.geo.type.Viewport viewport = 13;
+  // Output only. The unique identifier of a place.
+  string id = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // A rating between 1.0 and 5.0, based on user reviews of this place.
-  double rating = 14;
+  // Output only. The localized name of the place, suitable as a short
+  // human-readable description. For example, "Google Sydney", "Starbucks",
+  // "Pyrmont", etc.
+  google.type.LocalizedText display_name = 31
+      [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // A URL providing more information about this place.
-  string google_maps_uri = 15;
+  // Output only. A set of type tags for this result. For example, "political"
+  // and "locality".
+  repeated string types = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // The authoritative website for this place, e.g. a business' homepage.
-  // Note that for places that are part of a chain (e.g. an IKEA store), this
-  // will usually be the website for the individual store, not the overall
-  // chain.
-  string website_uri = 16;
+  // Output only. A human-readable phone number for the place, in national
+  // format.
+  string national_phone_number = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // List of reviews about this place.
-  repeated Review reviews = 20;
+  // Output only. A human-readable phone number for the place, in international
+  // format.
+  string international_phone_number = 8
+      [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // The regular hours of operation.
-  OpeningHours opening_hours = 21;
+  // Output only. A full, human-readable address for this place.
+  string formatted_address = 9 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Number of minutes this place's timezone is currently offset from UTC.
-  // This is expressed in minutes to support timezones that are offset by
-  // fractions of an hour, e.g. X hours and 15 minutes.
-  int32 utc_offset_minutes = 22;
+  // Output only. Repeated components for each locality level.
+  repeated AddressComponent address_components = 10
+      [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // The place's address in adr microformat: http://microformats.org/wiki/adr.
-  string adr_format_address = 24;
+  // Output only. Plus code of the place location lat/long.
+  PlusCode plus_code = 11 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // The business status for the place.
-  BusinessStatus business_status = 25;
+  // Output only. The position of this place.
+  google.type.LatLng location = 12 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Price level of the place.
-  PriceLevel price_level = 26;
+  // Output only. A viewport suitable for displaying the place on an
+  // average-sized map.
+  google.geo.type.Viewport viewport = 13
+      [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // A set of data provider that must be shown with this result.
-  repeated Attribution attributions = 27;
+  // Output only. A rating between 1.0 and 5.0, based on user reviews of this
+  // place.
+  double rating = 14 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // The total number of reviews (with or without text) for this place.
-  int32 user_rating_count = 28;
+  // Output only. A URL providing more information about this place.
+  string google_maps_uri = 15 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // A truncated URL to an v2 icon mask. User can access different icon type by
-  // appending type suffix to the end (eg, ".svg" or ".png").
-  string icon_mask_base_uri = 29;
+  // Output only. The authoritative website for this place, e.g. a business'
+  // homepage. Note that for places that are part of a chain (e.g. an IKEA
+  // store), this will usually be the website for the individual store, not the
+  // overall chain.
+  string website_uri = 16 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Background color for icon_mask in hex format, e.g. #909CE1.
-  string icon_background_color = 30;
+  // Output only. List of reviews about this place.
+  repeated Review reviews = 53 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Specifies if the business supports takeout.
-  optional bool takeout = 33;
+  // Output only. The regular hours of operation.
+  OpeningHours regular_opening_hours = 21
+      [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Specifies if the business supports delivery.
-  optional bool delivery = 34;
+  // Output only. Number of minutes this place's timezone is currently offset
+  // from UTC. This is expressed in minutes to support timezones that are offset
+  // by fractions of an hour, e.g. X hours and 15 minutes.
+  optional int32 utc_offset_minutes = 22
+      [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Specifies if the business supports indoor or outdoor seating options.
-  optional bool dine_in = 35;
+  // Output only. Information (including references) about photos of this place.
+  repeated Photo photos = 54 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Specifies if the business supports curbside pickup.
-  optional bool curbside_pickup = 36;
+  // Output only. The place's address in adr microformat:
+  // http://microformats.org/wiki/adr.
+  string adr_format_address = 24 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Specifies if the place has an entrance that is wheelchair-accessible.
-  optional bool wheelchair_accessible_entrance = 37;
+  // Output only. The business status for the place.
+  BusinessStatus business_status = 25
+      [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Specifies if the place supports reservations.
-  optional bool reservable = 38;
+  // Output only. Price level of the place.
+  PriceLevel price_level = 26 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Specifies if the place serves breakfast.
-  optional bool serves_breakfast = 39;
+  // Output only. A set of data provider that must be shown with this result.
+  repeated Attribution attributions = 27
+      [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Specifies if the place serves lunch.
-  optional bool serves_lunch = 40;
+  // Output only. The total number of reviews (with or without text) for this
+  // place.
+  optional int32 user_rating_count = 28
+      [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Specifies if the place serves dinner.
-  optional bool serves_dinner = 41;
+  // Output only. A truncated URL to an v2 icon mask. User can access different
+  // icon type by appending type suffix to the end (eg, ".svg" or ".png").
+  string icon_mask_base_uri = 29 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Specifies if the place serves beer.
-  optional bool serves_beer = 42;
+  // Output only. Background color for icon_mask in hex format, e.g. #909CE1.
+  string icon_background_color = 30 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Specifies if the place serves wine.
-  optional bool serves_wine = 43;
+  // Output only. Specifies if the business supports takeout.
+  optional bool takeout = 33 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Specifies if the place serves brunch.
-  optional bool serves_brunch = 44;
+  // Output only. Specifies if the business supports delivery.
+  optional bool delivery = 34 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Specifies if the place serves vegetarian food.
-  optional bool serves_vegetarian_food = 45;
+  // Output only. Specifies if the business supports indoor or outdoor seating
+  // options.
+  optional bool dine_in = 35 [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // The hours of operation for the next seven days (including today). The time
-  // period starts at midnight on the date of the request and ends at 11:59 pm
-  // six days later. This field includes the special_days subfield of all hours,
-  // set for dates that have exceptional hours.
-  OpeningHours current_opening_hours = 46;
+  // Output only. Specifies if the business supports curbside pickup.
+  optional bool curbside_pickup = 36
+      [(google.api.field_behavior) = OUTPUT_ONLY];
 
-  // Contains an array of entries for the next seven days including information
-  // about secondary hours of a business. Secondary hours are different from a
+  // Output only. Specifies if the place supports reservations.
+  optional bool reservable = 38 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Specifies if the place serves breakfast.
+  optional bool serves_breakfast = 39
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Specifies if the place serves lunch.
+  optional bool serves_lunch = 40 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Specifies if the place serves dinner.
+  optional bool serves_dinner = 41 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Specifies if the place serves beer.
+  optional bool serves_beer = 42 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Specifies if the place serves wine.
+  optional bool serves_wine = 43 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Specifies if the place serves brunch.
+  optional bool serves_brunch = 44 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Specifies if the place serves vegetarian food.
+  optional bool serves_vegetarian_food = 45
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. The hours of operation for the next seven days (including
+  // today). The time period starts at midnight on the date of the request and
+  // ends at 11:59 pm six days later. This field includes the special_days
+  // subfield of all hours, set for dates that have exceptional hours.
+  OpeningHours current_opening_hours = 46
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Contains an array of entries for the next seven days including
+  // information about secondary hours of a business. Secondary hours are
+  // different from a business's main hours. For example, a restaurant can
+  // specify drive through hours or delivery hours as its secondary hours. This
+  // field populates the type subfield, which draws from a predefined list of
+  // opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on
+  // the types of the place. This field includes the special_days subfield of
+  // all hours, set for dates that have exceptional hours.
+  repeated OpeningHours current_secondary_opening_hours = 47
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Contains an array of entries for information about regular
+  // secondary hours of a business. Secondary hours are different from a
   // business's main hours. For example, a restaurant can specify drive through
   // hours or delivery hours as its secondary hours. This field populates the
   // type subfield, which draws from a predefined list of opening hours types
   // (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the
-  // place. This field includes the special_days subfield of all hours, set for
-  // dates that have exceptional hours.
-  repeated OpeningHours current_secondary_opening_hours = 47;
-
-  // Contains an array of entries for information about regular secondary hours
-  // of a business. Secondary hours are different from a business's main hours.
-  // For example, a restaurant can specify drive through hours or delivery hours
-  // as its secondary hours. This field populates the type subfield, which draws
-  // from a predefined list of opening hours types (such as DRIVE_THROUGH,
-  // PICKUP, or TAKEOUT) based on the types of the place.
-  repeated OpeningHours secondary_opening_hours = 49;
-
-  // Contains a summary of the place. A summary is comprised of a textual
-  // overview, and also includes the language code for these if applicable.
-  // Summary text must be presented as-is and can not be modified or altered.
-  EditorialSummary editorial_summary = 48;
+  // place.
+  repeated OpeningHours regular_secondary_opening_hours = 49
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Contains a summary of the place. A summary is comprised of a
+  // textual overview, and also includes the language code for these if
+  // applicable. Summary text must be presented as-is and can not be modified or
+  // altered.
+  google.type.LocalizedText editorial_summary = 52
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Place provides outdoor seating.
+  optional bool outdoor_seating = 55
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Place provides live music.
+  optional bool live_music = 56 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Place has a children's menu.
+  optional bool menu_for_children = 57
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Place serves cocktails.
+  optional bool serves_cocktails = 58
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Place serves dessert.
+  optional bool serves_dessert = 59 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Place serves coffee.
+  optional bool serves_coffee = 60 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Place is good for children.
+  optional bool good_for_children = 62
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Place allows dogs.
+  optional bool allows_dogs = 63 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Place has restroom.
+  optional bool restroom = 64 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Place accommodates groups.
+  optional bool good_for_groups = 65
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Place is suitable for watching sports.
+  optional bool good_for_watching_sports = 66
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  PaymentOptions payment_options = 67
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Options of parking provided by the place.
+  ParkingOptions parking_options = 70
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. A list of sub destinations related to the place.
+  repeated SubDestination sub_destinations = 71
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Information about the accessibility options a place offers.
+  optional AccessibilityOptions accessibility_options = 72
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. The most recent information about fuel options in a gas
+  // station. This information is updated regularly.
+  FuelOptions fuel_options = 78 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Information of ev charging options.
+  EVChargeOptions ev_charge_options = 79
+      [(google.api.field_behavior) = OUTPUT_ONLY];
 }
 
 // Price level of the place.
@@ -408,17 +524,18 @@ enum PriceLevel {
   // Place price level is unspecified or unknown.
   PRICE_LEVEL_UNSPECIFIED = 0;
 
-  FREE = 1;
+  // Place provides free services.
+  PRICE_LEVEL_FREE = 1;
 
   // Place provides inexpensive services.
-  INEXPENSIVE = 2;
+  PRICE_LEVEL_INEXPENSIVE = 2;
 
   // Place provides moderately priced services.
-  MODERATE = 3;
+  PRICE_LEVEL_MODERATE = 3;
 
   // Place provides expensive services.
-  EXPENSIVE = 4;
+  PRICE_LEVEL_EXPENSIVE = 4;
 
-  // Place provides very expensive services.
-  VERY_EXPENSIVE = 5;
+  // Place provides very expensive service s.
+  PRICE_LEVEL_VERY_EXPENSIVE = 5;
 }
diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/places_service.proto b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/places_service.proto
index d6f7a197cd44..ce18f7e4df89 100644
--- a/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/places_service.proto
+++ b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/places_service.proto
@@ -19,13 +19,14 @@ package google.maps.places.v1;
 import "google/api/annotations.proto";
 import "google/api/client.proto";
 import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
 import "google/geo/type/viewport.proto";
 import "google/maps/places/v1/geometry.proto";
 import "google/maps/places/v1/place.proto";
 
 option cc_enable_arenas = true;
 option csharp_namespace = "Google.Maps.Places.V1";
-option go_package = "google.golang.org/genproto/googleapis/maps/places/v1;places";
+option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
 option java_multiple_files = true;
 option java_outer_classname = "PlacesServiceProto";
 option java_package = "com.google.maps.places.v1";
@@ -33,30 +34,175 @@ option objc_class_prefix = "GMPSV1";
 option php_namespace = "Google\\Maps\\Places\\V1";
 
 // Service definition for the Places API.
+// Note: every request actually requires a field mask set outside of the request
+// proto (all/'*' is not assumed).  That can be set via either a side channel
+// (SystemParameterContext) over RPC, or a header (X-Goog-FieldMask) over HTTP.
+// See: https://cloud.google.com/apis/docs/system-parameters
 service Places {
   option (google.api.default_host) = "places.googleapis.com";
 
+  // Search for places near locations.
+  rpc SearchNearby(SearchNearbyRequest) returns (SearchNearbyResponse) {
+    option (google.api.http) = {
+      post: "/v1/places:searchNearby"
+      body: "*"
+    };
+  }
+
   // Text query based place search.
   rpc SearchText(SearchTextRequest) returns (SearchTextResponse) {
     option (google.api.http) = {
-      post: "/v1/Text:search"
+      post: "/v1/places:searchText"
       body: "*"
     };
   }
+
+  // Get a photo media with a photo reference string.
+  rpc GetPhotoMedia(GetPhotoMediaRequest) returns (PhotoMedia) {
+    option (google.api.http) = {
+      get: "/v1/{name=places/*/photos/*/media}"
+    };
+    option (google.api.method_signature) = "name";
+  }
+
+  // Get a Place with a place id (in a name) string.
+  rpc GetPlace(GetPlaceRequest) returns (Place) {
+    option (google.api.http) = {
+      get: "/v1/{name=places/*}"
+    };
+    option (google.api.method_signature) = "name";
+  }
 }
 
-// int 32 range. Both min and max are optional. If only min is set, then the
-// range only has a lower bound. If only max is set, then range only has an
-// upper bound. At least one of min and max must be set. Values are inclusive.
-message Int32Range {
-  // Lower bound. If unset, behavior is documented on the range field.
-  optional int32 min = 1;
+// Request proto for Search Nearby.
+message SearchNearbyRequest {
+  // The region to search.
+  message LocationRestriction {
+    oneof type {
+      // A circle defined by center point and radius.
+      Circle circle = 2;
+    }
+  }
+
+  // How results will be ranked in the response.
+  enum RankPreference {
+    // RankPreference value not set. Will use rank by POPULARITY by default.
+    RANK_PREFERENCE_UNSPECIFIED = 0;
+
+    // Ranks results by distance.
+    DISTANCE = 1;
+
+    // Ranks results by popularity.
+    POPULARITY = 2;
+  }
+
+  // Place details will be displayed with the preferred language if available.
+  // If the language code is unspecified or unrecognized, place details of any
+  // language may be returned, with a preference for English if such details
+  // exist.
+  //
+  // Current list of supported languages:
+  // https://developers.google.com/maps/faq#languagesupport.
+  string language_code = 1;
+
+  // The Unicode country/region code (CLDR) of the location where the
+  // request is coming from. This parameter is used to display the place
+  // details, like region-specific place name, if available. The parameter can
+  // affect results based on applicable law.
+  //
+  // For more information, see
+  // http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+  //
+  //
+  // Note that 3-digit region codes are not currently supported.
+  string region_code = 2;
+
+  // Included Place type (eg, "restaurant" or "gas_station") from
+  // https://developers.google.com/places/supported_types.
+  //
+  // If there are any conflicting types, i.e. a type appears in both
+  // included_types and excluded_types, an INVALID_ARGUMENT error is
+  // returned.
+  //
+  // If a Place type is specified with multiple type restrictions, only places
+  // that satisfy all of the restrictions are returned. For example, if we
+  // have {included_types = ["restaurant"], excluded_primary_types =
+  // ["restaurant"]}, the returned places are POIs that provide "restaurant"
+  // related services but do not operate primarily as "restaurants".
+  repeated string included_types = 3;
+
+  // Excluded Place type (eg, "restaurant" or "gas_station") from
+  // https://developers.google.com/places/supported_types.
+  //
+  // If the client provides both included_types (e.g. restaurant) and
+  // excluded_types (e.g. cafe), then the response should include places that
+  // are restaurant but not cafe. The response includes places that match at
+  // least one of the included_types and none of the excluded_types.
+  //
+  // If there are any conflicting types, i.e. a type appears in both
+  // included_types and excluded_types, an INVALID_ARGUMENT error is returned.
+  //
+  // If a Place type is specified with multiple type restrictions, only places
+  // that satisfy all of the restrictions are returned. For example, if we
+  // have {included_types = ["restaurant"], excluded_primary_types =
+  // ["restaurant"]}, the returned places are POIs that provide "restaurant"
+  // related services but do not operate primarily as "restaurants".
+  repeated string excluded_types = 4;
+
+  // Included primary Place type (e.g. "restaurant" or "gas_station") from
+  // https://developers.google.com/places/supported_types.
+  //
+  // If there are any conflicting primary types, i.e. a type appears in both
+  // included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+  // error is returned.
+  //
+  // If a Place type is specified with multiple type restrictions, only places
+  // that satisfy all of the restrictions are returned. For example, if we
+  // have {included_types = ["restaurant"], excluded_primary_types =
+  // ["restaurant"]}, the returned places are POIs that provide "restaurant"
+  // related services but do not operate primarily as "restaurants".
+  repeated string included_primary_types = 5;
+
+  // Excluded primary Place type (e.g. "restaurant" or "gas_station") from
+  // https://developers.google.com/places/supported_types.
+  //
+  // If there are any conflicting primary types, i.e. a type appears in both
+  // included_primary_types and excluded_primary_types, an INVALID_ARGUMENT
+  // error is returned.
+  //
+  // If a Place type is specified with multiple type restrictions, only places
+  // that satisfy all of the restrictions are returned. For example, if we
+  // have {included_types = ["restaurant"], excluded_primary_types =
+  // ["restaurant"]}, the returned places are POIs that provide "restaurant"
+  // related services but do not operate primarily as "restaurants".
+  repeated string excluded_primary_types = 6;
+
+  // Maximum number of results to return. It must be between 1 and 20,
+  // inclusively. If the number is unset, it falls back to the upper limit. If
+  // the number is set to negative or exceeds the upper limit, an
+  // INVALID_ARGUMENT error is returned.
+  int32 max_result_count = 7;
+
+  // Required. The region to search.
+  LocationRestriction location_restriction = 8
+      [(google.api.field_behavior) = REQUIRED];
 
-  // Upper bound. If unset, behavior is documented on the range field.
-  optional int32 max = 2;
+  // How results will be ranked in the response.
+  RankPreference rank_preference = 9;
 }
 
-// Request data structure for SearchText.
+// Response proto for Search Nearby.
+//
+//
+message SearchNearbyResponse {
+  // A list of interesting places that meets user's requirements like places
+  // types, number of places and specific location restriction.
+  repeated Place places = 1;
+}
+
+// Request proto for SearchText.
+//
+//
 message SearchTextRequest {
   // How results will be ranked in the response.
   enum RankPreference {
@@ -71,21 +217,6 @@ message SearchTextRequest {
     RELEVANCE = 2;
   }
 
-  // The region to search.
-  //
-  // Deprecated. Use LocationRestriction or LocationBias instead.
-  message Location {
-    oneof type {
-      // A rectangle box defined by northeast and southwest corner.
-      google.geo.type.Viewport rectangle = 1;
-    }
-
-    // Make location field a strict restriction and filter out POIs outside of
-    // the given location. If location type field is unset this field will have
-    // no effect.
-    bool strict_restriction = 2;
-  }
-
   // The region to search. This location serves as a bias which means results
   // around given location might be returned.
   message LocationBias {
@@ -120,8 +251,9 @@ message SearchTextRequest {
   string language_code = 2;
 
   // The Unicode country/region code (CLDR) of the location where the
-  // request is coming from. It is used to display the place details, like
-  // region-specific place name, if available.
+  // request is coming from. This parameter is used to display the place
+  // details, like region-specific place name, if available. The parameter can
+  // affect results based on applicable law.
   //
   // For more information, see
   // http://www.unicode.org/reports/tr35/#unicode_region_subtag.
@@ -133,14 +265,6 @@ message SearchTextRequest {
   // How results will be ranked in the response.
   RankPreference rank_preference = 4;
 
-  // The region to search. Setting location would usually yields
-  // better results. Recommended to set. This location serves as a bias unless
-  // strict_restriction is set to true, which turns the location to a strict
-  // restriction.
-  //
-  // Deprecated.  Use LocationRestriction or LocationBias instead.
-  Location location = 5 [deprecated = true];
-
   // The requested place type. Full list of types supported:
   // https://developers.google.com/places/supported_types. Only support one
   // included type.
@@ -150,16 +274,9 @@ message SearchTextRequest {
   // open_now marks if a business is currently open.
   bool open_now = 7;
 
-  // [Deprecated!]Used to restrict the search to places that are within a
-  // certain price range. This is on a scale of 0 to 4. Set a minimum of 0 or
-  // set a maximum of 4 has no effect on the search results. Min price is
-  // default to 0 and max price is default to 4. Default value will be used if
-  // either min or max is unset.
-  Int32Range price_range = 8 [deprecated = true];
-
   // Filter out results whose average user rating is strictly less than this
   // limit. A valid value must be an float between 0 and 5 (inclusively) at a
-  // 0.5 cadence i.e. `[0, 0.5, 1.0, ... , 5.0]` inclusively. This is to keep
+  // 0.5 cadence i.e. [0, 0.5, 1.0, ... , 5.0] inclusively. This is to keep
   // parity with LocalRefinement_UserRating. The input rating will round up to
   // the nearest 0.5(ceiling). For instance, a rating of 0.6 will eliminate all
   // results with a less than 1.0 rating.
@@ -197,3 +314,93 @@ message SearchTextResponse {
   // A list of places that meet the user's text search criteria.
   repeated Place places = 1;
 }
+
+// Request for fetching a photo of a place using a photo resource name.
+message GetPhotoMediaRequest {
+  // Required. The resource name of a photo. It is returned in Place's
+  // photos.name field. Format:
+  // places//photos//media.
+  string name = 1 [
+    (google.api.field_behavior) = REQUIRED,
+    (google.api.resource_reference) = {
+      type: "places.googleapis.com/PhotoMedia"
+    }
+  ];
+
+  // Optional. Specifies the maximum desired width, in pixels, of the image. If
+  // the image is smaller than the values specified, the original image will be
+  // returned. If the image is larger in either dimension, it will be scaled to
+  // match the smaller of the two dimensions, restricted to its original aspect
+  // ratio. Both the max_height_px and max_width_px properties accept an integer
+  // between 1 and 4800, inclusively. If the value is not within the allowed
+  // range, an INVALID_ARGUMENT error will be returned.
+  //
+  // At least one of max_height_px or max_width_px needs to be specified. If
+  // neither max_height_px nor max_width_px is specified, an INVALID_ARGUMENT
+  // error will be returned.
+  int32 max_width_px = 2 [(google.api.field_behavior) = OPTIONAL];
+
+  // Optional. Specifies the maximum desired height, in pixels, of the image. If
+  // the image is smaller than the values specified, the original image will be
+  // returned. If the image is larger in either dimension, it will be scaled to
+  // match the smaller of the two dimensions, restricted to its original aspect
+  // ratio. Both the max_height_px and max_width_px properties accept an integer
+  // between 1 and 4800, inclusively. If the value is not within the allowed
+  // range, an INVALID_ARGUMENT error will be returned.
+  //
+  // At least one of max_height_px or max_width_px needs to be specified. If
+  // neither max_height_px nor max_width_px is specified, an INVALID_ARGUMENT
+  // error will be returned.
+  int32 max_height_px = 3 [(google.api.field_behavior) = OPTIONAL];
+
+  // Optional. If set, skip the default HTTP redirect behavior and render a text
+  // format (for example, in JSON format for HTTP use case) response. If not
+  // set, an HTTP redirect will be issued to redirect the call to the image
+  // midea. This option is ignored for non-HTTP requests.
+  bool skip_http_redirect = 4 [(google.api.field_behavior) = OPTIONAL];
+}
+
+// A photo media from Places API.
+message PhotoMedia {
+  option (google.api.resource) = {
+    type: "places.googleapis.com/PhotoMedia"
+    pattern: "places/{place_id}/photos/{photo_reference}/media"
+    plural: "photoMedias"
+    singular: "photoMedia"
+  };
+
+  // The resource name of a photo. It is returned in Place's photos.name field.
+  // Format: places//photos//media.
+  string name = 1;
+
+  // A short-lived uri that can be used to render the photo.
+  string photo_uri = 2;
+}
+
+// Request for fetching a Place with a place id (in a name) string.
+message GetPlaceRequest {
+  // Required. A place_id returned in a Place (with "places/" prefix), or
+  // equivalently the name in the same Place. Format: places/.
+  string name = 1 [
+    (google.api.field_behavior) = REQUIRED,
+    (google.api.resource_reference) = { type: "places.googleapis.com/Place" }
+  ];
+
+  // Optional. Place details will be displayed with the preferred language if
+  // available.
+  //
+  // Current list of supported languages:
+  // https://developers.google.com/maps/faq#languagesupport.
+  string language_code = 2 [(google.api.field_behavior) = OPTIONAL];
+
+  // Optional. The Unicode country/region code (CLDR) of the location where the
+  // request is coming from. This parameter is used to display the place
+  // details, like region-specific place name, if available. The parameter can
+  // affect results based on applicable law.
+  // For more information, see
+  // http://www.unicode.org/reports/tr35/#unicode_region_subtag.
+  //
+  //
+  // Note that 3-digit region codes are not currently supported.
+  string region_code = 3 [(google.api.field_behavior) = OPTIONAL];
+}
diff --git a/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/review.proto b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/review.proto
new file mode 100644
index 000000000000..6dc3da5c879c
--- /dev/null
+++ b/java-maps-places/proto-google-maps-places-v1/src/main/proto/google/maps/places/v1/review.proto
@@ -0,0 +1,72 @@
+// Copyright 2023 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.maps.places.v1;
+
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/maps/places/v1/attribution.proto";
+import "google/protobuf/timestamp.proto";
+import "google/type/localized_text.proto";
+
+option cc_enable_arenas = true;
+option csharp_namespace = "Google.Maps.Places.V1";
+option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
+option java_multiple_files = true;
+option java_outer_classname = "ReviewProto";
+option java_package = "com.google.maps.places.v1";
+option objc_class_prefix = "GMPSV1";
+option php_namespace = "Google\\Maps\\Places\\V1";
+
+// Information about a review of a place.
+message Review {
+  option (google.api.resource) = {
+    type: "places.googleapis.com/Review"
+    pattern: "places/{place}/reviews/{review}"
+    plural: "reviews"
+    singular: "review"
+  };
+
+  // Output only. A reference representing this place review which may be used
+  // to look up this place review again (a.k.a. the API "resource" name:
+  // places/{place_id}/reviews/{review}).
+  string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. A string of formatted recent time, expressing the review time
+  // relative to the current time in a form appropriate for the language and
+  // country.
+  string relative_publish_time_description = 2
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. The localized text of the review.
+  google.type.LocalizedText text = 9
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. The review text in its original language.
+  google.type.LocalizedText original_text = 12
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. A number between 1.0 and 5.0, a.k.a. the number of stars.
+  double rating = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. This review's author.
+  AuthorAttribution author_attribution = 13
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+
+  // Output only. Timestamp for the review.
+  google.protobuf.Timestamp publish_time = 14
+      [(google.api.field_behavior) = OUTPUT_ONLY];
+}
diff --git a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getphotomedia/AsyncGetPhotoMedia.java b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getphotomedia/AsyncGetPhotoMedia.java
new file mode 100644
index 000000000000..00db94c5814a
--- /dev/null
+++ b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getphotomedia/AsyncGetPhotoMedia.java
@@ -0,0 +1,52 @@
+/*
+ * Copyright 2023 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.maps.places.v1.samples;
+
+// [START places_v1_generated_Places_GetPhotoMedia_async]
+import com.google.api.core.ApiFuture;
+import com.google.maps.places.v1.GetPhotoMediaRequest;
+import com.google.maps.places.v1.PhotoMedia;
+import com.google.maps.places.v1.PhotoMediaName;
+import com.google.maps.places.v1.PlacesClient;
+
+public class AsyncGetPhotoMedia {
+
+  public static void main(String[] args) throws Exception {
+    asyncGetPhotoMedia();
+  }
+
+  public static void asyncGetPhotoMedia() 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 (PlacesClient placesClient = PlacesClient.create()) {
+      GetPhotoMediaRequest request =
+          GetPhotoMediaRequest.newBuilder()
+              .setName(PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]").toString())
+              .setMaxWidthPx(-428899428)
+              .setMaxHeightPx(-1974259963)
+              .setSkipHttpRedirect(true)
+              .build();
+      ApiFuture future = placesClient.getPhotoMediaCallable().futureCall(request);
+      // Do something.
+      PhotoMedia response = future.get();
+    }
+  }
+}
+// [END places_v1_generated_Places_GetPhotoMedia_async]
diff --git a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getphotomedia/SyncGetPhotoMedia.java b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getphotomedia/SyncGetPhotoMedia.java
new file mode 100644
index 000000000000..a46349e3efea
--- /dev/null
+++ b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getphotomedia/SyncGetPhotoMedia.java
@@ -0,0 +1,49 @@
+/*
+ * Copyright 2023 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.maps.places.v1.samples;
+
+// [START places_v1_generated_Places_GetPhotoMedia_sync]
+import com.google.maps.places.v1.GetPhotoMediaRequest;
+import com.google.maps.places.v1.PhotoMedia;
+import com.google.maps.places.v1.PhotoMediaName;
+import com.google.maps.places.v1.PlacesClient;
+
+public class SyncGetPhotoMedia {
+
+  public static void main(String[] args) throws Exception {
+    syncGetPhotoMedia();
+  }
+
+  public static void syncGetPhotoMedia() 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 (PlacesClient placesClient = PlacesClient.create()) {
+      GetPhotoMediaRequest request =
+          GetPhotoMediaRequest.newBuilder()
+              .setName(PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]").toString())
+              .setMaxWidthPx(-428899428)
+              .setMaxHeightPx(-1974259963)
+              .setSkipHttpRedirect(true)
+              .build();
+      PhotoMedia response = placesClient.getPhotoMedia(request);
+    }
+  }
+}
+// [END places_v1_generated_Places_GetPhotoMedia_sync]
diff --git a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getphotomedia/SyncGetPhotoMediaPhotomedianame.java b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getphotomedia/SyncGetPhotoMediaPhotomedianame.java
new file mode 100644
index 000000000000..c5fcf5a28422
--- /dev/null
+++ b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getphotomedia/SyncGetPhotoMediaPhotomedianame.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright 2023 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.maps.places.v1.samples;
+
+// [START places_v1_generated_Places_GetPhotoMedia_Photomedianame_sync]
+import com.google.maps.places.v1.PhotoMedia;
+import com.google.maps.places.v1.PhotoMediaName;
+import com.google.maps.places.v1.PlacesClient;
+
+public class SyncGetPhotoMediaPhotomedianame {
+
+  public static void main(String[] args) throws Exception {
+    syncGetPhotoMediaPhotomedianame();
+  }
+
+  public static void syncGetPhotoMediaPhotomedianame() 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 (PlacesClient placesClient = PlacesClient.create()) {
+      PhotoMediaName name = PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]");
+      PhotoMedia response = placesClient.getPhotoMedia(name);
+    }
+  }
+}
+// [END places_v1_generated_Places_GetPhotoMedia_Photomedianame_sync]
diff --git a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getphotomedia/SyncGetPhotoMediaString.java b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getphotomedia/SyncGetPhotoMediaString.java
new file mode 100644
index 000000000000..be524eebd2d1
--- /dev/null
+++ b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getphotomedia/SyncGetPhotoMediaString.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright 2023 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.maps.places.v1.samples;
+
+// [START places_v1_generated_Places_GetPhotoMedia_String_sync]
+import com.google.maps.places.v1.PhotoMedia;
+import com.google.maps.places.v1.PhotoMediaName;
+import com.google.maps.places.v1.PlacesClient;
+
+public class SyncGetPhotoMediaString {
+
+  public static void main(String[] args) throws Exception {
+    syncGetPhotoMediaString();
+  }
+
+  public static void syncGetPhotoMediaString() 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 (PlacesClient placesClient = PlacesClient.create()) {
+      String name = PhotoMediaName.of("[PLACE_ID]", "[PHOTO_REFERENCE]").toString();
+      PhotoMedia response = placesClient.getPhotoMedia(name);
+    }
+  }
+}
+// [END places_v1_generated_Places_GetPhotoMedia_String_sync]
diff --git a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getplace/AsyncGetPlace.java b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getplace/AsyncGetPlace.java
new file mode 100644
index 000000000000..36e3e88c47af
--- /dev/null
+++ b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getplace/AsyncGetPlace.java
@@ -0,0 +1,51 @@
+/*
+ * Copyright 2023 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.maps.places.v1.samples;
+
+// [START places_v1_generated_Places_GetPlace_async]
+import com.google.api.core.ApiFuture;
+import com.google.maps.places.v1.GetPlaceRequest;
+import com.google.maps.places.v1.Place;
+import com.google.maps.places.v1.PlaceName;
+import com.google.maps.places.v1.PlacesClient;
+
+public class AsyncGetPlace {
+
+  public static void main(String[] args) throws Exception {
+    asyncGetPlace();
+  }
+
+  public static void asyncGetPlace() 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 (PlacesClient placesClient = PlacesClient.create()) {
+      GetPlaceRequest request =
+          GetPlaceRequest.newBuilder()
+              .setName(PlaceName.of("[PLACE_ID]").toString())
+              .setLanguageCode("languageCode-2092349083")
+              .setRegionCode("regionCode-1991004415")
+              .build();
+      ApiFuture future = placesClient.getPlaceCallable().futureCall(request);
+      // Do something.
+      Place response = future.get();
+    }
+  }
+}
+// [END places_v1_generated_Places_GetPlace_async]
diff --git a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getplace/SyncGetPlace.java b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getplace/SyncGetPlace.java
new file mode 100644
index 000000000000..d8caf58742fd
--- /dev/null
+++ b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getplace/SyncGetPlace.java
@@ -0,0 +1,48 @@
+/*
+ * Copyright 2023 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.maps.places.v1.samples;
+
+// [START places_v1_generated_Places_GetPlace_sync]
+import com.google.maps.places.v1.GetPlaceRequest;
+import com.google.maps.places.v1.Place;
+import com.google.maps.places.v1.PlaceName;
+import com.google.maps.places.v1.PlacesClient;
+
+public class SyncGetPlace {
+
+  public static void main(String[] args) throws Exception {
+    syncGetPlace();
+  }
+
+  public static void syncGetPlace() 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 (PlacesClient placesClient = PlacesClient.create()) {
+      GetPlaceRequest request =
+          GetPlaceRequest.newBuilder()
+              .setName(PlaceName.of("[PLACE_ID]").toString())
+              .setLanguageCode("languageCode-2092349083")
+              .setRegionCode("regionCode-1991004415")
+              .build();
+      Place response = placesClient.getPlace(request);
+    }
+  }
+}
+// [END places_v1_generated_Places_GetPlace_sync]
diff --git a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getplace/SyncGetPlacePlacename.java b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getplace/SyncGetPlacePlacename.java
new file mode 100644
index 000000000000..0cb915200e19
--- /dev/null
+++ b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getplace/SyncGetPlacePlacename.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright 2023 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.maps.places.v1.samples;
+
+// [START places_v1_generated_Places_GetPlace_Placename_sync]
+import com.google.maps.places.v1.Place;
+import com.google.maps.places.v1.PlaceName;
+import com.google.maps.places.v1.PlacesClient;
+
+public class SyncGetPlacePlacename {
+
+  public static void main(String[] args) throws Exception {
+    syncGetPlacePlacename();
+  }
+
+  public static void syncGetPlacePlacename() 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 (PlacesClient placesClient = PlacesClient.create()) {
+      PlaceName name = PlaceName.of("[PLACE_ID]");
+      Place response = placesClient.getPlace(name);
+    }
+  }
+}
+// [END places_v1_generated_Places_GetPlace_Placename_sync]
diff --git a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getplace/SyncGetPlaceString.java b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getplace/SyncGetPlaceString.java
new file mode 100644
index 000000000000..282e01e6ef47
--- /dev/null
+++ b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/getplace/SyncGetPlaceString.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright 2023 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.maps.places.v1.samples;
+
+// [START places_v1_generated_Places_GetPlace_String_sync]
+import com.google.maps.places.v1.Place;
+import com.google.maps.places.v1.PlaceName;
+import com.google.maps.places.v1.PlacesClient;
+
+public class SyncGetPlaceString {
+
+  public static void main(String[] args) throws Exception {
+    syncGetPlaceString();
+  }
+
+  public static void syncGetPlaceString() 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 (PlacesClient placesClient = PlacesClient.create()) {
+      String name = PlaceName.of("[PLACE_ID]").toString();
+      Place response = placesClient.getPlace(name);
+    }
+  }
+}
+// [END places_v1_generated_Places_GetPlace_String_sync]
diff --git a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/searchnearby/AsyncSearchNearby.java b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/searchnearby/AsyncSearchNearby.java
new file mode 100644
index 000000000000..1602b97c62ae
--- /dev/null
+++ b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/searchnearby/AsyncSearchNearby.java
@@ -0,0 +1,57 @@
+/*
+ * Copyright 2023 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.maps.places.v1.samples;
+
+// [START places_v1_generated_Places_SearchNearby_async]
+import com.google.api.core.ApiFuture;
+import com.google.maps.places.v1.PlacesClient;
+import com.google.maps.places.v1.SearchNearbyRequest;
+import com.google.maps.places.v1.SearchNearbyResponse;
+import java.util.ArrayList;
+
+public class AsyncSearchNearby {
+
+  public static void main(String[] args) throws Exception {
+    asyncSearchNearby();
+  }
+
+  public static void asyncSearchNearby() 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 (PlacesClient placesClient = PlacesClient.create()) {
+      SearchNearbyRequest request =
+          SearchNearbyRequest.newBuilder()
+              .setLanguageCode("languageCode-2092349083")
+              .setRegionCode("regionCode-1991004415")
+              .addAllIncludedTypes(new ArrayList())
+              .addAllExcludedTypes(new ArrayList())
+              .addAllIncludedPrimaryTypes(new ArrayList())
+              .addAllExcludedPrimaryTypes(new ArrayList())
+              .setMaxResultCount(-1736124056)
+              .setLocationRestriction(SearchNearbyRequest.LocationRestriction.newBuilder().build())
+              .build();
+      ApiFuture future =
+          placesClient.searchNearbyCallable().futureCall(request);
+      // Do something.
+      SearchNearbyResponse response = future.get();
+    }
+  }
+}
+// [END places_v1_generated_Places_SearchNearby_async]
diff --git a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/searchnearby/SyncSearchNearby.java b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/searchnearby/SyncSearchNearby.java
new file mode 100644
index 000000000000..18c13b58e463
--- /dev/null
+++ b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/searchnearby/SyncSearchNearby.java
@@ -0,0 +1,53 @@
+/*
+ * Copyright 2023 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.maps.places.v1.samples;
+
+// [START places_v1_generated_Places_SearchNearby_sync]
+import com.google.maps.places.v1.PlacesClient;
+import com.google.maps.places.v1.SearchNearbyRequest;
+import com.google.maps.places.v1.SearchNearbyResponse;
+import java.util.ArrayList;
+
+public class SyncSearchNearby {
+
+  public static void main(String[] args) throws Exception {
+    syncSearchNearby();
+  }
+
+  public static void syncSearchNearby() 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 (PlacesClient placesClient = PlacesClient.create()) {
+      SearchNearbyRequest request =
+          SearchNearbyRequest.newBuilder()
+              .setLanguageCode("languageCode-2092349083")
+              .setRegionCode("regionCode-1991004415")
+              .addAllIncludedTypes(new ArrayList())
+              .addAllExcludedTypes(new ArrayList())
+              .addAllIncludedPrimaryTypes(new ArrayList())
+              .addAllExcludedPrimaryTypes(new ArrayList())
+              .setMaxResultCount(-1736124056)
+              .setLocationRestriction(SearchNearbyRequest.LocationRestriction.newBuilder().build())
+              .build();
+      SearchNearbyResponse response = placesClient.searchNearby(request);
+    }
+  }
+}
+// [END places_v1_generated_Places_SearchNearby_sync]
diff --git a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/searchtext/AsyncSearchText.java b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/searchtext/AsyncSearchText.java
index 72ca40e73dcd..e82e034f2b8f 100644
--- a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/searchtext/AsyncSearchText.java
+++ b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/searchtext/AsyncSearchText.java
@@ -18,7 +18,6 @@
 
 // [START places_v1_generated_Places_SearchText_async]
 import com.google.api.core.ApiFuture;
-import com.google.maps.places.v1.Int32Range;
 import com.google.maps.places.v1.PlacesClient;
 import com.google.maps.places.v1.PriceLevel;
 import com.google.maps.places.v1.SearchTextRequest;
@@ -43,10 +42,8 @@ public static void asyncSearchText() throws Exception {
               .setTextQuery("textQuery-1050470501")
               .setLanguageCode("languageCode-2092349083")
               .setRegionCode("regionCode-1991004415")
-              .setLocation(SearchTextRequest.Location.newBuilder().build())
               .setIncludedType("includedType-45971946")
               .setOpenNow(true)
-              .setPriceRange(Int32Range.newBuilder().build())
               .setMinRating(-543315926)
               .setMaxResultCount(-1736124056)
               .addAllPriceLevels(new ArrayList())
diff --git a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/searchtext/SyncSearchText.java b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/searchtext/SyncSearchText.java
index 049418596a5d..d0f5389dbc3b 100644
--- a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/searchtext/SyncSearchText.java
+++ b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/places/searchtext/SyncSearchText.java
@@ -17,7 +17,6 @@
 package com.google.maps.places.v1.samples;
 
 // [START places_v1_generated_Places_SearchText_sync]
-import com.google.maps.places.v1.Int32Range;
 import com.google.maps.places.v1.PlacesClient;
 import com.google.maps.places.v1.PriceLevel;
 import com.google.maps.places.v1.SearchTextRequest;
@@ -42,10 +41,8 @@ public static void syncSearchText() throws Exception {
               .setTextQuery("textQuery-1050470501")
               .setLanguageCode("languageCode-2092349083")
               .setRegionCode("regionCode-1991004415")
-              .setLocation(SearchTextRequest.Location.newBuilder().build())
               .setIncludedType("includedType-45971946")
               .setOpenNow(true)
-              .setPriceRange(Int32Range.newBuilder().build())
               .setMinRating(-543315926)
               .setMaxResultCount(-1736124056)
               .addAllPriceLevels(new ArrayList())
diff --git a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/placessettings/searchtext/SyncSearchText.java b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/placessettings/searchnearby/SyncSearchNearby.java
similarity index 83%
rename from java-maps-places/samples/snippets/generated/com/google/maps/places/v1/placessettings/searchtext/SyncSearchText.java
rename to java-maps-places/samples/snippets/generated/com/google/maps/places/v1/placessettings/searchnearby/SyncSearchNearby.java
index b7ab2ba7b014..898585403b43 100644
--- a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/placessettings/searchtext/SyncSearchText.java
+++ b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/placessettings/searchnearby/SyncSearchNearby.java
@@ -16,17 +16,17 @@
 
 package com.google.maps.places.v1.samples;
 
-// [START places_v1_generated_PlacesSettings_SearchText_sync]
+// [START places_v1_generated_PlacesSettings_SearchNearby_sync]
 import com.google.maps.places.v1.PlacesSettings;
 import java.time.Duration;
 
-public class SyncSearchText {
+public class SyncSearchNearby {
 
   public static void main(String[] args) throws Exception {
-    syncSearchText();
+    syncSearchNearby();
   }
 
-  public static void syncSearchText() throws Exception {
+  public static void syncSearchNearby() 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.
@@ -34,10 +34,10 @@ public static void syncSearchText() throws Exception {
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     PlacesSettings.Builder placesSettingsBuilder = PlacesSettings.newBuilder();
     placesSettingsBuilder
-        .searchTextSettings()
+        .searchNearbySettings()
         .setRetrySettings(
             placesSettingsBuilder
-                .searchTextSettings()
+                .searchNearbySettings()
                 .getRetrySettings()
                 .toBuilder()
                 .setTotalTimeout(Duration.ofSeconds(30))
@@ -45,4 +45,4 @@ public static void syncSearchText() throws Exception {
     PlacesSettings placesSettings = placesSettingsBuilder.build();
   }
 }
-// [END places_v1_generated_PlacesSettings_SearchText_sync]
+// [END places_v1_generated_PlacesSettings_SearchNearby_sync]
diff --git a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/stub/placesstubsettings/searchtext/SyncSearchText.java b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/stub/placesstubsettings/searchnearby/SyncSearchNearby.java
similarity index 83%
rename from java-maps-places/samples/snippets/generated/com/google/maps/places/v1/stub/placesstubsettings/searchtext/SyncSearchText.java
rename to java-maps-places/samples/snippets/generated/com/google/maps/places/v1/stub/placesstubsettings/searchnearby/SyncSearchNearby.java
index 346c3ed707ed..2b83fb76c6ec 100644
--- a/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/stub/placesstubsettings/searchtext/SyncSearchText.java
+++ b/java-maps-places/samples/snippets/generated/com/google/maps/places/v1/stub/placesstubsettings/searchnearby/SyncSearchNearby.java
@@ -16,17 +16,17 @@
 
 package com.google.maps.places.v1.stub.samples;
 
-// [START places_v1_generated_PlacesStubSettings_SearchText_sync]
+// [START places_v1_generated_PlacesStubSettings_SearchNearby_sync]
 import com.google.maps.places.v1.stub.PlacesStubSettings;
 import java.time.Duration;
 
-public class SyncSearchText {
+public class SyncSearchNearby {
 
   public static void main(String[] args) throws Exception {
-    syncSearchText();
+    syncSearchNearby();
   }
 
-  public static void syncSearchText() throws Exception {
+  public static void syncSearchNearby() 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.
@@ -34,10 +34,10 @@ public static void syncSearchText() throws Exception {
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     PlacesStubSettings.Builder placesSettingsBuilder = PlacesStubSettings.newBuilder();
     placesSettingsBuilder
-        .searchTextSettings()
+        .searchNearbySettings()
         .setRetrySettings(
             placesSettingsBuilder
-                .searchTextSettings()
+                .searchNearbySettings()
                 .getRetrySettings()
                 .toBuilder()
                 .setTotalTimeout(Duration.ofSeconds(30))
@@ -45,4 +45,4 @@ public static void syncSearchText() throws Exception {
     PlacesStubSettings placesSettings = placesSettingsBuilder.build();
   }
 }
-// [END places_v1_generated_PlacesStubSettings_SearchText_sync]
+// [END places_v1_generated_PlacesStubSettings_SearchNearby_sync]
diff --git a/java-maps-routing/README.md b/java-maps-routing/README.md
index f9cccd4bc32d..375a01cd60f9 100644
--- a/java-maps-routing/README.md
+++ b/java-maps-routing/README.md
@@ -20,7 +20,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file:
     
       com.google.cloud
       libraries-bom
-      26.23.0
+      26.27.0
       pom
       import
     
@@ -42,20 +42,20 @@ If you are using Maven without the BOM, add this to your dependencies:
 
   com.google.maps
   google-maps-routing
-  1.15.0
+  1.14.0
 
 ```
 
 If you are using Gradle without BOM, add this to your dependencies:
 
 ```Groovy
-implementation 'com.google.maps:google-maps-routing:1.15.0'
+implementation 'com.google.maps:google-maps-routing:1.14.0'
 ```
 
 If you are using SBT, add this to your dependencies:
 
 ```Scala
-libraryDependencies += "com.google.maps" % "google-maps-routing" % "1.15.0"
+libraryDependencies += "com.google.maps" % "google-maps-routing" % "1.14.0"
 ```
 
 
@@ -195,7 +195,7 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-maps-routing/java11.html
 [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.9.0
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.maps/google-maps-routing/1.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-mediatranslation/README.md b/java-mediatranslation/README.md
index a491d6273ee8..c221db72ac34 100644
--- a/java-mediatranslation/README.md
+++ b/java-mediatranslation/README.md
@@ -23,7 +23,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file:
     
       com.google.cloud
       libraries-bom
-      26.23.0
+      26.27.0
       pom
       import
     
@@ -201,7 +201,7 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [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.30.0
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-mediatranslation/0.36.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 ef03db31a37b..597a7402bf21 100644
--- a/java-memcache/README.md
+++ b/java-memcache/README.md
@@ -20,7 +20,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file:
     
       com.google.cloud
       libraries-bom
-      26.23.0
+      26.27.0
       pom
       import
     
@@ -195,7 +195,7 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [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.24.0
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-memcache/2.30.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 acb2e9a7fe6a..96d078c6b7c8 100644
--- a/java-migrationcenter/README.md
+++ b/java-migrationcenter/README.md
@@ -23,7 +23,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file:
     
       com.google.cloud
       libraries-bom
-      26.23.0
+      26.27.0
       pom
       import
     
@@ -201,7 +201,7 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-migrationcenter/java11.html
 [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.6.0
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-migrationcenter/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-monitoring-dashboards/README.md b/java-monitoring-dashboards/README.md
index c33119351e3d..6171d74d54ec 100644
--- a/java-monitoring-dashboards/README.md
+++ b/java-monitoring-dashboards/README.md
@@ -20,7 +20,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file:
     
       com.google.cloud
       libraries-bom
-      26.23.0
+      26.27.0
       pom
       import
     
@@ -195,7 +195,7 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [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.26.0
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-monitoring-dashboard/2.32.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 a78d88a10636..eb8953fd2a24 100644
--- a/java-monitoring-metricsscope/README.md
+++ b/java-monitoring-metricsscope/README.md
@@ -23,7 +23,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file:
     
       com.google.cloud
       libraries-bom
-      26.23.0
+      26.27.0
       pom
       import
     
@@ -201,7 +201,7 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-monitoring-metricsscope/java11.html
 [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.18.0
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-monitoring-metricsscope/0.24.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